reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
683 switch (Op0BO->getOpcode()) { 691 if (isLeftShift && Op0BO->getOperand(1)->hasOneUse() && 692 match(Op0BO->getOperand(1), m_Shr(m_Value(V1), 695 Builder.CreateShl(Op0BO->getOperand(0), Op1, Op0BO->getName()); 695 Builder.CreateShl(Op0BO->getOperand(0), Op1, Op0BO->getName()); 697 Value *X = Builder.CreateBinOp(Op0BO->getOpcode(), YS, V1, 698 Op0BO->getOperand(1)->getName()); 709 Value *Op0BOOp1 = Op0BO->getOperand(1); 715 Builder.CreateShl(Op0BO->getOperand(0), Op1, Op0BO->getName()); 715 Builder.CreateShl(Op0BO->getOperand(0), Op1, Op0BO->getName()); 719 return BinaryOperator::Create(Op0BO->getOpcode(), YS, XM); 726 if (isLeftShift && Op0BO->getOperand(0)->hasOneUse() && 727 match(Op0BO->getOperand(0), m_Shr(m_Value(V1), 730 Builder.CreateShl(Op0BO->getOperand(1), Op1, Op0BO->getName()); 730 Builder.CreateShl(Op0BO->getOperand(1), Op1, Op0BO->getName()); 732 Value *X = Builder.CreateBinOp(Op0BO->getOpcode(), V1, YS, 733 Op0BO->getOperand(0)->getName()); 744 if (isLeftShift && Op0BO->getOperand(0)->hasOneUse() && 745 match(Op0BO->getOperand(0), 749 Builder.CreateShl(Op0BO->getOperand(1), Op1, Op0BO->getName()); 749 Builder.CreateShl(Op0BO->getOperand(1), Op1, Op0BO->getName()); 754 return BinaryOperator::Create(Op0BO->getOpcode(), XM, YS); 765 if (match(Op0BO->getOperand(1), m_APInt(Op0C))) { 766 if (canShiftBinOpWithConstantRHS(I, Op0BO)) { 768 cast<Constant>(Op0BO->getOperand(1)), Op1); 771 Builder.CreateBinOp(I.getOpcode(), Op0BO->getOperand(0), Op1); 772 NewShift->takeName(Op0BO); 774 return BinaryOperator::Create(Op0BO->getOpcode(), NewShift, 782 if (isLeftShift && Op0BO->getOpcode() == Instruction::Sub && 783 match(Op0BO->getOperand(0), m_APInt(Op0C))) { 785 cast<Constant>(Op0BO->getOperand(0)), Op1); 787 Value *NewShift = Builder.CreateShl(Op0BO->getOperand(1), Op1); 788 NewShift->takeName(Op0BO);