RFR(S): 8158260: PPC64: unaligned Unsafe.getInt can lead to the generation of illegal instructions

Zoltán Majó zoltan.majo at oracle.com
Fri Jun 17 08:55:10 UTC 2016

Hi Volker,

On 06/17/2016 10:49 AM, Volker Simonis wrote:
> Hi,
> can somebody please sponsor this change?
> It's ppc64-only but I think I still need a sponsor because it also has
> a jterg test included.

I'll sponsor the change.

Thank you and best regards,


> Thank you and best regards,
> Volker
> On Thu, Jun 16, 2016 at 11:02 AM, Lindenmaier, Goetz
> <goetz.lindenmaier at sap.com> wrote:
>> Hi Volker,
>> I've looked at the change, it's fine.  Thanks for fixing this.
>> Best regards,
>>    Goetz.
>>> -----Original Message-----
>>> From: ppc-aix-port-dev [mailto:ppc-aix-port-dev-
>>> bounces at openjdk.java.net] On Behalf Of Volker Simonis
>>> Sent: Dienstag, 14. Juni 2016 20:12
>>> To: hotspot compiler <hotspot-compiler-dev at openjdk.java.net>; ppc-aix-
>>> port-dev at openjdk.java.net; aarch64-port-dev at openjdk.java.net
>>> Cc: Hiroshi H Horii <HORII at jp.ibm.com>; Gustavo Romero
>>> <gromero at linux.vnet.ibm.com>
>>> Subject: RFR(S): 8158260: PPC64: unaligned Unsafe.getInt can lead to the
>>> generation of illegal instructions
>>> Hi,
>>> can I please get a review for this small change which fixes a code
>>> generation problem on ppc64:
>>> http://cr.openjdk.java.net/~simonis/webrevs/2016/8158260/
>>> https://bugs.openjdk.java.net/browse/JDK-8158260
>>> In the case where we access an unaligned address trough Unsafe, we
>>> could generate an illegal instruction because we didn't correctly
>>> specify the memory operand of some match rules. The fix is trivial.
>>> Although this change is ppc64-specific I think I need a sponsor
>>> because the change contains a new regression test which is supposed to
>>> run on all platforms.
>>> On platforms where Unsafe.unalignedAccess() will return false (e.g.
>>> Solaris/SPARC) this test will return immediately (and I've verified
>>> that it works).
>>> I've also added aarch64 to the list of recipients because on aarch64
>>> Unsafe.unalignedAccess() is apparently supported and it would be nice
>>> if somebody could check that the new regression test is indeed working
>>> there.
>>> @Hiroshi, Gustavo: could you please verify that this change is enough
>>> to fix the initial problems you've observed when running Cassandra on
>>> Linux/ppc64? The changes from ppc64.ad should easily apply to the
>>> 8u-dev repository. Once we've got this into jdk9 I'll trigger a
>>> downport request to get the fix into jdk8 as well.
>>> Thank you and best regards,
>>> Volker

More information about the hotspot-compiler-dev mailing list