From: Gabe Black Date: Sun, 19 Apr 2009 11:55:43 +0000 (-0700) Subject: X86: Implement the ldstl microop. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=d2554ff0304af0d4b365894026b702b5714385d6;p=gem5.git X86: Implement the ldstl microop. This microop does a load, checks that a store would succeed, and locks the requested address. --- diff --git a/src/arch/x86/isa/microops/ldstop.isa b/src/arch/x86/isa/microops/ldstop.isa index 24ddd0b43..5df423ea9 100644 --- a/src/arch/x86/isa/microops/ldstop.isa +++ b/src/arch/x86/isa/microops/ldstop.isa @@ -440,6 +440,8 @@ let {{ defineMicroLoadOp('Ld', 'Data = merge(Data, Mem, dataSize);') defineMicroLoadOp('Ldst', 'Data = merge(Data, Mem, dataSize);', 'X86ISA::StoreCheck') + defineMicroLoadOp('Ldstl', 'Data = merge(Data, Mem, dataSize);', + 'X86ISA::StoreCheck | Request::LOCKED') defineMicroLoadOp('Ldfp', 'FpData.uqw = Mem;') def defineMicroStoreOp(mnemonic, code, \