X86: Actually set the flags on a rotate left instruction.

This commit is contained in:
Gabe Black 2009-08-05 02:58:20 -07:00
parent c087b60af3
commit 99adfd9dae

View file

@ -56,13 +56,13 @@
microcode = ''' microcode = '''
def macroop ROL_R_I def macroop ROL_R_I
{ {
roli reg, reg, imm roli reg, reg, imm, flags=(OF,CF)
}; };
def macroop ROL_M_I def macroop ROL_M_I
{ {
ldst t1, seg, sib, disp ldst t1, seg, sib, disp
roli t1, t1, imm roli t1, t1, imm, flags=(OF,CF)
st t1, seg, sib, disp st t1, seg, sib, disp
}; };
@ -70,19 +70,19 @@ def macroop ROL_P_I
{ {
rdip t7 rdip t7
ldst t1, seg, riprel, disp ldst t1, seg, riprel, disp
roli t1, t1, imm roli t1, t1, imm, flags=(OF,CF)
st t1, seg, riprel, disp st t1, seg, riprel, disp
}; };
def macroop ROL_1_R def macroop ROL_1_R
{ {
roli reg, reg, 1 roli reg, reg, 1, flags=(OF,CF)
}; };
def macroop ROL_1_M def macroop ROL_1_M
{ {
ldst t1, seg, sib, disp ldst t1, seg, sib, disp
roli t1, t1, 1 roli t1, t1, 1, flags=(OF,CF)
st t1, seg, sib, disp st t1, seg, sib, disp
}; };
@ -90,19 +90,19 @@ def macroop ROL_1_P
{ {
rdip t7 rdip t7
ldst t1, seg, riprel, disp ldst t1, seg, riprel, disp
roli t1, t1, 1 roli t1, t1, 1, flags=(OF,CF)
st t1, seg, riprel, disp st t1, seg, riprel, disp
}; };
def macroop ROL_R_R def macroop ROL_R_R
{ {
rol reg, reg, regm rol reg, reg, regm, flags=(OF,CF)
}; };
def macroop ROL_M_R def macroop ROL_M_R
{ {
ldst t1, seg, sib, disp ldst t1, seg, sib, disp
rol t1, t1, reg rol t1, t1, reg, flags=(OF,CF)
st t1, seg, sib, disp st t1, seg, sib, disp
}; };
@ -110,7 +110,7 @@ def macroop ROL_P_R
{ {
rdip t7 rdip t7
ldst t1, seg, riprel, disp ldst t1, seg, riprel, disp
rol t1, t1, reg rol t1, t1, reg, flags=(OF,CF)
st t1, seg, riprel, disp st t1, seg, riprel, disp
}; };