forked from OSchip/llvm-project
[llvm] Fix lto tests that requires ld64
Since Xcode 13, ld64 requires linking libSystem for all the executable. Fix the tests that needs to run ld64 by linking libSystem from sysroot. rdar://77332728 Reviewed By: fhahn Differential Revision: https://reviews.llvm.org/D104332
This commit is contained in:
parent
3accff2553
commit
c747b7d1d9
|
@ -115,6 +115,8 @@ ld64_cmd = config.ld64_executable
|
|||
asan_rtlib = get_asan_rtlib()
|
||||
if asan_rtlib:
|
||||
ld64_cmd = 'DYLD_INSERT_LIBRARIES={} {}'.format(asan_rtlib, ld64_cmd)
|
||||
if config.osx_sysroot:
|
||||
ld64_cmd = '{} -syslibroot {}'.format(ld64_cmd, config.osx_sysroot)
|
||||
|
||||
ocamlc_command = '%s ocamlc -cclib -L%s %s' % (
|
||||
config.ocamlfind_executable, config.llvm_lib_dir, config.ocaml_flags)
|
||||
|
|
|
@ -17,6 +17,7 @@ config.errc_messages = "@LLVM_LIT_ERRC_MESSAGES@"
|
|||
config.python_executable = "@Python3_EXECUTABLE@"
|
||||
config.gold_executable = "@GOLD_EXECUTABLE@"
|
||||
config.ld64_executable = "@LD64_EXECUTABLE@"
|
||||
config.osx_sysroot = "@CMAKE_OSX_SYSROOT@"
|
||||
config.ocamlfind_executable = "@OCAMLFIND@"
|
||||
config.have_ocamlopt = @HAVE_OCAMLOPT@
|
||||
config.have_ocaml_ounit = @HAVE_OCAML_OUNIT@
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
; RUN: llvm-as %s -o %t.o
|
||||
; RUN: %ld64 -lto_library %llvmshlibdir/libLTO.dylib -dylib -arch x86_64 -macosx_version_min 10.10.0 -o %t.dylib %t.o -save-temps -undefined dynamic_lookup -exported_symbol _c -exported_symbol _b -exported_symbol _GlobLinkonce
|
||||
; RUN: %ld64 -lto_library %llvmshlibdir/libLTO.dylib -dylib -arch x86_64 -macosx_version_min 10.10.0 -o %t.dylib %t.o -save-temps -undefined dynamic_lookup -exported_symbol _c -exported_symbol _b -exported_symbol _GlobLinkonce -lSystem
|
||||
|
||||
; RUN: llvm-dis %t.dylib.lto.opt.bc -o - | FileCheck --check-prefix=IR %s
|
||||
; check that @a is no longer a linkonce_odr definition
|
||||
|
|
|
@ -2,4 +2,4 @@
|
|||
; libLTO.dylib shouldn't assert on invalid inputs.
|
||||
; RUN: llvm-mc -triple=arm64-apple-ios7.0.0 -filetype=obj -o %t.o
|
||||
; RUN: llvm-ar r %t.a %t.o
|
||||
; RUN: %ld64 -lto_library %llvmshlibdir/libLTO.dylib -arch x86_64 -dylib -mllvm -O0 -o %t.dylib %t.a
|
||||
; RUN: %ld64 -lto_library %llvmshlibdir/libLTO.dylib -arch x86_64 -dylib -mllvm -O0 -o %t.dylib %t.a -lSystem
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
; RUN: llvm-as %s -o %t.o
|
||||
; RUN: %ld64 -lto_library %llvmshlibdir/libLTO.dylib -arch x86_64 -dylib -mllvm -O0 -o %t.dylib %t.o
|
||||
; RUN: %ld64 -lto_library %llvmshlibdir/libLTO.dylib -arch x86_64 -dylib -mllvm -O0 -o %t.dylib %t.o -lSystem
|
||||
; RUN: llvm-nm --no-llvm-bc %t.dylib | FileCheck --check-prefix=CHECK-O0 %s
|
||||
; RUN: %ld64 -lto_library %llvmshlibdir/libLTO.dylib -arch x86_64 -dylib -mllvm -O2 -o %t.dylib %t.o
|
||||
; RUN: %ld64 -lto_library %llvmshlibdir/libLTO.dylib -arch x86_64 -dylib -mllvm -O2 -o %t.dylib %t.o -lSystem
|
||||
; RUN: llvm-nm --no-llvm-bc %t.dylib | FileCheck --check-prefix=CHECK-O2 %s
|
||||
|
||||
target triple = "x86_64-apple-macosx10.8.0"
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
; RUN: llvm-as %s -o %t.o
|
||||
; RUN: %ld64 -lto_library %llvmshlibdir/libLTO.dylib -arch x86_64 -dylib -mllvm -stats -o %t.dylib %t.o 2>&1 | FileCheck --check-prefix=STATS %s
|
||||
; RUN: %ld64 -lto_library %llvmshlibdir/libLTO.dylib -arch x86_64 -dylib -o %t.dylib %t.o 2>&1 | FileCheck --check-prefix=NO_STATS %s
|
||||
; RUN: %ld64 -lto_library %llvmshlibdir/libLTO.dylib -arch x86_64 -dylib -mllvm -stats -o %t.dylib %t.o -lSystem 2>&1 | FileCheck --check-prefix=STATS %s
|
||||
; RUN: %ld64 -lto_library %llvmshlibdir/libLTO.dylib -arch x86_64 -dylib -o %t.dylib %t.o -lSystem 2>&1 | FileCheck --check-prefix=NO_STATS %s
|
||||
; REQUIRES: asserts
|
||||
|
||||
target triple = "x86_64-apple-macosx10.8.0"
|
||||
|
|
Loading…
Reference in New Issue