RFR: 8349835: C2: simplify IGV property printing [v3]

Saranya Natarajan snatarajan at openjdk.org
Mon Nov 17 10:36:08 UTC 2025


On Tue, 28 Oct 2025 08:12:08 GMT, Roberto Castañeda Lozano <rcastanedalo at openjdk.org> wrote:

>> Saranya Natarajan has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   addressing review comments#2
>
> Thanks for working on this, Saranya! We do not have good test coverage of IGV graph dumping, so only running regular tier testing might not catch possible regressions introduced by this changeset. Consider also comparing the XML graphs dumped before and after the changeset for a few well-known methods with deterministic compilation, e.g.:
> 
> $ ${BASELINE_JAVA} -Xbatch -XX:PrintIdealGraphLevel=6 -XX:CompileOnly=java.lang.String::charAt -XX:PrintIdealGraphFile=before.xml
> $ ${PATCHED_JAVA}  -Xbatch -XX:PrintIdealGraphLevel=6 -XX:CompileOnly=java.lang.String::charAt -XX:PrintIdealGraphFile=after.xml
> $ diff before.xml after.xml
> 
> The only expected changes between the two files would be things like memory addresses, process and thread IDs, etc. But all the other properties should remain the same.

@robcasloz: I followed the testing methodology you suggested for the below commands. I did hit a crash that I fixed, after that the only difference were to the memory, process, and thread ID. 

-XX:CompileOnly=java.lang.String::length
-XX:CompileOnly=java.lang.String::charAt
-XX:CompileOnly=java.util.ArrayList::get
-XX:CompileOnly=java.util.ArrayList::add


In this testing, I did NOT see prints for `is_cisc_alternate, rematerialize, has_call, is_float, is_vector, is_predicate, is_scalable, and must_spill`. However, these prints look straightforward.

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

PR Comment: https://git.openjdk.org/jdk/pull/26902#issuecomment-3541033097


More information about the hotspot-compiler-dev mailing list