diff --git a/clang/lib/Basic/Targets/RISCV.cpp b/clang/lib/Basic/Targets/RISCV.cpp --- a/clang/lib/Basic/Targets/RISCV.cpp +++ b/clang/lib/Basic/Targets/RISCV.cpp @@ -255,7 +255,8 @@ if (unsigned MinVLen = ISAInfo->getMinVLen()) { unsigned MaxVLen = ISAInfo->getMaxVLen(); // RISCV::RVVBitsPerBlock is 64. - return std::pair(MinVLen/64, MaxVLen/64); + return std::make_pair(MinVLen / llvm::RISCV::RVVBitsPerBlock, + MaxVLen / llvm::RISCV::RVVBitsPerBlock); } return None; diff --git a/llvm/include/llvm/Support/TargetParser.h b/llvm/include/llvm/Support/TargetParser.h --- a/llvm/include/llvm/Support/TargetParser.h +++ b/llvm/include/llvm/Support/TargetParser.h @@ -157,6 +157,9 @@ namespace RISCV { +// We use 64 bits as the known part in the scalable vector types. +static constexpr unsigned RVVBitsPerBlock = 64; + enum CPUKind : unsigned { #define PROC(ENUM, NAME, FEATURES, DEFAULT_MARCH) CK_##ENUM, #define TUNE_PROC(ENUM, NAME) CK_##ENUM, diff --git a/llvm/lib/Target/RISCV/RISCVISelLowering.h b/llvm/lib/Target/RISCV/RISCVISelLowering.h --- a/llvm/lib/Target/RISCV/RISCVISelLowering.h +++ b/llvm/lib/Target/RISCV/RISCVISelLowering.h @@ -18,6 +18,7 @@ #include "llvm/CodeGen/CallingConvLower.h" #include "llvm/CodeGen/SelectionDAG.h" #include "llvm/CodeGen/TargetLowering.h" +#include "llvm/Support/TargetParser.h" namespace llvm { class RISCVSubtarget; @@ -325,11 +326,6 @@ }; } // namespace RISCVISD -namespace RISCV { -// We use 64 bits as the known part in the scalable vector types. -static constexpr unsigned RVVBitsPerBlock = 64; -} // namespace RISCV - class RISCVTargetLowering : public TargetLowering { const RISCVSubtarget &Subtarget;