From: Tim Harris Date: Mon, 7 Feb 2011 23:16:27 +0000 (-0800) Subject: X86: Use all 64 bits of the lstar register in the SYSCALL_64 macroop. X-Git-Tag: stable_2012_02_02~564 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=6da83b8a1b06e64a2fc7b14c5ad342188f082848;p=gem5.git X86: Use all 64 bits of the lstar register in the SYSCALL_64 macroop. During SYSCALL_64, use dataSize=8 when handling new rip (ref http://www.intel.com/Assets/PDF/manual/253668.pdf 5.8.8 IA32_LSTAR is a 64-bit address) --- diff --git a/src/arch/x86/isa/insts/general_purpose/system_calls.py b/src/arch/x86/isa/insts/general_purpose/system_calls.py index b015c82fc..d6f1a39bf 100644 --- a/src/arch/x86/isa/insts/general_purpose/system_calls.py +++ b/src/arch/x86/isa/insts/general_purpose/system_calls.py @@ -79,8 +79,8 @@ def macroop SYSCALL_64 wrattr ss, t4 # Set the new rip. - rdval t7, lstar - wrip t0, t7 + rdval t7, lstar, dataSize=8 + wrip t0, t7, dataSize=8 # Mask the flags against sf_mask and leave RF turned off. rdval t3, sf_mask, dataSize=8