X86: Make rdcr use merge and the mov to control register instructions use the right operand size.

This commit is contained in:
Gabe Black 2009-02-25 10:21:08 -08:00
parent 9842f1ca9d
commit 68300cfb8c
2 changed files with 3 additions and 1 deletions

View file

@ -192,10 +192,12 @@ def macroop MOVZX_W_R_P {
};
def macroop MOV_C_R {
.adjust_env maxOsz
wrcr reg, regm
};
def macroop MOV_R_C {
.adjust_env maxOsz
rdcr reg, regm
};

View file

@ -967,7 +967,7 @@ let {{
if (src1 == 1 || (src1 > 4 && src1 < 8) || (src1 > 8)) {
fault = new InvalidOpcode();
} else {
DestReg = ControlSrc1;
DestReg = merge(DestReg, ControlSrc1, dataSize);
}
'''