Lines Matching defs:Scalar
240 Value *Scalar;
243 if (!match(X, m_InsertElt(m_Value(Vec), m_Value(Scalar),
301 Type *SrcIntTy = IntegerType::getIntNTy(Scalar->getContext(), SrcWidth);
302 Scalar = Builder.CreateBitCast(Scalar, SrcIntTy);
309 Scalar = Builder.CreateLShr(Scalar, ShAmt);
313 Type *DestIntTy = IntegerType::getIntNTy(Scalar->getContext(), DestWidth);
314 return new BitCastInst(Builder.CreateTrunc(Scalar, DestIntTy), DestTy);
316 return new TruncInst(Scalar, DestTy);
1409 Value *Scalar = InsElt.getOperand(1);
1411 if (!match(Scalar, m_ExtractElt(m_Specific(X), m_SpecificInt(IdxC))))
1586 Value *Scalar = InsElt.getOperand(1);
1589 if (match(Vec, m_FPExt(m_Value(X))) && match(Scalar, m_FPExt(m_Value(Y))))
1591 else if (match(Vec, m_SExt(m_Value(X))) && match(Scalar, m_SExt(m_Value(Y))))
1593 else if (match(Vec, m_ZExt(m_Value(X))) && match(Scalar, m_ZExt(m_Value(Y))))
2708 // shuffle (insert ?, Scalar, IndexC), V1, Mask --> insert V1, Scalar, IndexC'
2709 auto isShufflingScalarIntoOp1 = [&](Value *&Scalar, ConstantInt *&IndexC) {
2711 if (!match(V0, m_InsertElt(m_Value(), m_Value(Scalar),
2745 Value *Scalar;
2747 if (isShufflingScalarIntoOp1(Scalar, IndexC))
2748 return InsertElementInst::Create(V1, Scalar, IndexC);
2755 if (isShufflingScalarIntoOp1(Scalar, IndexC))
2756 return InsertElementInst::Create(V1, Scalar, IndexC);