RFR: 8350471: Unhandled compilation bailout in GraphKit::builtin_throw
Christian Hagedorn
chagedorn at openjdk.org
Wed Mar 26 09:48:07 UTC 2025
On Wed, 26 Mar 2025 08:55:10 GMT, Manuel Hässig <duke at openjdk.org> wrote:
> # Issue Summary
>
> When creating a builtin exception node, a stress test decided to bail out as if the allocation of the builtin exception objects had failed. Since these are preallocated at VM creation, the test failure is a false positive.
>
> # Change Rationale
>
> `GraphKit::builtin_throw()` features a bailout check after getting an appropriate exception object. However, up to that point, the execution in `builtin_throw()` cannot fail. In particular, there can be no failure to allocate the exception because these are all preallocated during `Threads::create_vm()` startup in `universe_post_init()` and `Threads:initialize_java_lang_classes()`. Further, none of the three callers handles a possible bailout in `builtin_throw()`. Hence, this PR removes the bailout check responsible for the test failure
>
> # Testing
>
> - [Github Actions](https://github.com/mhaessig/jdk/actions/runs/14078715650)
> - tier1 through tier3 and Oracle internal testing
Looks good to me, too!
-------------
Marked as reviewed by chagedorn (Reviewer).
PR Review: https://git.openjdk.org/jdk/pull/24243#pullrequestreview-2716489236
More information about the hotspot-compiler-dev
mailing list