[libc-commits] [libc] 0106e5a - [libc] Temporarily disable LTO flags for AMDGPU crt1.o

Joseph Huber via libc-commits libc-commits at lists.llvm.org
Wed Mar 26 10:55:48 PDT 2025


Author: Joseph Huber
Date: 2025-03-26T12:55:43-05:00
New Revision: 0106e5ad91d7b7d9045e82f2eb7319ab0f74d27a

URL: https://github.com/llvm/llvm-project/commit/0106e5ad91d7b7d9045e82f2eb7319ab0f74d27a
DIFF: https://github.com/llvm/llvm-project/commit/0106e5ad91d7b7d9045e82f2eb7319ab0f74d27a.diff

LOG: [libc] Temporarily disable LTO flags for AMDGPU crt1.o

Summary:
Some recent changes seem to have introduced a bug that breaks this. Turn
it off while I triage it.

Added: 
    

Modified: 
    libc/startup/gpu/CMakeLists.txt

Removed: 
    


################################################################################
diff  --git a/libc/startup/gpu/CMakeLists.txt b/libc/startup/gpu/CMakeLists.txt
index fa326ef46a9d1..a30e6f07a66a3 100644
--- a/libc/startup/gpu/CMakeLists.txt
+++ b/libc/startup/gpu/CMakeLists.txt
@@ -33,8 +33,14 @@ function(add_startup_object name)
     set_target_properties(${fq_target_name}.exe PROPERTIES
       RUNTIME_OUTPUT_DIRECTORY ${LIBC_LIBRARY_DIR}
       RUNTIME_OUTPUT_NAME ${name}.o)
-    target_link_options(${fq_target_name}.exe PRIVATE
-                        "-r" "-nostdlib" "-flto" "-Wl,--lto-emit-llvm")
+    # FIXME: A bug in the AMDGPU LTO pass is incorrectly removing the kernels.
+    if(LIBC_TARGET_ARCHITECTURE_IS_NVPTX)
+      target_link_options(${fq_target_name}.exe PRIVATE
+                          "-r" "-nostdlib" "-flto" "-Wl,--lto-emit-llvm")
+    else()
+      target_link_options(${fq_target_name}.exe PRIVATE
+                          "-r" "-nostdlib" "-Wl,--lto-emit-llvm")
+    endif()
   endif()
 endfunction()
 


        


More information about the libc-commits mailing list