From 0167f66c130ada7a49d59d1ef4644d282cd146dc Mon Sep 17 00:00:00 2001 From: Gabe Black Date: Fri, 12 Oct 2018 23:09:07 -0700 Subject: [PATCH] mips: Explicitly truncate the syscall return value down to 32 bits. The IntReg type is 32 bits, and using it to cast the syscall return value is appropriate, but we're attempting to get rid of the ISA specific register types. Change-Id: I42496dd2cc086a6b718e1ce087fef81bb897d02f Reviewed-on: https://gem5-review.googlesource.com/c/13619 Reviewed-by: Jason Lowe-Power Maintainer: Jason Lowe-Power --- src/arch/mips/process.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/arch/mips/process.cc b/src/arch/mips/process.cc index 3f65691aa..6bae08392 100644 --- a/src/arch/mips/process.cc +++ b/src/arch/mips/process.cc @@ -224,7 +224,7 @@ MipsProcess::setSyscallReturn(ThreadContext *tc, SyscallReturn sysret) tc->setIntReg(ReturnValueReg, sysret.returnValue()); } else { // got an error, return details - tc->setIntReg(SyscallSuccessReg, (IntReg) -1); + tc->setIntReg(SyscallSuccessReg, (uint32_t)(-1)); tc->setIntReg(ReturnValueReg, sysret.errnoValue()); } } -- 2.30.2