diff options
Diffstat (limited to 'llvm/lib/Analysis/ValueTracking.cpp')
-rw-r--r-- | llvm/lib/Analysis/ValueTracking.cpp | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/llvm/lib/Analysis/ValueTracking.cpp b/llvm/lib/Analysis/ValueTracking.cpp index 777b279..1dfc6cf 100644 --- a/llvm/lib/Analysis/ValueTracking.cpp +++ b/llvm/lib/Analysis/ValueTracking.cpp @@ -1740,10 +1740,8 @@ static void computeKnownBitsFromOperator(const Operator *I, cast<ConstantInt>(II->getArgOperand(HasAVL))->getZExtValue()); RISCVII::VLMUL VLMUL = static_cast<RISCVII::VLMUL>( cast<ConstantInt>(II->getArgOperand(1 + HasAVL))->getZExtValue()); - // The Range is [Lower, Upper), so we need to subtract 1 here to get the - // real upper value. uint64_t MaxVLEN = - (Range.getUpper().getZExtValue() - 1) * RISCV::RVVBitsPerBlock; + Range.getUnsignedMax().getZExtValue() * RISCV::RVVBitsPerBlock; uint64_t MaxVL = MaxVLEN / RISCVVType::getSEWLMULRatio(SEW, VLMUL); // Result of vsetvli must be not larger than AVL. |