diff options
author | Simon Pilgrim <llvm-dev@redking.me.uk> | 2019-05-22 12:25:46 +0000 |
---|---|---|
committer | Simon Pilgrim <llvm-dev@redking.me.uk> | 2019-05-22 12:25:46 +0000 |
commit | 9b40dd6318b9e15bac2daa09e7563676d43e6ccf (patch) | |
tree | aa68b7fe06a6b97eb189e34b050588601c729749 | |
parent | 529141e4ad33551a1dd0c59e28f1462d7a8b411c (diff) | |
download | bcm5719-llvm-9b40dd6318b9e15bac2daa09e7563676d43e6ccf.tar.gz bcm5719-llvm-9b40dd6318b9e15bac2daa09e7563676d43e6ccf.zip |
[Hexagon] assert getRegisterBitWidth returns non-zero value. NFCI.
Fixes scan-build warning.
llvm-svn: 361375
-rw-r--r-- | llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.cpp b/llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.cpp index c817cb1842d..38062e8e922 100644 --- a/llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.cpp +++ b/llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.cpp @@ -160,14 +160,15 @@ unsigned HexagonTTIImpl::getMemoryOpCost(unsigned Opcode, Type *Src, unsigned VecWidth = VecTy->getBitWidth(); if (useHVX() && isTypeForHVX(VecTy)) { unsigned RegWidth = getRegisterBitWidth(true); - Alignment = std::min(Alignment, RegWidth/8); + assert(RegWidth && "Non-zero vector register width expected"); // Cost of HVX loads. if (VecWidth % RegWidth == 0) return VecWidth / RegWidth; // Cost of constructing HVX vector from scalar loads. + Alignment = std::min(Alignment, RegWidth / 8); unsigned AlignWidth = 8 * std::max(1u, Alignment); unsigned NumLoads = alignTo(VecWidth, AlignWidth) / AlignWidth; - return 3*NumLoads; + return 3 * NumLoads; } // Non-HVX vectors. |