llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT--> @llvm/pr-subscribers-llvm-ir Author: Matt Arsenault (arsenm) <details> <summary>Changes</summary> --- Full diff: https://github.com/llvm/llvm-project/pull/144378.diff 2 Files Affected: - (modified) llvm/lib/IR/RuntimeLibcalls.cpp (+11-3) - (modified) llvm/test/CodeGen/AArch64/arm64ec-builtins.ll (+1-2) ``````````diff diff --git a/llvm/lib/IR/RuntimeLibcalls.cpp b/llvm/lib/IR/RuntimeLibcalls.cpp index 09200f380305a..ec08b17cfcd73 100644 --- a/llvm/lib/IR/RuntimeLibcalls.cpp +++ b/llvm/lib/IR/RuntimeLibcalls.cpp @@ -36,9 +36,6 @@ static void setAArch64LibcallNames(RuntimeLibcallsInfo &Info, LCALLNAME4(RTLIB::OUTLINE_ATOMIC_LDSET, __aarch64_ldset) LCALLNAME4(RTLIB::OUTLINE_ATOMIC_LDCLR, __aarch64_ldclr) LCALLNAME4(RTLIB::OUTLINE_ATOMIC_LDEOR, __aarch64_ldeor) -#undef LCALLNAMES -#undef LCALLNAME4 -#undef LCALLNAME5 if (TT.isWindowsArm64EC()) { // FIXME: are there calls we need to exclude from this? @@ -54,7 +51,18 @@ static void setAArch64LibcallNames(RuntimeLibcallsInfo &Info, #include "llvm/IR/RuntimeLibcalls.def" #undef HANDLE_LIBCALL #undef LIBCALL_NO_NAME + + LCALLNAME5(RTLIB::OUTLINE_ATOMIC_CAS, #__aarch64_cas) + LCALLNAME4(RTLIB::OUTLINE_ATOMIC_SWP, #__aarch64_swp) + LCALLNAME4(RTLIB::OUTLINE_ATOMIC_LDADD, #__aarch64_ldadd) + LCALLNAME4(RTLIB::OUTLINE_ATOMIC_LDSET, #__aarch64_ldset) + LCALLNAME4(RTLIB::OUTLINE_ATOMIC_LDCLR, #__aarch64_ldclr) + LCALLNAME4(RTLIB::OUTLINE_ATOMIC_LDEOR, #__aarch64_ldeor) } + +#undef LCALLNAMES +#undef LCALLNAME4 +#undef LCALLNAME5 } static void setARMLibcallNames(RuntimeLibcallsInfo &Info, const Triple &TT) { diff --git a/llvm/test/CodeGen/AArch64/arm64ec-builtins.ll b/llvm/test/CodeGen/AArch64/arm64ec-builtins.ll index 92b95a90d89a0..cc4ec9c2eebd6 100644 --- a/llvm/test/CodeGen/AArch64/arm64ec-builtins.ll +++ b/llvm/test/CodeGen/AArch64/arm64ec-builtins.ll @@ -28,10 +28,9 @@ define i128 @f4(i128 %x, i128 %y) { ret i128 %r } -; FIXME: This is wrong; should be "#__aarch64_cas1_relax" define i8 @f5(i8 %expected, i8 %new, ptr %ptr) "target-features"="+outline-atomics" { ; CHECK-LABEL: "#f5": -; CHECK: bl __aarch64_cas1_relax +; CHECK: bl "#__aarch64_cas1_relax" %pair = cmpxchg ptr %ptr, i8 %expected, i8 %new monotonic monotonic, align 1 %r = extractvalue { i8, i1 } %pair, 0 ret i8 %r `````````` </details> https://github.com/llvm/llvm-project/pull/144378 _______________________________________________ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits