RFR: 8252505: C1/C2 compiler support for blackholes [v19]

Aleksey Shipilev shade at openjdk.java.net
Thu Dec 3 15:55:20 UTC 2020


On Thu, 3 Dec 2020 12:48:06 GMT, Vladimir Ivanov <vlivanov at openjdk.org> wrote:

>> Aleksey Shipilev has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 33 commits:
>> 
>>  - Merge branch 'master' into JDK-8252505-blackholes
>>  - Handle null-checks in intrinsics to maintain the semantics
>>  - Blackhole takes precedence over all other intrinsics
>>  - Print Blackhole format
>>  - Formatting touchups
>>  - Make sure null-checks are handled correctly after blackholed methods
>>  - Parallelize and ID the tests properly
>>  - Multiple arguments tests
>>  - Remodel blackhole hook as fake intrinsic
>>  - Remodel CallBlackhole as Blackhole membar
>>  - ... and 23 more: https://git.openjdk.java.net/jdk/compare/56b15fbb...1c4b1706
>
> src/hotspot/share/ci/ciMethod.cpp line 160:
> 
>> 158: 
>> 159:   if (CompilerOracle::should_blackhole(h_m) &&
>> 160:       _signature->return_type()->basic_type() == T_VOID) {
> 
> Does it make sense to print a diagnostic message (possibly turned off by `-XX:CompileCommand=quiet`) if a method matches, but has non-void return type?

Yes, it does make sense. The check should be moved to `CompilerOracle` to make it cleaner, moved. Added the test a well.

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

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


More information about the hotspot-dev mailing list