Implement NOT
authorGabe Black <gblack@eecs.umich.edu>
Fri, 27 Jul 2007 05:03:19 +0000 (22:03 -0700)
committerGabe Black <gblack@eecs.umich.edu>
Fri, 27 Jul 2007 05:03:19 +0000 (22:03 -0700)
--HG--
extra : convert_revision : 09cbed6332224d06644d401f21178eb7914993df

src/arch/x86/isa/insts/logical.py

index 04737edd1629b80cfacb6aca644e7a06e11d8d79..bbc15f8faf51d043a8d6160bae0ad50b030444e1 100644 (file)
@@ -221,12 +221,27 @@ def macroop AND_P_R
     and t1, t1, reg
     st t1, ds, [scale, index, base], disp
 };
+
+def macroop NOT_R
+{
+    limm t1, -1
+    xor reg, reg, t1
+};
+
+def macroop NOT_M
+{
+    limm t1, -1
+    ld t2, ds, [scale, index, base], disp
+    xor t2, t2, t1
+    st t2, ds, [scale, index, base], disp
+};
+
+def macroop NOT_P
+{
+    limm t1, -1
+    rdip t7
+    ld t2, ds, [0, t0, t7], disp
+    xor t2, t2, t1
+    st t2, ds, [0, t0, t7], disp
+};
 '''
-#let {{
-#microcodeString = '''
-#    def macroop NOT
-#    {
-#      Xor reg reg "0xFFFFFFFFFFFFFFFFULL"
-#    };
-#'''
-#}};