RFR: 8287438: IGV: scheduling crashes on non-block-start Region with multiple predecessors

Christian Hagedorn chagedorn at openjdk.java.net
Mon May 30 07:36:46 UTC 2022


On Fri, 27 May 2022 12:28:53 GMT, Roberto Castañeda Lozano <rcastanedalo at openjdk.org> wrote:

> IGV scheduling crashes when breaking critical edges that target Region nodes not marked with the `is_block_start` property, by failing to create an appropriate basic block between the source and the destination of the critical edge (see the JBS bug report for more detail). This changeset ensures that such a basic block is created even when the destination node is not marked with `is_block_start`.
> 
> #### Testing
> 
> - Tested manually on the [graph](https://bugs.openjdk.java.net/secure/attachment/99125/failure.zip) reported in the JBS issue.
> 
> - Tested automatically that scheduling tens of thousands of graphs (by instrumenting IGV to schedule parsed graphs eagerly and running `java -Xcomp -XX:-TieredCompilation -XX:PrintIdealGraphLevel=4`) does trigger any exception or assertion failure.

Looks good!

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

Marked as reviewed by chagedorn (Reviewer).

PR: https://git.openjdk.java.net/jdk/pull/8921


More information about the hotspot-compiler-dev mailing list