process.hh (13121:4741df518ab8) process.hh (13166:88ad31e419ed)
1/*
2* Copyright (c) 2012, 2018 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

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

75};
76
77class ArmProcess32 : public ArmProcess
78{
79 protected:
80 ArmProcess32(ProcessParams * params, ObjectFile *objFile,
81 ObjectFile::Arch _arch);
82
1/*
2* Copyright (c) 2012, 2018 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

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

75};
76
77class ArmProcess32 : public ArmProcess
78{
79 protected:
80 ArmProcess32(ProcessParams * params, ObjectFile *objFile,
81 ObjectFile::Arch _arch);
82
83 void initState();
83 void initState() override;
84
85 /** AArch32 AT_HWCAP */
86 uint32_t armHwcapImpl() const override;
87
88 public:
89
84
85 /** AArch32 AT_HWCAP */
86 uint32_t armHwcapImpl() const override;
87
88 public:
89
90 ArmISA::IntReg getSyscallArg(ThreadContext *tc, int &i, int width);
91 ArmISA::IntReg getSyscallArg(ThreadContext *tc, int &i);
92 void setSyscallArg(ThreadContext *tc, int i, ArmISA::IntReg val);
93 void setSyscallReturn(ThreadContext *tc, SyscallReturn return_value);
90 ArmISA::IntReg getSyscallArg(ThreadContext *tc, int &i, int width) override;
91 ArmISA::IntReg getSyscallArg(ThreadContext *tc, int &i) override;
92 void setSyscallArg(ThreadContext *tc, int i, ArmISA::IntReg val) override;
93 void setSyscallReturn(ThreadContext *tc, SyscallReturn return_value) override;
94};
95
96class ArmProcess64 : public ArmProcess
97{
98 protected:
99 ArmProcess64(ProcessParams * params, ObjectFile *objFile,
100 ObjectFile::Arch _arch);
101
94};
95
96class ArmProcess64 : public ArmProcess
97{
98 protected:
99 ArmProcess64(ProcessParams * params, ObjectFile *objFile,
100 ObjectFile::Arch _arch);
101
102 void initState();
102 void initState() override;
103
104 /** AArch64 AT_HWCAP */
105 uint32_t armHwcapImpl() const override;
106
107 public:
108
103
104 /** AArch64 AT_HWCAP */
105 uint32_t armHwcapImpl() const override;
106
107 public:
108
109 ArmISA::IntReg getSyscallArg(ThreadContext *tc, int &i, int width);
110 ArmISA::IntReg getSyscallArg(ThreadContext *tc, int &i);
111 void setSyscallArg(ThreadContext *tc, int i, ArmISA::IntReg val);
112 void setSyscallReturn(ThreadContext *tc, SyscallReturn return_value);
109 ArmISA::IntReg getSyscallArg(ThreadContext *tc, int &i, int width) override;
110 ArmISA::IntReg getSyscallArg(ThreadContext *tc, int &i) override;
111 void setSyscallArg(ThreadContext *tc, int i, ArmISA::IntReg val) override;
112 void setSyscallReturn(ThreadContext *tc, SyscallReturn return_value) override;
113};
114
115#endif // __ARM_PROCESS_HH__
116
113};
114
115#endif // __ARM_PROCESS_HH__
116