[PATCH] D117854: [RISCV] Decouple Zve* extensions and the V extension.
Jianjian Guan via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Sat Jan 22 00:02:35 PST 2022
jacquesguan added inline comments.
================
Comment at: clang/lib/Sema/SemaChecking.cpp:3978
for (StringRef F : ReqFeatures) {
- if (TI.hasFeature(F))
- continue;
-
- // If the feature is 64bit, alter the string so it will print better in
- // the diagnostic.
- if (F == "64bit")
- F = "RV64";
-
- // Convert features like "zbr" and "experimental-zbr" to "Zbr".
- F.consume_front("experimental-");
- std::string FeatureStr = F.str();
- FeatureStr[0] = std::toupper(FeatureStr[0]);
+ SmallVector<StringRef> ReqOpFeatures;
+ F.split(ReqOpFeatures, '|');
----------------
craig.topper wrote:
> Is this change testable?
Done, I add a test case `clang/test/CodeGen/RISCV/rvv-intrinsics/rvv-error.c` to test this.
================
Comment at: llvm/lib/Support/RISCVISAInfo.cpp:697
bool HasZvl = MinVLen != 0;
if (HasE && !IsRv32)
----------------
craig.topper wrote:
> Should we check that Zve and V are not specified together?
Done.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D117854/new/
https://reviews.llvm.org/D117854
More information about the cfe-commits
mailing list