[llvm] 5c126e3 - [RISCV] Remove RISCVSubtarget::getArchMinVLen()/getArchMaxVLen().

Craig Topper via llvm-commits llvm-commits at lists.llvm.org
Tue Jan 10 15:32:22 PST 2023


Author: Craig Topper
Date: 2023-01-10T15:32:11-08:00
New Revision: 5c126e35c149c1ae8ea2ca5192edb299a8e4fc64

URL: https://github.com/llvm/llvm-project/commit/5c126e35c149c1ae8ea2ca5192edb299a8e4fc64
DIFF: https://github.com/llvm/llvm-project/commit/5c126e35c149c1ae8ea2ca5192edb299a8e4fc64.diff

LOG: [RISCV] Remove RISCVSubtarget::getArchMinVLen()/getArchMaxVLen().

Fold them into their only callers, getRealMinVLen()/getArchMaxVLen().

It is unclear right now when these are needed so removing to discourage
misuse.

Between Zvl*b extensions, vector length command line options, and
vscale range, we have several ways to influence vector length. We
need to try to keep all code on the same page.

Added: 
    

Modified: 
    llvm/lib/Target/RISCV/RISCVSubtarget.h

Removed: 
    


################################################################################
diff  --git a/llvm/lib/Target/RISCV/RISCVSubtarget.h b/llvm/lib/Target/RISCV/RISCVSubtarget.h
index 8eaf04ba39c4c..678d218a6719c 100644
--- a/llvm/lib/Target/RISCV/RISCVSubtarget.h
+++ b/llvm/lib/Target/RISCV/RISCVSubtarget.h
@@ -126,11 +126,11 @@ class RISCVSubtarget : public RISCVGenSubtargetInfo {
   }
   unsigned getRealMinVLen() const {
     unsigned VLen = getMinRVVVectorSizeInBits();
-    return VLen == 0 ? getArchMinVLen() : VLen;
+    return VLen == 0 ? ZvlLen : VLen;
   }
   unsigned getRealMaxVLen() const {
     unsigned VLen = getMaxRVVVectorSizeInBits();
-    return VLen == 0 ? getArchMaxVLen() : VLen;
+    return VLen == 0 ? 65536 : VLen;
   }
   RISCVABI::ABI getTargetABI() const { return TargetABI; }
   bool isRegisterReservedByUser(Register i) const {
@@ -170,11 +170,6 @@ class RISCVSubtarget : public RISCVGenSubtargetInfo {
   unsigned getMaxRVVVectorSizeInBits() const;
   unsigned getMinRVVVectorSizeInBits() const;
 
-  // Return the known range for the bit length of RVV data registers as indicated
-  // by -march and -mattr.
-  unsigned getArchMinVLen() const { return ZvlLen; }
-  unsigned getArchMaxVLen() const { return 65536; }
-
 public:
   const CallLowering *getCallLowering() const override;
   InstructionSelector *getInstructionSelector() const override;


        


More information about the llvm-commits mailing list