[llvm] TableGen: Allow defining sets of runtime libraries (PR #144978)

Daniel Paoliello via llvm-commits llvm-commits at lists.llvm.org
Fri Jun 27 11:14:16 PDT 2025


================
@@ -889,7 +889,41 @@ def memset : RuntimeLibcallImpl<MEMSET>;
 def calloc : RuntimeLibcallImpl<CALLOC>;
 
 } // End let IsDefault = true
-} // End defset DefaultRuntimeLibcallImpls
+} // End defset AllDefaultRuntimeLibcallImpls
+
+
+// FIXME: Should move to explicit opt-in to different sets of libcalls
+// instead of trying to remove from a default set. We have
+// unreasonable defaults like reporting f80 calls on most targets when
+// they are relevant to only one.
+
+defvar AllDefaultLibCalls =
+    !foreach(entry, AllDefaultRuntimeLibcallImpls, entry.Provides);
+
+// These libcalls are only available in compiler-rt, not libgcc for
+// 32-bit arch.
+defvar LibCallsCompilerRT64OrLibGCC = [
----------------
dpaoliello wrote:

I'm a bit confused with the name of this versus the comment. The comment makes it sound like on 32bit these are in compiler-rt and on 64bit they are in libgcc. The name suggests they are in compiler-rt 64bit and all libgcc arches.

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


More information about the llvm-commits mailing list