https://github.com/arsenm created https://github.com/llvm/llvm-project/pull/147658
Starts adding a stub X86 configuration which doesn't attempt the system specific pieces yet. This is mostly to have a point to add back in the f80 calls so they can be removed from every other target. >From 1391d1f30503b8ef6d63b671faa519f130653060 Mon Sep 17 00:00:00 2001 From: Matt Arsenault <matthew.arsena...@amd.com> Date: Wed, 9 Jul 2025 15:08:20 +0900 Subject: [PATCH] RuntimeLibcalls: Avoid adding f80 calls to default set Starts adding a stub X86 configuration which doesn't attempt the system specific pieces yet. This is mostly to have a point to add back in the f80 calls so they can be removed from every other target. --- llvm/include/llvm/IR/RuntimeLibcalls.td | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/llvm/include/llvm/IR/RuntimeLibcalls.td b/llvm/include/llvm/IR/RuntimeLibcalls.td index c9eda9110a9ef..c9058d3e38c04 100644 --- a/llvm/include/llvm/IR/RuntimeLibcalls.td +++ b/llvm/include/llvm/IR/RuntimeLibcalls.td @@ -1012,6 +1012,10 @@ defvar CompilerRTOnlyInt128Libcalls = [ __mulodi4 ]; +defvar DefaultRuntimeLibcallImpls_f80 = + !filter(entry, AllDefaultRuntimeLibcallImpls, + !match(!cast<string>(entry.Provides), "F80")); + defvar DefaultRuntimeLibcallImpls_ppcf128 = !filter(entry, AllDefaultRuntimeLibcallImpls, !match(!cast<string>(entry.Provides), "PPCF128")); @@ -1021,10 +1025,12 @@ defvar DefaultRuntimeLibcallImpls_f128 = !match(!cast<string>(entry.Provides), "_F128")); defvar DefaultRuntimeLibcallImpls = +!listremove( !listremove( !listremove( !listremove(AllDefaultRuntimeLibcallImpls, Int128RTLibcalls), CompilerRTOnlyInt128Libcalls), + DefaultRuntimeLibcallImpls_f80), DefaultRuntimeLibcallImpls_ppcf128); defvar DefaultRuntimeLibcallImpls_atomic = @@ -1929,6 +1935,21 @@ def _allrem : RuntimeLibcallImpl<SREM_I64>; def _aullrem : RuntimeLibcallImpl<UREM_I64>; def _allmul : RuntimeLibcallImpl<MUL_I64>; +//===----------------------------------------------------------------------===// +// X86 Runtime Libcalls +//===----------------------------------------------------------------------===// + +def isX86_32 : RuntimeLibcallPredicate<"TT.getArch() == Triple::x86">; +def isX86_64 : RuntimeLibcallPredicate<"TT.getArch() == Triple::x86_64">; + +def X86_32SystemLibrary + : SystemRuntimeLibrary<isX86_32, + (add DefaultLibcallImpls32, DefaultRuntimeLibcallImpls_f80)>; + +def X86_64SystemLibrary + : SystemRuntimeLibrary<isX86_64, + (add DefaultLibcallImpls64, DefaultRuntimeLibcallImpls_f80)>; + //===----------------------------------------------------------------------===// // XCore Runtime Libcalls //===----------------------------------------------------------------------===// _______________________________________________ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits