[clang] [Clang][TableGen] Add Features to TargetBuiltin (PR #80279)

via cfe-commits cfe-commits at lists.llvm.org
Thu Feb 1 03:48:32 PST 2024


llvmbot wrote:


<!--LLVM PR SUMMARY COMMENT-->

@llvm/pr-subscribers-clang

Author: Wang Pengcheng (wangpc-pp)

<details>
<summary>Changes</summary>

RISCV target will use this parameter, so we need a way to specify
it.


---
Full diff: https://github.com/llvm/llvm-project/pull/80279.diff


2 Files Affected:

- (modified) clang/include/clang/Basic/BuiltinsBase.td (+3-1) 
- (modified) clang/utils/TableGen/ClangBuiltinsEmitter.cpp (+1-1) 


``````````diff
diff --git a/clang/include/clang/Basic/BuiltinsBase.td b/clang/include/clang/Basic/BuiltinsBase.td
index b65b41be03265..bfccff5600ddb 100644
--- a/clang/include/clang/Basic/BuiltinsBase.td
+++ b/clang/include/clang/Basic/BuiltinsBase.td
@@ -87,7 +87,9 @@ class CustomEntry {
 }
 
 class AtomicBuiltin : Builtin;
-class TargetBuiltin : Builtin;
+class TargetBuiltin : Builtin {
+  string Features = "";
+}
 
 class LibBuiltin<string header, string languages = "ALL_LANGUAGES"> : Builtin {
   string Header = header;
diff --git a/clang/utils/TableGen/ClangBuiltinsEmitter.cpp b/clang/utils/TableGen/ClangBuiltinsEmitter.cpp
index dc10fa14c5959..48f55b8af97e4 100644
--- a/clang/utils/TableGen/ClangBuiltinsEmitter.cpp
+++ b/clang/utils/TableGen/ClangBuiltinsEmitter.cpp
@@ -219,7 +219,7 @@ void EmitBuiltinDef(llvm::raw_ostream &OS, StringRef Substitution,
     break;
   }
   case BuiltinType::TargetBuiltin:
-    OS << ", \"\"";
+    OS << ", \"" << Builtin->getValueAsString("Features") << "\"";
     break;
   case BuiltinType::AtomicBuiltin:
   case BuiltinType::Builtin:

``````````

</details>


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


More information about the cfe-commits mailing list