x86: Use the new CondInst format for moves to/from control registers.

The condition is whether the control register index is valid.

Change-Id: I8a225fcfd4955032b5bbf7d3392ee5bcc7d6bc64
Reviewed-on: https://gem5-review.googlesource.com/4581
Reviewed-by: Michael LeBeane <Michael.Lebeane@amd.com>
Maintainer: Gabe Black <gabeblack@google.com>
This commit is contained in:
Gabe Black
2017-08-24 17:06:36 -07:00
parent 544eba88b9
commit 4e939a7b4d

View File

@@ -360,9 +360,11 @@
0x04: decode LEGACY_DECODEVAL {
// no prefix
0x0: decode OPCODE_OP_BOTTOM3 {
0x0: MOV(Rd,Cd);
0x0: CondInst::MOV(
{{isValidMiscReg(MISCREG_CR(MODRM_RM))}},Rd,Cd);
0x1: MOV(Rd,Dd);
0x2: MOV(Cd,Rd);
0x2: CondInst::MOV(
{{isValidMiscReg(MISCREG_CR(MODRM_REG))}},Cd,Rd);
0x3: MOV(Dd,Rd);
default: UD2();
}