summaryrefslogtreecommitdiff
path: root/src/arch
diff options
context:
space:
mode:
authorGabe Black <gabeblack@google.com>2019-05-02 02:16:33 -0700
committerGabe Black <gabeblack@google.com>2019-05-30 14:20:03 +0000
commit5365c18f2e309b54d3e37dc98d8cca20ec9d4219 (patch)
treeda93a5b6abd743177d3b5841436383fbc3a24836 /src/arch
parent74e494e1a28562245d9733df61739ea3cc32f92d (diff)
downloadgem5-5365c18f2e309b54d3e37dc98d8cca20ec9d4219.tar.xz
arch, base, cpu, gpu, sim: Merge getMemProxy and getVirtProxy.
These two functions were performing the same function but had two different names for historical reasons. This change merges them together, keeping the getVirtProxy name to be consistent with the getPhysProxy method used to get a non-translating proxy port. Change-Id: Idd83c6b899f9343795075b030ccbc723a79e52a4 Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/18581 Tested-by: kokoro <noreply+kokoro@google.com> Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com> Reviewed-by: Jason Lowe-Power <jason@lowepower.com> Maintainer: Andreas Sandberg <andreas.sandberg@arm.com>
Diffstat (limited to 'src/arch')
-rw-r--r--src/arch/alpha/linux/process.cc6
-rw-r--r--src/arch/arm/freebsd/process.cc16
-rw-r--r--src/arch/arm/linux/process.cc18
-rw-r--r--src/arch/mips/linux/process.cc6
-rw-r--r--src/arch/power/linux/process.cc2
-rw-r--r--src/arch/riscv/linux/process.cc4
-rw-r--r--src/arch/sparc/linux/syscalls.cc8
-rw-r--r--src/arch/sparc/process.cc4
-rw-r--r--src/arch/sparc/solaris/process.cc2
-rw-r--r--src/arch/x86/linux/process.cc12
-rw-r--r--src/arch/x86/pseudo_inst.cc2
11 files changed, 40 insertions, 40 deletions
diff --git a/src/arch/alpha/linux/process.cc b/src/arch/alpha/linux/process.cc
index d342c5d2d..f129b263f 100644
--- a/src/arch/alpha/linux/process.cc
+++ b/src/arch/alpha/linux/process.cc
@@ -89,7 +89,7 @@ unameFunc(SyscallDesc *desc, int callnum, ThreadContext *tc)
strcpy(name->version, "#1 Mon Aug 18 11:32:15 EDT 2003");
strcpy(name->machine, "alpha");
- name.copyOut(tc->getMemProxy());
+ name.copyOut(tc->getVirtProxy());
return 0;
}
@@ -111,7 +111,7 @@ osf_getsysinfoFunc(SyscallDesc *desc, int callnum, ThreadContext *tc)
TypedBufferArg<uint64_t> fpcr(bufPtr);
// I don't think this exactly matches the HW FPCR
*fpcr = 0;
- fpcr.copyOut(tc->getMemProxy());
+ fpcr.copyOut(tc->getVirtProxy());
return 0;
}
@@ -139,7 +139,7 @@ osf_setsysinfoFunc(SyscallDesc *desc, int callnum, ThreadContext *tc)
case 14: { // SSI_IEEE_FP_CONTROL
TypedBufferArg<uint64_t> fpcr(bufPtr);
// I don't think this exactly matches the HW FPCR
- fpcr.copyIn(tc->getMemProxy());
+ fpcr.copyIn(tc->getVirtProxy());
DPRINTFR(SyscallVerbose, "osf_setsysinfo(SSI_IEEE_FP_CONTROL): "
" setting FPCR to 0x%x\n", gtoh(*(uint64_t*)fpcr));
return 0;
diff --git a/src/arch/arm/freebsd/process.cc b/src/arch/arm/freebsd/process.cc
index 41549eaab..69424c989 100644
--- a/src/arch/arm/freebsd/process.cc
+++ b/src/arch/arm/freebsd/process.cc
@@ -109,13 +109,13 @@ sysctlFunc(SyscallDesc *desc, int callnum, ThreadContext *tc)
BufferArg buf3(oldlenp, sizeof(size_t));
BufferArg buf4(newp, sizeof(size_t));
- buf.copyIn(tc->getMemProxy());
- buf2.copyIn(tc->getMemProxy());
- buf3.copyIn(tc->getMemProxy());
+ buf.copyIn(tc->getVirtProxy());
+ buf2.copyIn(tc->getVirtProxy());
+ buf3.copyIn(tc->getVirtProxy());
void *hnewp = NULL;
if (newp) {
- buf4.copyIn(tc->getMemProxy());
+ buf4.copyIn(tc->getVirtProxy());
hnewp = (void *)buf4.bufferPtr();
}
@@ -125,11 +125,11 @@ sysctlFunc(SyscallDesc *desc, int callnum, ThreadContext *tc)
ret = sysctl((int *)hnamep, namelen, holdp, holdlenp, hnewp, newlen);
- buf.copyOut(tc->getMemProxy());
- buf2.copyOut(tc->getMemProxy());
- buf3.copyOut(tc->getMemProxy());
+ buf.copyOut(tc->getVirtProxy());
+ buf2.copyOut(tc->getVirtProxy());
+ buf3.copyOut(tc->getVirtProxy());
if (newp)
- buf4.copyOut(tc->getMemProxy());
+ buf4.copyOut(tc->getVirtProxy());
return (ret);
}
diff --git a/src/arch/arm/linux/process.cc b/src/arch/arm/linux/process.cc
index 3fcb01fe7..426f66a55 100644
--- a/src/arch/arm/linux/process.cc
+++ b/src/arch/arm/linux/process.cc
@@ -117,7 +117,7 @@ unameFunc32(SyscallDesc *desc, int callnum, ThreadContext *tc)
strcpy(name->version, "#1 SMP Sat Dec 1 00:00:00 GMT 2012");
strcpy(name->machine, "armv7l");
- name.copyOut(tc->getMemProxy());
+ name.copyOut(tc->getVirtProxy());
return 0;
}
@@ -135,7 +135,7 @@ unameFunc64(SyscallDesc *desc, int callnum, ThreadContext *tc)
strcpy(name->version, "#1 SMP Sat Dec 1 00:00:00 GMT 2012");
strcpy(name->machine, "armv8l");
- name.copyOut(tc->getMemProxy());
+ name.copyOut(tc->getVirtProxy());
return 0;
}
@@ -147,7 +147,7 @@ setTLSFunc32(SyscallDesc *desc, int callnum, ThreadContext *tc)
auto process = tc->getProcessPtr();
uint32_t tlsPtr = process->getSyscallArg(tc, index);
- tc->getMemProxy().writeBlob(ArmLinuxProcess32::commPage + 0x0ff0,
+ tc->getVirtProxy().writeBlob(ArmLinuxProcess32::commPage + 0x0ff0,
&tlsPtr, sizeof(tlsPtr));
tc->setMiscReg(MISCREG_TPIDRURO,tlsPtr);
return 0;
@@ -1737,8 +1737,8 @@ ArmLinuxProcess32::initState()
// Fill this page with swi -1 so we'll no if we land in it somewhere.
for (Addr addr = 0; addr < PageBytes; addr += sizeof(swiNeg1)) {
- tc->getMemProxy().writeBlob(commPage + addr,
- swiNeg1, sizeof(swiNeg1));
+ tc->getVirtProxy().writeBlob(commPage + addr,
+ swiNeg1, sizeof(swiNeg1));
}
uint8_t memory_barrier[] =
@@ -1746,8 +1746,8 @@ ArmLinuxProcess32::initState()
0x5f, 0xf0, 0x7f, 0xf5, // dmb
0x0e, 0xf0, 0xa0, 0xe1 // return
};
- tc->getMemProxy().writeBlob(commPage + 0x0fa0, memory_barrier,
- sizeof(memory_barrier));
+ tc->getVirtProxy().writeBlob(commPage + 0x0fa0, memory_barrier,
+ sizeof(memory_barrier));
uint8_t cmpxchg[] =
{
@@ -1760,7 +1760,7 @@ ArmLinuxProcess32::initState()
0x5f, 0xf0, 0x7f, 0xf5, // dmb
0x0e, 0xf0, 0xa0, 0xe1 // return
};
- tc->getMemProxy().writeBlob(commPage + 0x0fc0, cmpxchg, sizeof(cmpxchg));
+ tc->getVirtProxy().writeBlob(commPage + 0x0fc0, cmpxchg, sizeof(cmpxchg));
uint8_t get_tls[] =
{
@@ -1768,7 +1768,7 @@ ArmLinuxProcess32::initState()
0x70, 0x0f, 0x1d, 0xee, // mrc p15, 0, r0, c13, c0, 3
0x0e, 0xf0, 0xa0, 0xe1 // return
};
- tc->getMemProxy().writeBlob(commPage + 0x0fe0, get_tls, sizeof(get_tls));
+ tc->getVirtProxy().writeBlob(commPage + 0x0fe0, get_tls, sizeof(get_tls));
}
void
diff --git a/src/arch/mips/linux/process.cc b/src/arch/mips/linux/process.cc
index 9efaf2624..596f2dda0 100644
--- a/src/arch/mips/linux/process.cc
+++ b/src/arch/mips/linux/process.cc
@@ -92,7 +92,7 @@ unameFunc(SyscallDesc *desc, int callnum, ThreadContext *tc)
strcpy(name->version, "#1 Mon Aug 18 11:32:15 EDT 2003");
strcpy(name->machine, "mips");
- name.copyOut(tc->getMemProxy());
+ name.copyOut(tc->getVirtProxy());
return 0;
}
@@ -115,7 +115,7 @@ sys_getsysinfoFunc(SyscallDesc *desc, int callnum, ThreadContext *tc)
TypedBufferArg<uint64_t> fpcr(bufPtr);
// I don't think this exactly matches the HW FPCR
*fpcr = 0;
- fpcr.copyOut(tc->getMemProxy());
+ fpcr.copyOut(tc->getVirtProxy());
return 0;
}
default:
@@ -144,7 +144,7 @@ sys_setsysinfoFunc(SyscallDesc *desc, int callnum, ThreadContext *tc)
// SSI_IEEE_FP_CONTROL
TypedBufferArg<uint64_t> fpcr(bufPtr);
// I don't think this exactly matches the HW FPCR
- fpcr.copyIn(tc->getMemProxy());
+ fpcr.copyIn(tc->getVirtProxy());
DPRINTFR(SyscallVerbose, "sys_setsysinfo(SSI_IEEE_FP_CONTROL): "
" setting FPCR to 0x%x\n", gtoh(*(uint64_t*)fpcr));
return 0;
diff --git a/src/arch/power/linux/process.cc b/src/arch/power/linux/process.cc
index 8a5cd137c..97032d989 100644
--- a/src/arch/power/linux/process.cc
+++ b/src/arch/power/linux/process.cc
@@ -92,7 +92,7 @@ unameFunc(SyscallDesc *desc, int callnum, ThreadContext *tc)
strcpy(name->version, "#1 Mon Aug 18 11:32:15 EDT 2003");
strcpy(name->machine, "power");
- name.copyOut(tc->getMemProxy());
+ name.copyOut(tc->getVirtProxy());
return 0;
}
diff --git a/src/arch/riscv/linux/process.cc b/src/arch/riscv/linux/process.cc
index 8aebd558e..6708e026f 100644
--- a/src/arch/riscv/linux/process.cc
+++ b/src/arch/riscv/linux/process.cc
@@ -100,7 +100,7 @@ unameFunc64(SyscallDesc *desc, int callnum, ThreadContext *tc)
strcpy(name->version, "#1 Mon Aug 18 11:32:15 EDT 2003");
strcpy(name->machine, "riscv64");
- name.copyOut(tc->getMemProxy());
+ name.copyOut(tc->getVirtProxy());
return 0;
}
@@ -118,7 +118,7 @@ unameFunc32(SyscallDesc *desc, int callnum, ThreadContext *tc)
strcpy(name->version, "#1 Mon Aug 18 11:32:15 EDT 2003");
strcpy(name->machine, "riscv32");
- name.copyOut(tc->getMemProxy());
+ name.copyOut(tc->getVirtProxy());
return 0;
}
diff --git a/src/arch/sparc/linux/syscalls.cc b/src/arch/sparc/linux/syscalls.cc
index 70d1b2af6..1abe2476c 100644
--- a/src/arch/sparc/linux/syscalls.cc
+++ b/src/arch/sparc/linux/syscalls.cc
@@ -51,7 +51,7 @@ unameFunc(SyscallDesc *desc, int callnum, ThreadContext *tc)
strcpy(name->version, "#1 Mon Aug 18 11:32:15 EDT 2003");
strcpy(name->machine, "sparc");
- name.copyOut(tc->getMemProxy());
+ name.copyOut(tc->getVirtProxy());
return 0;
}
@@ -71,19 +71,19 @@ getresuidFunc(SyscallDesc *desc, int num, ThreadContext *tc)
if (ruid) {
BufferArg ruidBuff(ruid, sizeof(uint64_t));
memcpy(ruidBuff.bufferPtr(), &id, sizeof(uint64_t));
- ruidBuff.copyOut(tc->getMemProxy());
+ ruidBuff.copyOut(tc->getVirtProxy());
}
// Set the euid
if (euid) {
BufferArg euidBuff(euid, sizeof(uint64_t));
memcpy(euidBuff.bufferPtr(), &id, sizeof(uint64_t));
- euidBuff.copyOut(tc->getMemProxy());
+ euidBuff.copyOut(tc->getVirtProxy());
}
// Set the suid
if (suid) {
BufferArg suidBuff(suid, sizeof(uint64_t));
memcpy(suidBuff.bufferPtr(), &id, sizeof(uint64_t));
- suidBuff.copyOut(tc->getMemProxy());
+ suidBuff.copyOut(tc->getVirtProxy());
}
return 0;
}
diff --git a/src/arch/sparc/process.cc b/src/arch/sparc/process.cc
index 3bd3ea0bf..d89c606a3 100644
--- a/src/arch/sparc/process.cc
+++ b/src/arch/sparc/process.cc
@@ -451,7 +451,7 @@ void Sparc32Process::flushWindows(ThreadContext *tc)
for (int index = 16; index < 32; index++) {
uint32_t regVal = tc->readIntReg(index);
regVal = htog(regVal);
- if (!tc->getMemProxy().tryWriteBlob(
+ if (!tc->getVirtProxy().tryWriteBlob(
sp + (index - 16) * 4, (uint8_t *)&regVal, 4)) {
warn("Failed to save register to the stack when "
"flushing windows.\n");
@@ -486,7 +486,7 @@ Sparc64Process::flushWindows(ThreadContext *tc)
for (int index = 16; index < 32; index++) {
RegVal regVal = tc->readIntReg(index);
regVal = htog(regVal);
- if (!tc->getMemProxy().tryWriteBlob(
+ if (!tc->getVirtProxy().tryWriteBlob(
sp + 2047 + (index - 16) * 8, (uint8_t *)&regVal, 8)) {
warn("Failed to save register to the stack when "
"flushing windows.\n");
diff --git a/src/arch/sparc/solaris/process.cc b/src/arch/sparc/solaris/process.cc
index 3a13229ed..fb38c77ee 100644
--- a/src/arch/sparc/solaris/process.cc
+++ b/src/arch/sparc/solaris/process.cc
@@ -84,7 +84,7 @@ unameFunc(SyscallDesc *desc, int callnum, ThreadContext *tc)
strcpy(name->version, "Generic_118558-21");
strcpy(name->machine, "sun4u");
- name.copyOut(tc->getMemProxy());
+ name.copyOut(tc->getVirtProxy());
return 0;
}
diff --git a/src/arch/x86/linux/process.cc b/src/arch/x86/linux/process.cc
index 1d8bcbf6c..8a58ee1fe 100644
--- a/src/arch/x86/linux/process.cc
+++ b/src/arch/x86/linux/process.cc
@@ -103,7 +103,7 @@ unameFunc(SyscallDesc *desc, int callnum, ThreadContext *tc)
strcpy(name->version, "#1 Mon Aug 18 11:32:15 EDT 2003");
strcpy(name->machine, "x86_64");
- name.copyOut(tc->getMemProxy());
+ name.copyOut(tc->getVirtProxy());
return 0;
}
@@ -125,7 +125,7 @@ archPrctlFunc(SyscallDesc *desc, int callnum, ThreadContext *tc)
int code = process->getSyscallArg(tc, index);
uint64_t addr = process->getSyscallArg(tc, index);
uint64_t fsBase, gsBase;
- PortProxy &p = tc->getMemProxy();
+ PortProxy &p = tc->getVirtProxy();
switch(code)
{
// Each of these valid options should actually check addr.
@@ -194,10 +194,10 @@ setThreadArea32Func(SyscallDesc *desc, int callnum, ThreadContext *tc)
gdt(x86p->gdtStart() + minTLSEntry * sizeof(uint64_t),
numTLSEntries * sizeof(uint64_t));
- if (!userDesc.copyIn(tc->getMemProxy()))
+ if (!userDesc.copyIn(tc->getVirtProxy()))
return -EFAULT;
- if (!gdt.copyIn(tc->getMemProxy()))
+ if (!gdt.copyIn(tc->getVirtProxy()))
panic("Failed to copy in GDT for %s.\n", desc->name());
if (userDesc->entry_number == (uint32_t)(-1)) {
@@ -249,9 +249,9 @@ setThreadArea32Func(SyscallDesc *desc, int callnum, ThreadContext *tc)
gdt[index] = (uint64_t)segDesc;
- if (!userDesc.copyOut(tc->getMemProxy()))
+ if (!userDesc.copyOut(tc->getVirtProxy()))
return -EFAULT;
- if (!gdt.copyOut(tc->getMemProxy()))
+ if (!gdt.copyOut(tc->getVirtProxy()))
panic("Failed to copy out GDT for %s.\n", desc->name());
return 0;
diff --git a/src/arch/x86/pseudo_inst.cc b/src/arch/x86/pseudo_inst.cc
index 253c91441..6c1a7f8bf 100644
--- a/src/arch/x86/pseudo_inst.cc
+++ b/src/arch/x86/pseudo_inst.cc
@@ -68,7 +68,7 @@ m5PageFault(ThreadContext *tc)
Process *p = tc->getProcessPtr();
if (!p->fixupStackFault(tc->readMiscReg(MISCREG_CR2))) {
- PortProxy &proxy = tc->getMemProxy();
+ PortProxy &proxy = tc->getVirtProxy();
// at this point we should have 6 values on the interrupt stack
int size = 6;
uint64_t is[size];