mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2026-04-21 08:17:40 +00:00
Switch ConstantVector::get to use ArrayRef instead of a pointer+size
idiom. Change various clients to simplify their code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125487 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -2257,8 +2257,7 @@ static Constant *EvaluateStoreInto(Constant *Init, Constant *Val,
|
||||
|
||||
if (Init->getType()->isArrayTy())
|
||||
return ConstantArray::get(cast<ArrayType>(InitTy), Elts);
|
||||
else
|
||||
return ConstantVector::get(&Elts[0], Elts.size());
|
||||
return ConstantVector::get(Elts);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1037,11 +1037,8 @@ Instruction *InstCombiner::visitSExt(SExtInst &CI) {
|
||||
if (Pred == ICmpInst::ICMP_SLT && CmpLHS->getType() == DestTy) {
|
||||
const Type *EltTy = VTy->getElementType();
|
||||
|
||||
// splat the shift constant to a cosntant vector
|
||||
Constant *Sh = ConstantInt::get(EltTy, EltTy->getScalarSizeInBits()-1);
|
||||
std::vector<Constant *> Elts(VTy->getNumElements(), Sh);
|
||||
Constant *VSh = ConstantVector::get(Elts);
|
||||
|
||||
// splat the shift constant to a constant vector.
|
||||
Constant *VSh = ConstantInt::get(VTy, EltTy->getScalarSizeInBits()-1);
|
||||
Value *In = Builder->CreateAShr(CmpLHS, VSh,CmpLHS->getName()+".lobit");
|
||||
return ReplaceInstUsesWith(CI, In);
|
||||
}
|
||||
@@ -1390,8 +1387,7 @@ static Instruction *OptimizeVectorResize(Value *InVal, const VectorType *DestTy,
|
||||
ConstantInt::get(Int32Ty, SrcElts));
|
||||
}
|
||||
|
||||
Constant *Mask = ConstantVector::get(ShuffleMask.data(), ShuffleMask.size());
|
||||
return new ShuffleVectorInst(InVal, V2, Mask);
|
||||
return new ShuffleVectorInst(InVal, V2, ConstantVector::get(ShuffleMask));
|
||||
}
|
||||
|
||||
static bool isMultipleOfTypeSize(unsigned Value, const Type *Ty) {
|
||||
|
||||
@@ -1916,7 +1916,7 @@ void SROA::RewriteMemIntrinUserOfAlloca(MemIntrinsic *MI, Instruction *Inst,
|
||||
if (EltTy != ValTy) {
|
||||
unsigned NumElts = cast<VectorType>(ValTy)->getNumElements();
|
||||
SmallVector<Constant*, 16> Elts(NumElts, StoreVal);
|
||||
StoreVal = ConstantVector::get(&Elts[0], NumElts);
|
||||
StoreVal = ConstantVector::get(Elts);
|
||||
}
|
||||
}
|
||||
new StoreInst(StoreVal, EltPtr, MI);
|
||||
|
||||
Reference in New Issue
Block a user