Lines Matching refs:EFLAGS
44 // sub / add which can clobber EFLAGS.
45 let Defs = [ESP, EFLAGS], Uses = [ESP] in {
63 // sub / add which can clobber EFLAGS.
64 let Defs = [RSP, EFLAGS], Uses = [RSP] in {
79 let usesCustomInserter = 1, Defs = [EFLAGS] in {
89 (implicit EFLAGS)]>;
93 let Defs = [EFLAGS] in
100 (implicit EFLAGS)]>;
108 let Defs = [EAX, ESP, EFLAGS], Uses = [ESP] in
115 let Defs = [RAX, RSP, EFLAGS], Uses = [RSP] in
131 let Defs = [EAX, ESP, EFLAGS], Uses = [ESP] in
137 let Defs = [RAX, RSP, EFLAGS], Uses = [RSP] in
261 let Defs = [EFLAGS], isReMaterializable = 1, isAsCheapAsAMove = 1,
278 let Defs = [EFLAGS], isReMaterializable = 1, isPseudo = 1 in {
318 let Uses = [EFLAGS], Defs = [EFLAGS], isPseudo = 1, SchedRW = [WriteALU] in {
323 [(set GR8:$dst, (X86setcc_c X86_COND_B, EFLAGS))]>;
325 [(set GR16:$dst, (X86setcc_c X86_COND_B, EFLAGS))]>;
327 [(set GR32:$dst, (X86setcc_c X86_COND_B, EFLAGS))]>;
329 [(set GR64:$dst, (X86setcc_c X86_COND_B, EFLAGS))]>;
333 def : Pat<(i16 (anyext (i8 (X86setcc_c X86_COND_B, EFLAGS)))),
335 def : Pat<(i32 (anyext (i8 (X86setcc_c X86_COND_B, EFLAGS)))),
337 def : Pat<(i64 (anyext (i8 (X86setcc_c X86_COND_B, EFLAGS)))),
340 def : Pat<(i16 (sext (i8 (X86setcc_c X86_COND_B, EFLAGS)))),
342 def : Pat<(i32 (sext (i8 (X86setcc_c X86_COND_B, EFLAGS)))),
344 def : Pat<(i64 (sext (i8 (X86setcc_c X86_COND_B, EFLAGS)))),
351 def : Pat<(and (i8 (X86setcc_c X86_COND_B, EFLAGS)), 1),
355 def : Pat<(add (and (i8 (X86setcc_c X86_COND_B, EFLAGS)), 1), GR8:$op),
357 def : Pat<(add (and (i32 (X86setcc_c X86_COND_B, EFLAGS)), 1), GR32:$op),
359 def : Pat<(add (and (i64 (X86setcc_c X86_COND_B, EFLAGS)), 1), GR64:$op),
363 def : Pat<(sub GR8:$op, (and (i8 (X86setcc_c X86_COND_B, EFLAGS)), 1)),
365 def : Pat<(sub GR32:$op, (and (i32 (X86setcc_c X86_COND_B, EFLAGS)), 1)),
367 def : Pat<(sub GR64:$op, (and (i64 (X86setcc_c X86_COND_B, EFLAGS)), 1)),
371 def : Pat<(sub GR8:$op, (i8 (X86setcc_c X86_COND_B, EFLAGS))),
373 def : Pat<(sub GR32:$op, (i32 (X86setcc_c X86_COND_B, EFLAGS))),
375 def : Pat<(sub GR64:$op, (i64 (X86setcc_c X86_COND_B, EFLAGS))),
458 XMM8, XMM9, XMM10, XMM11, XMM12, XMM13, XMM14, XMM15, EFLAGS],
478 XMM8, XMM9, XMM10, XMM11, XMM12, XMM13, XMM14, XMM15, EFLAGS],
494 let Defs = [EAX, ECX, EFLAGS],
507 let Defs = [RAX, EFLAGS],
526 EFLAGS)))]>;
529 let usesCustomInserter = 1, Uses = [EFLAGS] in {
541 // fcmov doesn't handle all possible EFLAGS, provide a fallback if there is no
567 } // usesCustomInserter = 1, Uses = [EFLAGS]
578 let isCodeGenOnly = 1, Defs = [EFLAGS] in
595 let Defs = [EFLAGS], mayLoad = 1, mayStore = 1, isCodeGenOnly = 1,
603 [(set EFLAGS, (Op addr:$dst, GR8:$src2))],
611 [(set EFLAGS, (Op addr:$dst, GR16:$src2))],
619 [(set EFLAGS, (Op addr:$dst, GR32:$src2))],
627 [(set EFLAGS, (Op addr:$dst, GR64:$src2))],
635 [(set EFLAGS, (Op addr:$dst, (i8 imm:$src2)))],
643 [(set EFLAGS, (Op addr:$dst, (i16 imm:$src2)))],
651 [(set EFLAGS, (Op addr:$dst, (i32 imm:$src2)))],
659 [(set EFLAGS, (Op addr:$dst, i64immSExt32:$src2))],
667 [(set EFLAGS, (Op addr:$dst, i16immSExt8:$src2))],
675 [(set EFLAGS, (Op addr:$dst, i32immSExt8:$src2))],
683 [(set EFLAGS, (Op addr:$dst, i64immSExt8:$src2))],
698 let Defs = [EFLAGS], mayLoad = 1, mayStore = 1, isCodeGenOnly = 1,
702 [(set EFLAGS, (X86lock_add addr:$dst, (i8 Increment)))],
706 [(set EFLAGS, (X86lock_add addr:$dst, (i16 Increment)))],
710 [(set EFLAGS, (X86lock_add addr:$dst, (i32 Increment)))],
714 [(set EFLAGS, (X86lock_add addr:$dst, (i64 Increment)))],
737 let Defs = [AL, EFLAGS], Uses = [AL] in
741 let Defs = [AX, EFLAGS], Uses = [AX] in
745 let Defs = [EAX, EFLAGS], Uses = [EAX] in
749 let Defs = [RAX, EFLAGS], Uses = [RAX] in
756 let Defs = [EAX, EDX, EFLAGS], Uses = [EAX, EBX, ECX, EDX],
782 let Defs = [EAX, EDX, EBX, EFLAGS], Uses = [EAX, ECX, EDX],
795 let Defs = [RAX, RDX, EFLAGS], Uses = [RAX, RBX, RCX, RDX],
803 let Defs = [RAX, RDX, RBX, EFLAGS], Uses = [RAX, RCX, RDX],
823 let Constraints = "$val = $dst", Defs = [EFLAGS], isCodeGenOnly = 1,
896 let Defs = [EFLAGS] in {
943 let Defs = [EFLAGS] in {
958 let Defs = [EFLAGS] in {
1214 def : Pat<(X86cmov (loadi16 addr:$src1), GR16:$src2, InvertedCond, EFLAGS),
1216 def : Pat<(X86cmov (loadi32 addr:$src1), GR32:$src2, InvertedCond, EFLAGS),
1218 def : Pat<(X86cmov (loadi64 addr:$src1), GR64:$src2, InvertedCond, EFLAGS),
1336 Constraints = "$src1 = $dst", Defs = [EFLAGS] in {
1715 def : Pat<(i16 (anyext (i8 (X86setcc_c X86_COND_B, EFLAGS)))),
1717 def : Pat<(i32 (anyext (i8 (X86setcc_c X86_COND_B, EFLAGS)))),
1719 def : Pat<(i32 (anyext (i16 (X86setcc_c X86_COND_B, EFLAGS)))),
1726 // EFLAGS-defining Patterns