aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Sema/SemaChecking.cpp
diff options
context:
space:
mode:
authorChandler Carruth <chandlerc@gmail.com>2024-12-17 19:21:27 +0000
committerChandler Carruth <chandlerc@gmail.com>2025-02-04 18:04:58 +0000
commit212ecb9d5caaa7cc721edd981f36384ddfccfa5d (patch)
treeea504bf9ccc8ed9ab082610568c3d23fc77b19fe /clang/lib/Sema/SemaChecking.cpp
parent64ea3f5a4720105d166b034d5a34d92475579e64 (diff)
downloadllvm-212ecb9d5caaa7cc721edd981f36384ddfccfa5d.zip
llvm-212ecb9d5caaa7cc721edd981f36384ddfccfa5d.tar.gz
llvm-212ecb9d5caaa7cc721edd981f36384ddfccfa5d.tar.bz2
[StrTable] Teach main builtin TableGen to use direct enums, strings, and info
This moves the main builtins and several targets to use nice generated string tables and info structures rather than X-macros. Even without obvious prefixes factored out, the resulting tables are significantly smaller and much cheaper to compile with out all the X-macro overhead. This leaves the X-macros in place for atomic builtins which have a wide range of uses that don't seem reasonable to fold into TableGen. As future work, these should move to their own file (whether as X-macros or just generated patterns) so the AST headers don't have to include all the data for other builtins.
Diffstat (limited to 'clang/lib/Sema/SemaChecking.cpp')
-rw-r--r--clang/lib/Sema/SemaChecking.cpp1
1 files changed, 0 insertions, 1 deletions
diff --git a/clang/lib/Sema/SemaChecking.cpp b/clang/lib/Sema/SemaChecking.cpp
index b345e40..66c233d 100644
--- a/clang/lib/Sema/SemaChecking.cpp
+++ b/clang/lib/Sema/SemaChecking.cpp
@@ -2451,7 +2451,6 @@ Sema::CheckBuiltinFunctionCall(FunctionDecl *FDecl, unsigned BuiltinID,
CheckNonNullArgument(*this, TheCall->getArg(0), TheCall->getExprLoc());
break;
}
-#define BUILTIN(ID, TYPE, ATTRS)
#define ATOMIC_BUILTIN(ID, TYPE, ATTRS) \
case Builtin::BI##ID: \
return AtomicOpsOverloaded(TheCallResult, AtomicExpr::AO##ID);