Lines Matching refs:Ext
180 Instruction *InstCombinerImpl::foldBitcastExtElt(ExtractElementInst &Ext) { in foldBitcastExtElt() argument
183 if (!match(Ext.getVectorOperand(), m_BitCast(m_Value(X))) || in foldBitcastExtElt()
184 !match(Ext.getIndexOperand(), m_ConstantInt(ExtIndexC))) in foldBitcastExtElt()
188 cast<VectorType>(Ext.getVectorOperandType())->getElementCount(); in foldBitcastExtElt()
189 Type *DestTy = Ext.getType(); in foldBitcastExtElt()
197 assert(isa<FixedVectorType>(Ext.getVectorOperand()->getType()) && in foldBitcastExtElt()
206 if (!ShiftAmountC || Ext.getVectorOperand()->hasOneUse()) { in foldBitcastExtElt()
250 if (X->hasOneUse() && Ext.getVectorOperand()->hasOneUse()) { in foldBitcastExtElt()
251 Value *NewBC = Builder.CreateBitCast(Vec, Ext.getVectorOperandType()); in foldBitcastExtElt()
252 return ExtractElementInst::Create(NewBC, Ext.getIndexOperand()); in foldBitcastExtElt()
287 if (!X->hasOneUse() || !Ext.getVectorOperand()->hasOneUse()) in foldBitcastExtElt()
298 if (!Ext.getVectorOperand()->hasOneUse()) in foldBitcastExtElt()
1622 if (Instruction *Ext = narrowInsElt(IE, Builder)) in visitInsertElementInst() local
1623 return Ext; in visitInsertElementInst()
2742 auto *Ext = Builder.CreateExtractElement( in visitShuffleVectorInst() local
2746 replaceInstUsesWith(*BC, Ext); in visitShuffleVectorInst()