From 5e295bada66326a2d1a8e04bd4b21fea7c5b9c69 Mon Sep 17 00:00:00 2001 From: Gabe Black Date: Sun, 24 Nov 2019 23:17:58 -0800 Subject: arch: Stop using setSyscallArg to set argc and argv. In Alpha and MIPS, the argc and argv values should be in what happens to be the first and second syscall argument registers, but that's not by definition. The process objects of both those ISAs know what registers to use intrinsically, so there's also no reason to call out to a helper method which acts as a part of the Process's interface to the rest of gem5. Jira Issue: https://gem5.atlassian.net/browse/GEM5-187 Change-Id: Id8fa38ab1fc2ac6436e94ad41303439973fded10 Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/23173 Tested-by: kokoro Reviewed-by: Gabe Black Maintainer: Gabe Black --- src/arch/alpha/process.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/arch/alpha') diff --git a/src/arch/alpha/process.cc b/src/arch/alpha/process.cc index 314769535..b8fb7a99b 100644 --- a/src/arch/alpha/process.cc +++ b/src/arch/alpha/process.cc @@ -170,8 +170,8 @@ AlphaProcess::argsInit(int intSize, int pageSize) ThreadContext *tc = system->getThreadContext(contextIds[0]); - setSyscallArg(tc, 0, argc); - setSyscallArg(tc, 1, argv_array_base); + tc->setIntReg(FirstArgumentReg, argc); + tc->setIntReg(FirstArgumentReg + 1, argv_array_base); tc->setIntReg(StackPointerReg, memState->getStackMin()); tc->pcState(getStartPC()); -- cgit v1.2.3