Lines Matching defs:ScalarSrc
1635 Value *ScalarSrc;
1637 match(ScalarOp, m_OneUse(m_BitCast(m_Value(ScalarSrc)))) &&
1638 (ScalarSrc->getType()->isIntegerTy() ||
1639 ScalarSrc->getType()->isFloatingPointTy())) {
1640 // inselt undef, (bitcast ScalarSrc), IdxOp -->
1641 // bitcast (inselt undef, ScalarSrc, IdxOp)
1642 Type *ScalarTy = ScalarSrc->getType();
1646 Value *NewInsElt = Builder.CreateInsertElement(NewUndef, ScalarSrc, IdxOp);
1654 match(ScalarOp, m_BitCast(m_Value(ScalarSrc))) &&
1656 VecSrc->getType()->isVectorTy() && !ScalarSrc->getType()->isVectorTy() &&
1658 ScalarSrc->getType()) {
1659 // inselt (bitcast VecSrc), (bitcast ScalarSrc), IdxOp -->
1660 // bitcast (inselt VecSrc, ScalarSrc, IdxOp)
1661 Value *NewInsElt = Builder.CreateInsertElement(VecSrc, ScalarSrc, IdxOp);