Skip to content

Commit a25ede1

Browse files
committed
update _REV and tests
1 parent dd2c775 commit a25ede1

File tree

8 files changed

+2326
-2227
lines changed

8 files changed

+2326
-2227
lines changed

llvm/lib/Target/X86/X86InstrCMovSetCC.td

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -31,14 +31,15 @@ let SchedRW = [WriteCMOV.Folded, WriteCMOV.ReadAfterFold] in
3131
multiclass Cfcmov<X86TypeInfo t> {
3232
let isCommutable = 1, SchedRW = [WriteCMOV] in {
3333
let Predicates = [HasCMOV, HasCF, In64BitMode] in {
34-
def rr : ITy<0x40, MRMSrcRegCC, t, (outs t.RegClass:$dst),
34+
def rr : ITy<0x40, MRMDestRegCC, t, (outs t.RegClass:$dst),
3535
(ins t.RegClass:$src1, ccode:$cond),
3636
"cfcmov${cond}", unaryop_ndd_args,
37-
[(set t.RegClass:$dst, (X86cmov 0,
38-
t.RegClass:$src1, timm:$cond, EFLAGS))]>, UseEFLAGS, EVEX, T_MAP4;
39-
def rr_REV : ITy<0x40, MRMDestRegCC, t, (outs t.RegClass:$dst),
37+
[(set t.RegClass:$dst,
38+
(X86cmov 0, t.RegClass:$src1, timm:$cond, EFLAGS))]>, UseEFLAGS, NF;
39+
def rr_REV : ITy<0x40, MRMSrcRegCC, t, (outs t.RegClass:$dst),
4040
(ins t.RegClass:$src1, ccode:$cond),
41-
"cfcmov${cond}", unaryop_ndd_args, []>, UseEFLAGS, NF;
41+
"cfcmov${cond}", unaryop_ndd_args,
42+
[]>, UseEFLAGS, EVEX, T_MAP4;
4243
}
4344
let Predicates = [HasCMOV, HasCF, HasNDD, In64BitMode] in
4445
def rr_ND : ITy<0x40, MRMSrcRegCC, t, (outs t.RegClass:$dst),

0 commit comments

Comments
 (0)