RFR: 8350471: Unhandled compilation bailout in GraphKit::builtin_throw

duke duke at openjdk.org
Fri Mar 28 08:52:13 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

@mhaessig 
Your change (at version 8ca6eef274509f903f9a16e7b12d888a3a1ea9b3) is now ready to be sponsored by a Committer.

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

PR Comment: https://git.openjdk.org/jdk/pull/24243#issuecomment-2760583067


More information about the hotspot-compiler-dev mailing list