summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGabe Black <gabeblack@google.com>2019-11-24 23:25:40 -0800
committerGabe Black <gabeblack@google.com>2019-12-10 23:58:14 +0000
commit4670de81004b6bb10cff2cc8c3414d67eda3b0b5 (patch)
treec1480c041574a077d30ef2a9a5bdf1980b5dab59
parent5e295bada66326a2d1a8e04bd4b21fea7c5b9c69 (diff)
downloadgem5-4670de81004b6bb10cff2cc8c3414d67eda3b0b5.tar.xz
arch: Get rid of the now unused setSyscallArg.
Setting syscall args isn't really something we need to do in gem5, since that will be taken care of by the code actually calling the syscall. We just need to be able to retrieve the value it put there. Jira Issue: https://gem5.atlassian.net/browse/GEM5-187 Change-Id: I0bb6d5d0207a7892414a722b3788cb70ee509582 Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/23174 Tested-by: kokoro <noreply+kokoro@google.com> Reviewed-by: Gabe Black <gabeblack@google.com> Maintainer: Gabe Black <gabeblack@google.com>
-rw-r--r--src/arch/alpha/process.cc7
-rw-r--r--src/arch/alpha/process.hh1
-rw-r--r--src/arch/arm/process.cc15
-rw-r--r--src/arch/arm/process.hh2
-rw-r--r--src/arch/mips/process.cc7
-rw-r--r--src/arch/mips/process.hh1
-rw-r--r--src/arch/power/linux/process.cc9
-rw-r--r--src/arch/power/linux/process.hh1
-rw-r--r--src/arch/power/process.cc7
-rw-r--r--src/arch/power/process.hh1
-rw-r--r--src/arch/riscv/process.cc6
-rw-r--r--src/arch/riscv/process.hh1
-rw-r--r--src/arch/sparc/process.cc14
-rw-r--r--src/arch/sparc/process.hh4
-rw-r--r--src/arch/x86/process.cc14
-rw-r--r--src/arch/x86/process.hh2
-rw-r--r--src/sim/process.hh1
17 files changed, 0 insertions, 93 deletions
diff --git a/src/arch/alpha/process.cc b/src/arch/alpha/process.cc
index b8fb7a99b..02a6899a3 100644
--- a/src/arch/alpha/process.cc
+++ b/src/arch/alpha/process.cc
@@ -223,13 +223,6 @@ AlphaProcess::getSyscallArg(ThreadContext *tc, int &i)
}
void
-AlphaProcess::setSyscallArg(ThreadContext *tc, int i, RegVal val)
-{
- assert(i < 6);
- tc->setIntReg(FirstArgumentReg + i, val);
-}
-
-void
AlphaProcess::setSyscallReturn(ThreadContext *tc, SyscallReturn sysret)
{
// check for error condition. Alpha syscall convention is to
diff --git a/src/arch/alpha/process.hh b/src/arch/alpha/process.hh
index 5f224880a..c4d4f6b88 100644
--- a/src/arch/alpha/process.hh
+++ b/src/arch/alpha/process.hh
@@ -52,7 +52,6 @@ class AlphaProcess : public Process
RegVal getSyscallArg(ThreadContext *tc, int &i) override;
/// Explicitly import the otherwise hidden getSyscallArg
using Process::getSyscallArg;
- void setSyscallArg(ThreadContext *tc, int i, RegVal val) override;
void setSyscallReturn(ThreadContext *tc,
SyscallReturn return_value) override;
diff --git a/src/arch/arm/process.cc b/src/arch/arm/process.cc
index 70024ae68..19ee32bbb 100644
--- a/src/arch/arm/process.cc
+++ b/src/arch/arm/process.cc
@@ -512,21 +512,6 @@ ArmProcess64::getSyscallArg(ThreadContext *tc, int &i, int width)
return getSyscallArg(tc, i);
}
-
-void
-ArmProcess32::setSyscallArg(ThreadContext *tc, int i, RegVal val)
-{
- assert(i < 6);
- tc->setIntReg(ArgumentReg0 + i, val);
-}
-
-void
-ArmProcess64::setSyscallArg(ThreadContext *tc, int i, RegVal val)
-{
- assert(i < 8);
- tc->setIntReg(ArgumentReg0 + i, val);
-}
-
void
ArmProcess32::setSyscallReturn(ThreadContext *tc, SyscallReturn sysret)
{
diff --git a/src/arch/arm/process.hh b/src/arch/arm/process.hh
index bdd82f847..6b13df106 100644
--- a/src/arch/arm/process.hh
+++ b/src/arch/arm/process.hh
@@ -89,7 +89,6 @@ class ArmProcess32 : public ArmProcess
RegVal getSyscallArg(ThreadContext *tc, int &i, int width) override;
RegVal getSyscallArg(ThreadContext *tc, int &i) override;
- void setSyscallArg(ThreadContext *tc, int i, RegVal val) override;
void setSyscallReturn(ThreadContext *tc,
SyscallReturn return_value) override;
};
@@ -109,7 +108,6 @@ class ArmProcess64 : public ArmProcess
RegVal getSyscallArg(ThreadContext *tc, int &i, int width) override;
RegVal getSyscallArg(ThreadContext *tc, int &i) override;
- void setSyscallArg(ThreadContext *tc, int i, RegVal val) override;
void setSyscallReturn(ThreadContext *tc,
SyscallReturn return_value) override;
};
diff --git a/src/arch/mips/process.cc b/src/arch/mips/process.cc
index 2e66cac82..a62c1deb1 100644
--- a/src/arch/mips/process.cc
+++ b/src/arch/mips/process.cc
@@ -201,13 +201,6 @@ MipsProcess::getSyscallArg(ThreadContext *tc, int &i)
}
void
-MipsProcess::setSyscallArg(ThreadContext *tc, int i, RegVal val)
-{
- assert(i < 6);
- tc->setIntReg(FirstArgumentReg + i, val);
-}
-
-void
MipsProcess::setSyscallReturn(ThreadContext *tc, SyscallReturn sysret)
{
if (sysret.successful()) {
diff --git a/src/arch/mips/process.hh b/src/arch/mips/process.hh
index a607bd285..fb31bef6d 100644
--- a/src/arch/mips/process.hh
+++ b/src/arch/mips/process.hh
@@ -54,7 +54,6 @@ class MipsProcess : public Process
RegVal getSyscallArg(ThreadContext *tc, int &i);
/// Explicitly import the otherwise hidden getSyscallArg
using Process::getSyscallArg;
- void setSyscallArg(ThreadContext *tc, int i, RegVal val);
void setSyscallReturn(ThreadContext *tc, SyscallReturn return_value);
};
diff --git a/src/arch/power/linux/process.cc b/src/arch/power/linux/process.cc
index f39de53f8..ac032275e 100644
--- a/src/arch/power/linux/process.cc
+++ b/src/arch/power/linux/process.cc
@@ -476,12 +476,3 @@ PowerLinuxProcess::getSyscallArg(ThreadContext *tc, int &i)
assert(i < 6);
return tc->readIntReg(ArgumentReg0 + i++);
}
-
-void
-PowerLinuxProcess::setSyscallArg(ThreadContext *tc, int i, RegVal val)
-{
- // Linux apparently allows more parameter than the ABI says it should.
- // This limit may need to be increased even further.
- assert(i < 6);
- tc->setIntReg(ArgumentReg0 + i, val);
-}
diff --git a/src/arch/power/linux/process.hh b/src/arch/power/linux/process.hh
index aad4c5f0d..5a2ad92a4 100644
--- a/src/arch/power/linux/process.hh
+++ b/src/arch/power/linux/process.hh
@@ -48,7 +48,6 @@ class PowerLinuxProcess : public PowerProcess
RegVal getSyscallArg(ThreadContext *tc, int &i);
/// Explicitly import the otherwise hidden getSyscallArg
using Process::getSyscallArg;
- void setSyscallArg(ThreadContext *tc, int i, RegVal val);
/// Array of syscall descriptors, indexed by call number.
static SyscallDesc syscallDescs[];
diff --git a/src/arch/power/process.cc b/src/arch/power/process.cc
index b24a51948..fdef2fa30 100644
--- a/src/arch/power/process.cc
+++ b/src/arch/power/process.cc
@@ -280,13 +280,6 @@ PowerProcess::getSyscallArg(ThreadContext *tc, int &i)
}
void
-PowerProcess::setSyscallArg(ThreadContext *tc, int i, RegVal val)
-{
- assert(i < 5);
- tc->setIntReg(ArgumentReg0 + i, val);
-}
-
-void
PowerProcess::setSyscallReturn(ThreadContext *tc, SyscallReturn sysret)
{
Cr cr = tc->readIntReg(INTREG_CR);
diff --git a/src/arch/power/process.hh b/src/arch/power/process.hh
index 186bc8745..f746f1155 100644
--- a/src/arch/power/process.hh
+++ b/src/arch/power/process.hh
@@ -53,7 +53,6 @@ class PowerProcess : public Process
RegVal getSyscallArg(ThreadContext *tc, int &i);
/// Explicitly import the otherwise hidden getSyscallArg
using Process::getSyscallArg;
- void setSyscallArg(ThreadContext *tc, int i, RegVal val);
void setSyscallReturn(ThreadContext *tc, SyscallReturn return_value);
};
diff --git a/src/arch/riscv/process.cc b/src/arch/riscv/process.cc
index 617efa0ee..ce4983609 100644
--- a/src/arch/riscv/process.cc
+++ b/src/arch/riscv/process.cc
@@ -260,12 +260,6 @@ RiscvProcess::getSyscallArg(ThreadContext *tc, int &i)
}
void
-RiscvProcess::setSyscallArg(ThreadContext *tc, int i, RegVal val)
-{
- tc->setIntReg(SyscallArgumentRegs[i], val);
-}
-
-void
RiscvProcess::setSyscallReturn(ThreadContext *tc, SyscallReturn sysret)
{
if (sysret.successful()) {
diff --git a/src/arch/riscv/process.hh b/src/arch/riscv/process.hh
index 63e379931..71a0c7b60 100644
--- a/src/arch/riscv/process.hh
+++ b/src/arch/riscv/process.hh
@@ -54,7 +54,6 @@ class RiscvProcess : public Process
RegVal getSyscallArg(ThreadContext *tc, int &i) override;
/// Explicitly import the otherwise hidden getSyscallArg
using Process::getSyscallArg;
- void setSyscallArg(ThreadContext *tc, int i, RegVal val) override;
void setSyscallReturn(ThreadContext *tc,
SyscallReturn return_value) override;
diff --git a/src/arch/sparc/process.cc b/src/arch/sparc/process.cc
index 23a9b004f..189afac82 100644
--- a/src/arch/sparc/process.cc
+++ b/src/arch/sparc/process.cc
@@ -505,13 +505,6 @@ Sparc32Process::getSyscallArg(ThreadContext *tc, int &i)
return bits(tc->readIntReg(FirstArgumentReg + i++), 31, 0);
}
-void
-Sparc32Process::setSyscallArg(ThreadContext *tc, int i, RegVal val)
-{
- assert(i < 6);
- tc->setIntReg(FirstArgumentReg + i, bits(val, 31, 0));
-}
-
RegVal
Sparc64Process::getSyscallArg(ThreadContext *tc, int &i)
{
@@ -520,13 +513,6 @@ Sparc64Process::getSyscallArg(ThreadContext *tc, int &i)
}
void
-Sparc64Process::setSyscallArg(ThreadContext *tc, int i, RegVal val)
-{
- assert(i < 6);
- tc->setIntReg(FirstArgumentReg + i, val);
-}
-
-void
SparcProcess::setSyscallReturn(ThreadContext *tc, SyscallReturn sysret)
{
// check for error condition. SPARC syscall convention is to
diff --git a/src/arch/sparc/process.hh b/src/arch/sparc/process.hh
index 0ef34352b..2e5379bc5 100644
--- a/src/arch/sparc/process.hh
+++ b/src/arch/sparc/process.hh
@@ -111,8 +111,6 @@ class Sparc32Process : public SparcProcess
RegVal getSyscallArg(ThreadContext *tc, int &i);
/// Explicitly import the otherwise hidden getSyscallArg
using Process::getSyscallArg;
-
- void setSyscallArg(ThreadContext *tc, int i, RegVal val);
};
class Sparc64Process : public SparcProcess
@@ -154,8 +152,6 @@ class Sparc64Process : public SparcProcess
RegVal getSyscallArg(ThreadContext *tc, int &i);
/// Explicitly import the otherwise hidden getSyscallArg
using Process::getSyscallArg;
-
- void setSyscallArg(ThreadContext *tc, int i, RegVal val);
};
#endif // __SPARC_PROCESS_HH__
diff --git a/src/arch/x86/process.cc b/src/arch/x86/process.cc
index 09ff71f52..f0e8ead98 100644
--- a/src/arch/x86/process.cc
+++ b/src/arch/x86/process.cc
@@ -1069,13 +1069,6 @@ X86_64Process::getSyscallArg(ThreadContext *tc, int &i)
}
void
-X86_64Process::setSyscallArg(ThreadContext *tc, int i, RegVal val)
-{
- assert(i < NumArgumentRegs);
- return tc->setIntReg(ArgumentReg[i], val);
-}
-
-void
X86_64Process::clone(ThreadContext *old_tc, ThreadContext *new_tc,
Process *p, RegVal flags)
{
@@ -1102,13 +1095,6 @@ I386Process::getSyscallArg(ThreadContext *tc, int &i, int width)
}
void
-I386Process::setSyscallArg(ThreadContext *tc, int i, RegVal val)
-{
- assert(i < NumArgumentRegs);
- return tc->setIntReg(ArgumentReg[i], val);
-}
-
-void
I386Process::clone(ThreadContext *old_tc, ThreadContext *new_tc,
Process *p, RegVal flags)
{
diff --git a/src/arch/x86/process.hh b/src/arch/x86/process.hh
index 544d5f61f..37545e9d9 100644
--- a/src/arch/x86/process.hh
+++ b/src/arch/x86/process.hh
@@ -138,7 +138,6 @@ namespace X86ISA
RegVal getSyscallArg(ThreadContext *tc, int &i) override;
/// Explicitly import the otherwise hidden getSyscallArg
using Process::getSyscallArg;
- void setSyscallArg(ThreadContext *tc, int i, RegVal val) override;
void clone(ThreadContext *old_tc, ThreadContext *new_tc,
Process *process, RegVal flags) override;
};
@@ -181,7 +180,6 @@ namespace X86ISA
Fault *fault) override;
RegVal getSyscallArg(ThreadContext *tc, int &i) override;
RegVal getSyscallArg(ThreadContext *tc, int &i, int width) override;
- void setSyscallArg(ThreadContext *tc, int i, RegVal val) override;
void clone(ThreadContext *old_tc, ThreadContext *new_tc,
Process *process, RegVal flags) override;
};
diff --git a/src/sim/process.hh b/src/sim/process.hh
index a28d58e9a..5d4a9672e 100644
--- a/src/sim/process.hh
+++ b/src/sim/process.hh
@@ -77,7 +77,6 @@ class Process : public SimObject
virtual void syscall(int64_t callnum, ThreadContext *tc, Fault *fault);
virtual RegVal getSyscallArg(ThreadContext *tc, int &i) = 0;
virtual RegVal getSyscallArg(ThreadContext *tc, int &i, int width);
- virtual void setSyscallArg(ThreadContext *tc, int i, RegVal val) = 0;
virtual void setSyscallReturn(ThreadContext *tc,
SyscallReturn return_value) = 0;
virtual SyscallDesc *getDesc(int callnum) = 0;