RFR: 8240302: x64: Assembler::reachable redundantly call Relocation::type() more than once

Vladimir Kozlov vladimir.kozlov at oracle.com
Tue Mar 3 00:11:15 UTC 2020


Good cleanup.

Thanks,
Vladimir

On 3/2/20 7:07 AM, Claes Redestad wrote:
> Hi,
> 
> in the x64-version Assembler::reachable method, various calls to
> adr.reloc() are not hoisted by the compiler, due calling into the
> virtual method Relocation::type(). This means each call to reachable
> typically do several redundant calls into Relocation::type()
> 
> This patch refactors all these calls into a single one, which has a
> small, but measurable, effect on startup (and likely some small
> effect on JIT compiler throughput in general)
> 
> Webrev: http://cr.openjdk.java.net/~redestad/8240302/open.00/
> Bug:    https://bugs.openjdk.java.net/browse/JDK-8240302
> 
> Testing: tier1-3
> 
> Thanks!
> 
> /Claes


More information about the hotspot-compiler-dev mailing list