reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

lib/Transforms/InstCombine/InstCombineSelect.cpp
  611     V = CmpLHS;
  623     if (!match(CmpLHS, m_OneUse(m_Trunc(m_Value(V)))))
  648                        V->getType()->getScalarSizeInBits();
  658     APInt C1 = APInt::getOneBitSet(V->getType()->getScalarSizeInBits(), C1Log);
  659     V = Builder.CreateAnd(V, ConstantInt::get(V->getType(), C1));
  659     V = Builder.CreateAnd(V, ConstantInt::get(V->getType(), C1));
  659     V = Builder.CreateAnd(V, ConstantInt::get(V->getType(), C1));
  663     V = Builder.CreateZExtOrTrunc(V, Y->getType());
  663     V = Builder.CreateZExtOrTrunc(V, Y->getType());
  664     V = Builder.CreateShl(V, C2Log - C1Log);
  664     V = Builder.CreateShl(V, C2Log - C1Log);
  666     V = Builder.CreateLShr(V, C1Log - C2Log);
  666     V = Builder.CreateLShr(V, C1Log - C2Log);
  667     V = Builder.CreateZExtOrTrunc(V, Y->getType());
  667     V = Builder.CreateZExtOrTrunc(V, Y->getType());
  669     V = Builder.CreateZExtOrTrunc(V, Y->getType());
  669     V = Builder.CreateZExtOrTrunc(V, Y->getType());
  672     V = Builder.CreateXor(V, *C2);
  672     V = Builder.CreateXor(V, *C2);
  674   return Builder.CreateOr(V, Y);