RFR (S): 8184162: Support addresses with index operands in LIRAssembler::leal on SPARC

Vladimir Kozlov vladimir.kozlov at oracle.com
Tue Jul 11 16:16:30 UTC 2017


You can use dest_reg instead of G3 in this code I think. It can be used to store any values before storing final result.
Would be nice if Roland, who added this code, can comment on it.

Thanks,
Vladimir

On 7/11/17 4:27 AM, Erik Österlund wrote:
> Hi,
> 
> Bug:
> https://bugs.openjdk.java.net/browse/JDK-8184162
> 
> Webrev:
> http://cr.openjdk.java.net/~eosterlund/8184162/webrev.00/
> 
> The LIRAssembler::leal member function on SPARC complains about loading the effecting addresses where the address has an 
> index operand, with the following assert stating it is not yet supported:
> 
> assert(addr->index()->is_illegal() && addr->scale() == LIR_Address::times_1, "can't handle complex addresses yet");
> 
> Support for index operands in the address is required for some upcoming changes, therefore it would be nice if this was 
> supported.
> So here is a webrev that starts supporting index operands for leal on SPARC.
> 
> Testing: JPRT -testset hotspot, and manual code inspection on a T7-4 SPARC machine
> 
> Thanks,
> /Erik


More information about the hotspot-compiler-dev mailing list