diff --git a/src/arch/x86/isa/decoder/one_byte_opcodes.isa b/src/arch/x86/isa/decoder/one_byte_opcodes.isa index 4874b6102..80f603503 100644 --- a/src/arch/x86/isa/decoder/one_byte_opcodes.isa +++ b/src/arch/x86/isa/decoder/one_byte_opcodes.isa @@ -402,7 +402,8 @@ // the first byte. 0x5: decode IMMEDIATE { -0x80: - SyscallInst::int80('xc->syscall(Rax)', IsSyscall); + SyscallInst::int80('xc->syscall(Rax)', + IsSyscall, IsNonSpeculative); default: int_Ib(); } #endif diff --git a/src/arch/x86/isa/decoder/two_byte_opcodes.isa b/src/arch/x86/isa/decoder/two_byte_opcodes.isa index b8ed1fdbe..27824c8aa 100644 --- a/src/arch/x86/isa/decoder/two_byte_opcodes.isa +++ b/src/arch/x86/isa/decoder/two_byte_opcodes.isa @@ -228,7 +228,8 @@ 0x1: Inst::SYSCALL_LEGACY(); } #else - 0x05: SyscallInst::syscall('xc->syscall(Rax)', IsSyscall); + 0x05: SyscallInst::syscall('xc->syscall(Rax)', + IsSyscall, IsNonSpeculative); #endif 0x06: Inst::CLTS(); 0x07: decode MODE_SUBMODE { @@ -404,7 +405,8 @@ #if FULL_SYSTEM 0x4: sysenter(); #else - 0x4: SyscallInst::sysenter('xc->syscall(Rax)', IsSyscall); + 0x4: SyscallInst::sysenter('xc->syscall(Rax)', + IsSyscall, IsNonSpeculative); #endif 0x5: sysexit(); 0x6: Inst::UD2();