> Support the clang toolchain when link time optimization is configured.
> Please note that this is NOT intended to enable lto by default and NOT to fix 
> all possible clang-supporting builds or test issues .
> 
> It works on my Linux x86_64 SUSE 15 test machine with  clang15.0.7, also on 
> macOS with Xcode 13.1 devkit  and Xcode 15.4 .
> 
> To be able to build on macOS with Xcode, I had to deal with one issue.  The 
> lto-link process runs into this error 
> 
> 
> ld: <inline asm>:11:1: symbol 'SpinPause_return' is already defined
> SpinPause_return:        
> ^
> for architecture arm64
> clang: error: linker command failed with exit code 1 (use -v to see 
> invocation)
> 
> 
> Seems that when building with LTO,  the  inline assembler code in SpinPause() 
> is not handled well. In the lto inlining the label  SpinPause_return is 
> generated multiple times and causes an 'already defined' error. This goes 
> away when adding NOINLINE to this function.
> Linux/clang did not show this issue, probably the toolchain there does not 
> have the error.

Matthias Baesken has updated the pull request incrementally with one additional 
commit since the last revision:

  use fat lto objects on AIX/clang

-------------

Changes:
  - all: https://git.openjdk.org/jdk/pull/22412/files
  - new: https://git.openjdk.org/jdk/pull/22412/files/68bb4ccc..f799bcc8

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=22412&range=03
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=22412&range=02-03

  Stats: 3 lines in 1 file changed: 3 ins; 0 del; 0 mod
  Patch: https://git.openjdk.org/jdk/pull/22412.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/22412/head:pull/22412

PR: https://git.openjdk.org/jdk/pull/22412

Reply via email to