X86: Implement a locking version of XCHG.
authorGabe Black <gblack@eecs.umich.edu>
Sun, 19 Apr 2009 11:56:22 +0000 (04:56 -0700)
committerGabe Black <gblack@eecs.umich.edu>
Sun, 19 Apr 2009 11:56:22 +0000 (04:56 -0700)
src/arch/x86/isa/insts/general_purpose/data_transfer/xchg.py

index 3f243f5d821f01ff2dd642829bc7a34f1c9616df..521be95e5900944dc5287716c80017322434b182 100644 (file)
@@ -95,4 +95,19 @@ def macroop XCHG_P_R
     st reg, seg, riprel, disp
     mov reg, reg, t1
 };
+
+def macroop XCHG_LOCKED_M_R
+{
+    ldstl t1, seg, sib, disp
+    stul reg, seg, sib, disp
+    mov reg, reg, t1
+};
+
+def macroop XCHG_LOCKED_P_R
+{
+    rdip t7
+    ldstl t1, seg, riprel, disp
+    stul reg, seg, riprel, disp
+    mov reg, reg, t1
+};
 '''