Deleted Added
sdiff udiff text old ( 12431:000549e1f497 ) new ( 13121:4741df518ab8 )
full compact
1/*
2* Copyright (c) 2012 ARM Limited
3 * All rights reserved
4 *
5 * The license below extends only to copyright in the software and shall
6 * not be construed as granting a license to any other intellectual
7 * property including but not limited to intellectual property relating
8 * to a hardware implementation of the functionality of the software
9 * licensed hereunder. You may use the software subject to the license
10 * terms below provided that you ensure that this notice is replicated

--- 45 unchanged lines hidden (view full) ---

56class ArmProcess : public Process
57{
58 protected:
59 ObjectFile::Arch arch;
60 ArmProcess(ProcessParams * params, ObjectFile *objFile,
61 ObjectFile::Arch _arch);
62 template<class IntType>
63 void argsInit(int pageSize, ArmISA::IntRegIndex spIndex);
64};
65
66class ArmProcess32 : public ArmProcess
67{
68 protected:
69 ArmProcess32(ProcessParams * params, ObjectFile *objFile,
70 ObjectFile::Arch _arch);
71
72 void initState();
73
74 public:
75
76 ArmISA::IntReg getSyscallArg(ThreadContext *tc, int &i, int width);
77 ArmISA::IntReg getSyscallArg(ThreadContext *tc, int &i);
78 void setSyscallArg(ThreadContext *tc, int i, ArmISA::IntReg val);
79 void setSyscallReturn(ThreadContext *tc, SyscallReturn return_value);
80};
81
82class ArmProcess64 : public ArmProcess
83{
84 protected:
85 ArmProcess64(ProcessParams * params, ObjectFile *objFile,
86 ObjectFile::Arch _arch);
87
88 void initState();
89
90 public:
91
92 ArmISA::IntReg getSyscallArg(ThreadContext *tc, int &i, int width);
93 ArmISA::IntReg getSyscallArg(ThreadContext *tc, int &i);
94 void setSyscallArg(ThreadContext *tc, int i, ArmISA::IntReg val);
95 void setSyscallReturn(ThreadContext *tc, SyscallReturn return_value);
96};
97
98#endif // __ARM_PROCESS_HH__
99