RFR: 8345265: Minor improvements for LTO across all compilers [v2]

Kim Barrett kbarrett at openjdk.org
Fri Jan 10 10:45:47 UTC 2025


On Fri, 10 Jan 2025 03:33:04 GMT, Kim Barrett <kbarrett at openjdk.org> wrote:

> I'm trying this new version, and I still get a few other warnings and then seem to have a process hang in lto1-ltrans. The switch from `-flto=auto` to `-flto=$(JOBS)` doesn't seem to have helped in that respect.

Turns out I didn't wait long enough.  It does terminate after about 40 minutes, though not successfully.  Instead the
build crashes with a failed assert:

#  Internal Error (../../src/hotspot/share/runtime/handles.inline.hpp:76), pid=4017588, tid=4017620
#  assert(_thread->is_in_live_stack((address)this)) failed: not on stack?

I've not tried to debug this.  Maybe it's a consequence of one of those problems of bypassing an intentional implicit
noinline in our code (by ensuring a function definition is in a different TU from all callers), with LTO breaking that.
Or maybe LTO is breaking us in some other way (such as taking advantage of no-UB constraints that aren't found
by normal compilation).

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

PR Comment: https://git.openjdk.org/jdk/pull/22464#issuecomment-2582389338


More information about the build-dev mailing list