RFR(S): 8071818: incorrect addressing mode used for ldf in SPARC assembler
vladimir.kozlov at oracle.com
Thu Jan 29 19:04:03 UTC 2015
On 1/29/15 11:00 AM, Zoltán Majó wrote:
> please review the following small patch.
> Bug: https://bugs.openjdk.java.net/browse/JDK-8071818
> Problem: For the 'ldf' instruction, the SPARC assembler uses only the
> addressing mode with 'base + displacement + offset'. In some cases,
> however, an addressing mode with 'base + index' is needed. The necessary
> functionality is not in place, which results in a VM crash.
> Solution: Add support for index-based addressing to MacroAssembler::ldf.
> 'ldf' determines the addressing mode needed by using
> Address::has_index(). The resulting code is analogous to the code in
> 'ld', 'st', and variations of them.
> Webrev: http://cr.openjdk.java.net/~zmajo/8071818/webrev.00/
> Testing: manual testing of failing test case, JPRT tests on Solaris SPARC.
> The patch was originally contributed by Andrew Gross.
> Thank you!
> Best regards,
More information about the hotspot-compiler-dev