Skip to content

Commit 50a3717

Browse files
authored
[X86] Fix instr desc of CFCMOV's 'mr' variants
- With the memory operand as the destination, 'mr' variants of CFCMOV works like STORE and their memory operands should be input operands instead of output ones. Reviewers: XinWang10, arsenm Pull Request: #88970
1 parent 988ffd0 commit 50a3717

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

llvm/lib/Target/X86/X86InstrCMovSetCC.td

+2-2
Original file line numberDiff line numberDiff line change
@@ -58,8 +58,8 @@ let SchedRW = [WriteCMOV.Folded, WriteCMOV.ReadAfterFold] in {
5858
}
5959
let SchedRW = [WriteCMOV, ReadDefault, ReadDefault, ReadDefault, ReadDefault, ReadDefault],
6060
Predicates = [HasCMOV, HasCF, In64BitMode], mayStore = 1 in
61-
def mr : ITy<0x40, MRMDestMemCC, t, (outs t.MemOperand:$dst),
62-
(ins t.RegClass:$src1, ccode:$cond),
61+
def mr : ITy<0x40, MRMDestMemCC, t, (outs),
62+
(ins t.MemOperand:$dst, t.RegClass:$src1, ccode:$cond),
6363
"cfcmov${cond}", unaryop_ndd_args, []>, UseEFLAGS, NF;
6464
}
6565

0 commit comments

Comments
 (0)