RFR: 8271911: replay compilations of methods which use JSR292 (easy cases) [v2]

Dean Long dlong at openjdk.java.net
Wed Sep 1 21:50:31 UTC 2021


On Wed, 1 Sep 2021 13:05:22 GMT, Vladimir Ivanov <vlivanov at openjdk.org> wrote:

>> Dean Long has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   rename LocPusher --> RecordLocation, add comments
>
> Very nice work, Dean!

@iwanowww Thanks for looking at this.

> src/hotspot/share/ci/ciEnv.cpp line 1537:
> 
>> 1535: 
>> 1536:   // Iterate over the class hierarchy
>> 1537:   for (ClassHierarchyIterator iter(vmClasses::Object_klass()); !iter.done(); iter.next()) {
> 
> Why do you iterate over the whole class hierarchy instead of inspecting only those classes which are present in CI?

Good question.  It is because of the section in ciInstanceKlass::dump_replay_data that dumps subclasses.  If one of the CI classes is java.lang.Object, we can get a lot of hidden classes dumped there from startup that are unrelated to the current compile.  I wanted to see how many I could find as a proof of concept / stress test.  My plan is to see if we can completely do without subclass dumping there by dumping better CHA information (JDK-8261192).

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

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


More information about the hotspot-compiler-dev mailing list