diff --git a/llvm/lib/IR/ConstantFold.cpp b/llvm/lib/IR/ConstantFold.cpp --- a/llvm/lib/IR/ConstantFold.cpp +++ b/llvm/lib/IR/ConstantFold.cpp @@ -573,8 +573,8 @@ // count may be mismatched; don't attempt to handle that here. if ((isa(V) || isa(V)) && DestTy->isVectorTy() && - cast(DestTy)->getElementCount() == - cast(V->getType())->getElementCount()) { + cast(DestTy)->getNumElements() == + cast(V->getType())->getNumElements()) { VectorType *DestVecTy = cast(DestTy); Type *DstEltTy = DestVecTy->getElementType(); // Fast path for splatted constants. diff --git a/llvm/lib/IR/Constants.cpp b/llvm/lib/IR/Constants.cpp --- a/llvm/lib/IR/Constants.cpp +++ b/llvm/lib/IR/Constants.cpp @@ -230,7 +230,8 @@ auto *VTy = dyn_cast(getType()); if (!VTy) return false; - for (unsigned i = 0, e = VTy->getNumElements(); i != e; ++i) { + for (unsigned i = 0, e = cast(VTy)->getNumElements(); i != e; + ++i) { auto *CFP = dyn_cast_or_null(this->getAggregateElement(i)); if (!CFP || !CFP->getValueAPF().isFiniteNonZero()) return false; @@ -1899,8 +1900,8 @@ "PtrToInt destination must be integer or integer vector"); assert(isa(C->getType()) == isa(DstTy)); if (auto *CVTy = dyn_cast(C->getType())) - assert(cast(CVTy)->getNumElements() == - cast(DstTy)->getNumElements() && + assert(CVTy->getElementCount() == + cast(DstTy)->getElementCount() && "Invalid cast between a different number of vector elements"); return getFoldedCast(Instruction::PtrToInt, C, DstTy, OnlyIfReduced); } @@ -1913,8 +1914,8 @@ "IntToPtr destination must be a pointer or pointer vector"); assert(isa(C->getType()) == isa(DstTy)); if (auto *CVTy = dyn_cast(C->getType())) - assert(cast(CVTy)->getNumElements() == - cast(DstTy)->getNumElements() && + assert(CVTy->getElementCount() == + cast(DstTy)->getElementCount() && "Invalid cast between a different number of vector elements"); return getFoldedCast(Instruction::IntToPtr, C, DstTy, OnlyIfReduced); } diff --git a/llvm/lib/IR/Verifier.cpp b/llvm/lib/IR/Verifier.cpp --- a/llvm/lib/IR/Verifier.cpp +++ b/llvm/lib/IR/Verifier.cpp @@ -4905,7 +4905,7 @@ Assert(Operand->getType()->isFPOrFPVectorTy(), "Intrinsic first argument must be floating point", &FPI); if (auto *OperandT = dyn_cast(Operand->getType())) { - NumSrcElem = cast(OperandT)->getElementCount(); + NumSrcElem = OperandT->getElementCount(); } Operand = &FPI;