X86: Make the TEST instruction set all the flags it's supposed to.
authorGabe Black <gblack@eecs.umich.edu>
Sun, 19 Apr 2009 11:14:16 +0000 (04:14 -0700)
committerGabe Black <gblack@eecs.umich.edu>
Sun, 19 Apr 2009 11:14:16 +0000 (04:14 -0700)
src/arch/x86/isa/insts/general_purpose/compare_and_test/test.py

index 2b4bf7b9ad3ad0bab0643d9a169ad41bbc32e960..0423fb5dd6728c59185e5a6a6b5043c7b5f6e9e7 100644 (file)
@@ -57,26 +57,26 @@ microcode = '''
 def macroop TEST_M_R
 {
     ld t1, seg, sib, disp
-    and t0, t1, reg, flags=(SF, ZF, PF)
+    and t0, t1, reg, flags=(OF, SF, ZF, PF, CF)
 };
 
 def macroop TEST_P_R
 {
     rdip t7
     ld t1, seg, riprel, disp
-    and t0, t1, reg, flags=(SF, ZF, PF)
+    and t0, t1, reg, flags=(OF, SF, ZF, PF, CF)
 };
 
 def macroop TEST_R_R
 {
-    and t0, reg, regm, flags=(SF, ZF, PF)
+    and t0, reg, regm, flags=(OF, SF, ZF, PF, CF)
 };
 
 def macroop TEST_M_I
 {
     ld t1, seg, sib, disp
     limm t2, imm
-    and t0, t1, t2, flags=(SF, ZF, PF)
+    and t0, t1, t2, flags=(OF, SF, ZF, PF, CF)
 };
 
 def macroop TEST_P_I
@@ -84,12 +84,12 @@ def macroop TEST_P_I
     rdip t7
     ld t1, seg, riprel, disp
     limm t2, imm
-    and t0, t1, t2, flags=(SF, ZF, PF)
+    and t0, t1, t2, flags=(OF, SF, ZF, PF, CF)
 };
 
 def macroop TEST_R_I
 {
     limm t1, imm
-    and t0, reg, t1, flags=(SF, ZF, PF)
+    and t0, reg, t1, flags=(OF, SF, ZF, PF, CF)
 };
 '''