[clang] [compiler-rt] [llvm] [X86] Sync multiversion features with libgcc and refactor internal feature tables (PR #168750)

Phoebe Wang via llvm-commits llvm-commits at lists.llvm.org
Thu Nov 20 06:45:22 PST 2025


================
@@ -761,10 +764,7 @@ llvm::X86::getCpuSupportsMask(ArrayRef<StringRef> FeatureStrs) {
   std::array<uint32_t, 4> FeatureMask{};
   for (StringRef FeatureStr : FeatureStrs) {
     unsigned Feature = StringSwitch<unsigned>(FeatureStr)
-#define X86_FEATURE_COMPAT(ENUM, STR, PRIORITY)                                \
-  .Case(STR, llvm::X86::FEATURE_##ENUM)
-#define X86_MICROARCH_LEVEL(ENUM, STR, PRIORITY)                               \
-  .Case(STR, llvm::X86::FEATURE_##ENUM)
+#define X86_FEATURE_COMPAT(ENUM, STR, PRIORITY, ABI_VALUE) .Case(STR, ABI_VALUE)
----------------
phoebewang wrote:

This makes `ENUM` useless, since we can always use `ABI_VALUE` instead. But I still like the `ENUM` for readability.

https://github.com/llvm/llvm-project/pull/168750


More information about the llvm-commits mailing list