• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /freebsd-13-stable/contrib/llvm-project/llvm/lib/Transforms/Scalar/

Lines Matching refs:ICmpZero

1132     ICmpZero ///< An equality icmp with both operands folded into one.
1392 // If ICmpZero formula ends with not 0, it could not be replaced by
1402 if (LU.Kind == LSRUse::ICmpZero && !F.hasZeroEnd() &&
1409 if (LU.Kind != LSRUse::ICmpZero)
1586 case ICmpZero: OS << "ICmpZero"; break;
1629 case LSRUse::ICmpZero:
1648 // ICmpZero BaseReg + BaseOffset => ICmp BaseReg, -BaseOffset
1649 // ICmpZero -1*ScaleReg + BaseOffset => ICmp ScaleReg, BaseOffset
1658 // ICmpZero BaseReg + -1*ScaleReg => ICmp BaseReg, ScaleReg
1775 case LSRUse::ICmpZero:
1795 int64_t Scale = Kind == LSRUse::ICmpZero ? -1 : 1;
1829 int64_t Scale = Kind == LSRUse::ICmpZero ? -1 : 1;
2612 // Ignore ICmpZero uses because they may contain formulae generated by
2616 LU.Kind != LSRUse::ICmpZero &&
3295 Kind = LSRUse::ICmpZero;
3861 /// For ICmpZero, check to see if we can scale up the comparison. For example, x
3865 if (LU.Kind != LSRUse::ICmpZero) return;
3881 assert(!Base.BaseGV && "ICmpZero use is not legal!");
3985 // For an ICmpZero, negating a solitary base register won't lead to
3987 if (LU.Kind == LSRUse::ICmpZero &&
5126 if (LU.Kind == LSRUse::ICmpZero)
5230 if (LU.Kind == LSRUse::ICmpZero) {
5240 "The only scale supported by ICmpZero uses is -1!");
5285 if (LU.Kind == LSRUse::ICmpZero) {
5286 // The other interesting way of "folding" with an ICmpZero is to use a
5318 // An ICmpZero Formula represents an ICmp which we're handling as a
5321 if (LU.Kind == LSRUse::ICmpZero) {
5494 // Update the user. ICmpZero is handled specially here (for now) because
5499 if (LU.Kind == LSRUse::ICmpZero)