diff options
Diffstat (limited to 'llvm/lib/Analysis/VectorUtils.cpp')
-rw-r--r-- | llvm/lib/Analysis/VectorUtils.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/llvm/lib/Analysis/VectorUtils.cpp b/llvm/lib/Analysis/VectorUtils.cpp index 59bff32..a96686a 100644 --- a/llvm/lib/Analysis/VectorUtils.cpp +++ b/llvm/lib/Analysis/VectorUtils.cpp @@ -263,10 +263,10 @@ Value *llvm::findScalarElement(Value *V, unsigned EltNo) { assert(V->getType()->isVectorTy() && "Not looking at a vector?"); VectorType *VTy = cast<VectorType>(V->getType()); // For fixed-length vector, return undef for out of range access. - if (!VTy->isScalable()) { - unsigned Width = VTy->getNumElements(); + if (auto *FVTy = dyn_cast<FixedVectorType>(VTy)) { + unsigned Width = FVTy->getNumElements(); if (EltNo >= Width) - return UndefValue::get(VTy->getElementType()); + return UndefValue::get(FVTy->getElementType()); } if (Constant *C = dyn_cast<Constant>(V)) |