Lines Matching refs:EFLAGS
33 // Unary and binary operator instructions that set EFLAGS as a side-effect.
43 // SDTBinaryArithWithFlagsInOut - RES1, EFLAGS = op LHS, RHS, EFLAGS
1096 let Defs = [ESP, EFLAGS], Uses = [ESP], mayLoad = 1, hasSideEffects=0,
1104 let Defs = [ESP], Uses = [ESP, EFLAGS], mayStore = 1, hasSideEffects=0,
1142 let Defs = [RSP, EFLAGS], Uses = [RSP], mayLoad = 1, hasSideEffects=0 in
1145 let Defs = [RSP], Uses = [RSP, EFLAGS], mayStore = 1, hasSideEffects=0 in
1177 let Defs = [EFLAGS] in {
1180 [(set GR16:$dst, EFLAGS, (X86bsf GR16:$src))],
1184 [(set GR16:$dst, EFLAGS, (X86bsf (loadi16 addr:$src)))],
1188 [(set GR32:$dst, EFLAGS, (X86bsf GR32:$src))],
1192 [(set GR32:$dst, EFLAGS, (X86bsf (loadi32 addr:$src)))],
1196 [(set GR64:$dst, EFLAGS, (X86bsf GR64:$src))],
1200 [(set GR64:$dst, EFLAGS, (X86bsf (loadi64 addr:$src)))],
1205 [(set GR16:$dst, EFLAGS, (X86bsr GR16:$src))],
1209 [(set GR16:$dst, EFLAGS, (X86bsr (loadi16 addr:$src)))],
1213 [(set GR32:$dst, EFLAGS, (X86bsr GR32:$src))],
1217 [(set GR32:$dst, EFLAGS, (X86bsr (loadi32 addr:$src)))],
1221 [(set GR64:$dst, EFLAGS, (X86bsr GR64:$src))],
1225 [(set GR64:$dst, EFLAGS, (X86bsr (loadi64 addr:$src)))],
1227 } // Defs = [EFLAGS]
1230 // These uses the DF flag in the EFLAGS register to inc or dec EDI and ESI
1231 let Defs = [EDI,ESI], Uses = [EDI,ESI,EFLAGS] in {
1242 // These uses the DF flag in the EFLAGS register to inc or dec EDI and ESI
1243 let Defs = [EDI], Uses = [AL,EDI,EFLAGS] in
1246 let Defs = [EDI], Uses = [AX,EDI,EFLAGS] in
1249 let Defs = [EDI], Uses = [EAX,EDI,EFLAGS] in
1252 let Defs = [RCX,RDI], Uses = [RAX,RCX,RDI,EFLAGS] in
1256 // These uses the DF flag in the EFLAGS register to inc or dec EDI and ESI
1257 let Defs = [EDI,EFLAGS], Uses = [AL,EDI,EFLAGS] in
1260 let Defs = [EDI,EFLAGS], Uses = [AX,EDI,EFLAGS] in
1263 let Defs = [EDI,EFLAGS], Uses = [EAX,EDI,EFLAGS] in
1266 let Defs = [EDI,EFLAGS], Uses = [RAX,EDI,EFLAGS] in
1270 // These uses the DF flag in the EFLAGS register to inc or dec EDI and ESI
1271 let Defs = [EDI,ESI,EFLAGS], Uses = [EDI,ESI,EFLAGS] in {
1512 let Defs = [EFLAGS], Uses = [AH] in
1514 [(set EFLAGS, (X86sahf AH))], IIC_AHF>,
1516 let Defs = [AH], Uses = [EFLAGS], hasSideEffects = 0 in
1525 let Defs = [EFLAGS] in {
1529 [(set EFLAGS, (X86bt GR16:$src1, GR16:$src2))], IIC_BT_RR>,
1533 [(set EFLAGS, (X86bt GR32:$src1, GR32:$src2))], IIC_BT_RR>,
1537 [(set EFLAGS, (X86bt GR64:$src1, GR64:$src2))], IIC_BT_RR>, TB;
1549 // (implicit EFLAGS)]
1555 // (implicit EFLAGS)]
1561 // (implicit EFLAGS)]
1569 [(set EFLAGS, (X86bt GR16:$src1, i16immSExt8:$src2))],
1573 [(set EFLAGS, (X86bt GR32:$src1, i32immSExt8:$src2))],
1577 [(set EFLAGS, (X86bt GR64:$src1, i64immSExt8:$src2))],
1587 [(set EFLAGS, (X86bt (loadi16 addr:$src1), i16immSExt8:$src2))
1591 [(set EFLAGS, (X86bt (loadi32 addr:$src1), i32immSExt8:$src2))
1595 [(set EFLAGS, (X86bt (loadi64 addr:$src1),
1732 } // Defs = [EFLAGS]
1869 let Defs = [EAX, EDX, EFLAGS], Uses = [EAX, EBX, ECX, EDX] in
1873 let Defs = [RAX, RDX, EFLAGS], Uses = [RAX, RBX, RCX, RDX] in
1891 // These uses the DF flag in the EFLAGS register to inc or dec ECX
1892 let Defs = [ECX], Uses = [ECX,EFLAGS] in {
1902 // These uses the DF flag in the EFLAGS register to inc or dec EDI and ESI
1903 let Defs = [AL,ESI], Uses = [ESI,EFLAGS] in
1906 let Defs = [AX,ESI], Uses = [ESI,EFLAGS] in
1909 let Defs = [EAX,ESI], Uses = [ESI,EFLAGS] in
1912 let Defs = [RAX,ESI], Uses = [ESI,EFLAGS] in
1918 // These uses the DF flag in the EFLAGS register to inc or dec EDI and ESI
1919 let Defs = [ESI], Uses = [DX,ESI,EFLAGS] in {
1928 // These uses the DF flag in the EFLAGS register to inc or dec EDI and ESI
1929 let Defs = [EDI], Uses = [DX,EDI,EFLAGS] in {
1958 // sets AL, AH and CF and AF of EFLAGS and uses AL and AF of EFLAGS
1963 // sets AL, AH and EFLAGS and uses AL and AH
1968 // sets AL, AH and EFLAGS and uses AL
1973 // sets AL, AH and CF and AF of EFLAGS and uses AL and AF of EFLAGS
1978 // sets AL, CF and AF of EFLAGS and uses AL, CF and AF of EFLAGS
1983 // sets AL, CF and AF of EFLAGS and uses AL, CF and AF of EFLAGS
2043 let Predicates = [HasRDRAND], Defs = [EFLAGS] in {
2046 [(set GR16:$dst, EFLAGS, (X86rdrand))]>, OpSize16, TB;
2049 [(set GR32:$dst, EFLAGS, (X86rdrand))]>, OpSize32, TB;
2052 [(set GR64:$dst, EFLAGS, (X86rdrand))]>, TB;
2058 let Predicates = [HasRDSEED], Defs = [EFLAGS] in {
2061 [(set GR16:$dst, EFLAGS, (X86rdseed))]>, OpSize16, TB;
2064 [(set GR32:$dst, EFLAGS, (X86rdseed))]>, OpSize32, TB;
2067 [(set GR64:$dst, EFLAGS, (X86rdseed))]>, TB;
2073 let Predicates = [HasLZCNT], Defs = [EFLAGS] in {
2076 [(set GR16:$dst, (ctlz GR16:$src)), (implicit EFLAGS)]>, XS,
2081 (implicit EFLAGS)]>, XS, OpSize16;
2085 [(set GR32:$dst, (ctlz GR32:$src)), (implicit EFLAGS)]>, XS,
2090 (implicit EFLAGS)]>, XS, OpSize32;
2094 [(set GR64:$dst, (ctlz GR64:$src)), (implicit EFLAGS)]>,
2099 (implicit EFLAGS)]>, XS;
2145 let Predicates = [HasBMI], Defs = [EFLAGS] in {
2148 [(set GR16:$dst, (cttz GR16:$src)), (implicit EFLAGS)]>, XS,
2153 (implicit EFLAGS)]>, XS, OpSize16;
2157 [(set GR32:$dst, (cttz GR32:$src)), (implicit EFLAGS)]>, XS,
2162 (implicit EFLAGS)]>, XS, OpSize32;
2166 [(set GR64:$dst, (cttz GR64:$src)), (implicit EFLAGS)]>,
2171 (implicit EFLAGS)]>, XS;
2187 let Predicates = [HasBMI], Defs = [EFLAGS] in {
2264 [(set RC:$dst, (Int RC:$src1, RC:$src2)), (implicit EFLAGS)]>,
2269 (implicit EFLAGS)]>, T8PS, VEX_4VOp3;
2272 let Predicates = [HasBMI], Defs = [EFLAGS] in {
2279 let Predicates = [HasBMI2], Defs = [EFLAGS] in {
2356 let Predicates = [HasTBM], Defs = [EFLAGS] in {
2413 } // HasTBM, EFLAGS