RFR: 8240669: Devirtualize Relocation::type

Claes Redestad claes.redestad at oracle.com
Sun Mar 8 14:12:29 UTC 2020


Hi,

devirtualizing Relocation::type() means a throughput increase in places 
such as Assembler::emit_operand (-15% instructions, fewer branches), due
enabling more aggressive inlining.

Several of these places are sensitive to startup/warmup. For example
paths taken when generating the interpreter, runtime adapters and by C1
improve, and the refactoring here has a measurable win on #instructions,
#branches (-0.4% on Hello World) etc, on a range of startup tests.

Bug:    https://bugs.openjdk.java.net/browse/JDK-8240302
Webrev: http://cr.openjdk.java.net/~redestad/8240669/open.00/

Testing: tier1-5

Thanks!

/Claes


More information about the hotspot-compiler-dev mailing list