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

Volker Simonis volker.simonis at gmail.com
Wed Jun 22 09:38:17 UTC 2016

Sure. I've just send out the request for approval:


Should be there in a few days.


On Tue, Jun 21, 2016 at 6:34 PM, Tiago Daitx <tiago.daitx at canonical.com> wrote:
> Hi,
> I have seen this fix being applied to OpenJDK 9. As Gustavo said, it
> applies cleanly to jdk8u as well and would be great to have that fix
> there. Is there any plan to backport it?
> Regards,
> Tiago
> On Thu, Jun 16, 2016 at 12:02 PM, 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
> --
> Tiago Stürmer Daitx
> Software Engineer
> tiago.daitx at canonical.com
> PGP Key: 4096R/F5B213BE (hkp://keyserver.ubuntu.com)
> Fingerprint = 45D0 FE5A 8109 1E91 866E  8CA4 1931 8D5E F5B2 13BE

More information about the hotspot-compiler-dev mailing list