RFR: JDK-8258603 c1 IR::verify is expensive [v5]

Ludvig Janiuk duke at openjdk.java.net
Mon Dec 20 08:59:26 UTC 2021


On Fri, 17 Dec 2021 22:07:43 GMT, Albert Mingkun Yang <ayang at openjdk.org> wrote:

>> Ludvig Janiuk has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   flip ifs
>
> I wonder if "map fusion" works here, as in improving the perf of verification.
> 
> Using `IR::verify_local` as an example:
> 
> 
> {
>   VerifyClosure cl;
>   blocks.iterate_forward(&cl);
> }
> 
> class VerifyClosure : public BlockClosure {
> 
>   void block_do(BlockBegin* block) override {
>     verify_end_not_null(block);
>     
>     verify_edge_mutuality(block);
>     
>     verify_block_begin_field(block);
>     
>     // more verifier
>   }
> }
> 
> 
> This should cut down #iteration to 1.

@albertnetymk It would work for almost all of the verifiers, but there is a tradeoff with code flexibility. I'd opt to leave as-is.

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

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


More information about the hotspot-compiler-dev mailing list