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
1155 let Defs = [ESP, EFLAGS], Uses = [ESP] in
1160 let Defs = [RSP, EFLAGS], Uses = [RSP] in
1166 let Defs = [ESP, EFLAGS], Uses = [ESP], mayLoad = 1, hasSideEffects=0,
1174 let Defs = [ESP], Uses = [ESP, EFLAGS], mayStore = 1, hasSideEffects=0,
1213 let Defs = [RSP, EFLAGS], Uses = [RSP], mayLoad = 1, hasSideEffects=0 in
1216 let Defs = [RSP], Uses = [RSP, EFLAGS], mayStore = 1, hasSideEffects=0 in
1248 let Defs = [EFLAGS] in {
1251 [(set GR16:$dst, EFLAGS, (X86bsf GR16:$src))],
1255 [(set GR16:$dst, EFLAGS, (X86bsf (loadi16 addr:$src)))],
1259 [(set GR32:$dst, EFLAGS, (X86bsf GR32:$src))],
1263 [(set GR32:$dst, EFLAGS, (X86bsf (loadi32 addr:$src)))],
1267 [(set GR64:$dst, EFLAGS, (X86bsf GR64:$src))],
1271 [(set GR64:$dst, EFLAGS, (X86bsf (loadi64 addr:$src)))],
1276 [(set GR16:$dst, EFLAGS, (X86bsr GR16:$src))],
1280 [(set GR16:$dst, EFLAGS, (X86bsr (loadi16 addr:$src)))],
1284 [(set GR32:$dst, EFLAGS, (X86bsr GR32:$src))],
1288 [(set GR32:$dst, EFLAGS, (X86bsr (loadi32 addr:$src)))],
1292 [(set GR64:$dst, EFLAGS, (X86bsr GR64:$src))],
1296 [(set GR64:$dst, EFLAGS, (X86bsr (loadi64 addr:$src)))],
1298 } // Defs = [EFLAGS]
1301 // These uses the DF flag in the EFLAGS register to inc or dec EDI and ESI
1302 let Defs = [EDI,ESI], Uses = [EDI,ESI,EFLAGS] in {
1313 // These uses the DF flag in the EFLAGS register to inc or dec EDI and ESI
1314 let Defs = [EDI], Uses = [AL,EDI,EFLAGS] in
1317 let Defs = [EDI], Uses = [AX,EDI,EFLAGS] in
1320 let Defs = [EDI], Uses = [EAX,EDI,EFLAGS] in
1323 let Defs = [RDI], Uses = [RAX,RDI,EFLAGS] in
1327 // These uses the DF flag in the EFLAGS register to inc or dec EDI and ESI
1328 let Defs = [EDI,EFLAGS], Uses = [AL,EDI,EFLAGS] in
1331 let Defs = [EDI,EFLAGS], Uses = [AX,EDI,EFLAGS] in
1334 let Defs = [EDI,EFLAGS], Uses = [EAX,EDI,EFLAGS] in
1337 let Defs = [EDI,EFLAGS], Uses = [RAX,EDI,EFLAGS] in
1341 // These uses the DF flag in the EFLAGS register to inc or dec EDI and ESI
1342 let Defs = [EDI,ESI,EFLAGS], Uses = [EDI,ESI,EFLAGS] in {
1583 let Defs = [EFLAGS], Uses = [AH] in
1585 [(set EFLAGS, (X86sahf AH))], IIC_AHF>,
1587 let Defs = [AH], Uses = [EFLAGS], hasSideEffects = 0 in
1596 let Defs = [EFLAGS] in {
1600 [(set EFLAGS, (X86bt GR16:$src1, GR16:$src2))], IIC_BT_RR>,
1604 [(set EFLAGS, (X86bt GR32:$src1, GR32:$src2))], IIC_BT_RR>,
1608 [(set EFLAGS, (X86bt GR64:$src1, GR64:$src2))], IIC_BT_RR>, TB;
1620 // (implicit EFLAGS)]
1626 // (implicit EFLAGS)]
1632 // (implicit EFLAGS)]
1640 [(set EFLAGS, (X86bt GR16:$src1, i16immSExt8:$src2))],
1644 [(set EFLAGS, (X86bt GR32:$src1, i32immSExt8:$src2))],
1648 [(set EFLAGS, (X86bt GR64:$src1, i64immSExt8:$src2))],
1658 [(set EFLAGS, (X86bt (loadi16 addr:$src1), i16immSExt8:$src2))
1662 [(set EFLAGS, (X86bt (loadi32 addr:$src1), i32immSExt8:$src2))
1666 [(set EFLAGS, (X86bt (loadi64 addr:$src1),
1803 } // Defs = [EFLAGS]
1940 let Defs = [EAX, EDX, EFLAGS], Uses = [EAX, EBX, ECX, EDX] in
1944 let Defs = [RAX, RDX, EFLAGS], Uses = [RAX, RBX, RCX, RDX] in
1962 // These uses the DF flag in the EFLAGS register to inc or dec ECX
1963 let Defs = [ECX], Uses = [ECX,EFLAGS] in {
1973 // These uses the DF flag in the EFLAGS register to inc or dec EDI and ESI
1974 let Defs = [AL,ESI], Uses = [ESI,EFLAGS] in
1977 let Defs = [AX,ESI], Uses = [ESI,EFLAGS] in
1980 let Defs = [EAX,ESI], Uses = [ESI,EFLAGS] in
1983 let Defs = [RAX,ESI], Uses = [ESI,EFLAGS] in
1989 // These uses the DF flag in the EFLAGS register to inc or dec EDI and ESI
1990 let Defs = [ESI], Uses = [DX,ESI,EFLAGS] in {
1999 // These uses the DF flag in the EFLAGS register to inc or dec EDI and ESI
2000 let Defs = [EDI], Uses = [DX,EDI,EFLAGS] in {
2030 let Uses = [AL,EFLAGS], Defs = [AX,EFLAGS], hasSideEffects = 0 in
2035 let Uses = [AX], Defs = [AX,EFLAGS], hasSideEffects = 0 in
2040 let Uses = [AL], Defs = [AX,EFLAGS], hasSideEffects = 0 in
2045 let Uses = [AL,EFLAGS], Defs = [AX,EFLAGS], hasSideEffects = 0 in
2050 let Uses = [AL,EFLAGS], Defs = [AL,EFLAGS], hasSideEffects = 0 in
2055 let Uses = [AL,EFLAGS], Defs = [AL,EFLAGS], hasSideEffects = 0 in
2115 let Predicates = [HasRDRAND], Defs = [EFLAGS] in {
2118 [(set GR16:$dst, EFLAGS, (X86rdrand))]>, OpSize16, TB;
2121 [(set GR32:$dst, EFLAGS, (X86rdrand))]>, OpSize32, TB;
2124 [(set GR64:$dst, EFLAGS, (X86rdrand))]>, TB;
2130 let Predicates = [HasRDSEED], Defs = [EFLAGS] in {
2133 [(set GR16:$dst, EFLAGS, (X86rdseed))]>, OpSize16, TB;
2136 [(set GR32:$dst, EFLAGS, (X86rdseed))]>, OpSize32, TB;
2139 [(set GR64:$dst, EFLAGS, (X86rdseed))]>, TB;
2145 let Predicates = [HasLZCNT], Defs = [EFLAGS] in {
2148 [(set GR16:$dst, (ctlz GR16:$src)), (implicit EFLAGS)]>, XS,
2153 (implicit EFLAGS)]>, XS, OpSize16;
2157 [(set GR32:$dst, (ctlz GR32:$src)), (implicit EFLAGS)]>, XS,
2162 (implicit EFLAGS)]>, XS, OpSize32;
2166 [(set GR64:$dst, (ctlz GR64:$src)), (implicit EFLAGS)]>,
2171 (implicit EFLAGS)]>, XS;
2177 let Predicates = [HasBMI], Defs = [EFLAGS] in {
2180 [(set GR16:$dst, (cttz GR16:$src)), (implicit EFLAGS)]>, XS,
2185 (implicit EFLAGS)]>, XS, OpSize16;
2189 [(set GR32:$dst, (cttz GR32:$src)), (implicit EFLAGS)]>, XS,
2194 (implicit EFLAGS)]>, XS, OpSize32;
2198 [(set GR64:$dst, (cttz GR64:$src)), (implicit EFLAGS)]>,
2203 (implicit EFLAGS)]>, XS;
2219 let Predicates = [HasBMI], Defs = [EFLAGS] in {
2256 [(set RC:$dst, (Int RC:$src1, RC:$src2)), (implicit EFLAGS)]>,
2261 (implicit EFLAGS)]>, T8PS, VEX_4VOp3;
2264 let Predicates = [HasBMI], Defs = [EFLAGS] in {
2271 let Predicates = [HasBMI2], Defs = [EFLAGS] in {
2348 let Predicates = [HasTBM], Defs = [EFLAGS] in {
2405 } // HasTBM, EFLAGS