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

References

lib/Transforms/InstCombine/InstCombineSelect.cpp
  143     V = Cmp->getOperand(0);
  145     if (!match(V, m_And(m_Value(), m_Power2(AndRHS))))
  150                                   Pred, V, AndMask)) {
  177       V = Builder.CreateAnd(V, ConstantInt::get(SelType, AndMask));
  177       V = Builder.CreateAnd(V, ConstantInt::get(SelType, AndMask));
  185       return ExtraBitInTC ? Builder.CreateXor(V, C) : Builder.CreateOr(V, C);
  185       return ExtraBitInTC ? Builder.CreateXor(V, C) : Builder.CreateOr(V, C);
  192       return ExtraBitInTC ? Builder.CreateOr(V, C) : Builder.CreateXor(V, C);
  192       return ExtraBitInTC ? Builder.CreateOr(V, C) : Builder.CreateXor(V, C);
  209     V = Builder.CreateAnd(V, ConstantInt::get(V->getType(), AndMask));
  209     V = Builder.CreateAnd(V, ConstantInt::get(V->getType(), AndMask));
  209     V = Builder.CreateAnd(V, ConstantInt::get(V->getType(), AndMask));
  214     V = Builder.CreateZExtOrTrunc(V, SelType);
  214     V = Builder.CreateZExtOrTrunc(V, SelType);
  215     V = Builder.CreateShl(V, ValZeros - AndZeros);
  215     V = Builder.CreateShl(V, ValZeros - AndZeros);
  217     V = Builder.CreateLShr(V, AndZeros - ValZeros);
  217     V = Builder.CreateLShr(V, AndZeros - ValZeros);
  218     V = Builder.CreateZExtOrTrunc(V, SelType);
  218     V = Builder.CreateZExtOrTrunc(V, SelType);
  220     V = Builder.CreateZExtOrTrunc(V, SelType);
  220     V = Builder.CreateZExtOrTrunc(V, SelType);
  228     V = Builder.CreateXor(V, ValC);
  228     V = Builder.CreateXor(V, ValC);
  230   return V;