[aarch64-port-dev ] RFR: 8169697: aarch64: vectorized MLA instruction not generated for some test cases

Yang Zhang yang.zhang at linaro.org
Thu Nov 24 06:22:03 UTC 2016


Hi Andrew

Sorry for the late response. I was on travel in the last 3 days.

I used the tree as follows when I sent the patch:
http://hg.openjdk.java.net/jdk9/hs

Today, I also tried the latest code:
http://hg.openjdk.java.net/jdk9/hs/hotspot/rev/ab75b36b1c0e

I used the commands as follows to check the generated instructions.

$ javac TestSimdMlaInt.java
$ java -XX:+UnlockDiagnosticVMOptions
-XX:CompileCommand=print,TestSimdMlaInt.vectSumOfMulAdd1 TestSimdMlaInt

There are two versions of TestSimdMlaInt.vectSumOfMulAdd1 compiled by C2.
Please check the OSR version (with %) which uses vector mla instruction
with my patch. Without my patch, vector mul and add instructions are used.

Regards
Yang




On 22 November 2016 at 00:23, Andrew Haley <aph at redhat.com> wrote:

> On 16/11/16 08:28, Ningsheng Jian wrote:
> > Hi,
> >
> > NEON vector MLA instructions can not be generated in some simple
> > multiply-add cases.
> >
> > Bug:
> > https://bugs.openjdk.java.net/browse/JDK-8169697
> >
> > The following webrev contributed by Yang Zhang (yang.zhang at linaro.org)
> > can resolve it.
> >
> > Webrev:
> > http://cr.openjdk.java.net/~njian/8169697/webrev.00/
> >
> > Please help to review it. To minimize impact, this patch only changes
> > aarch64 specified code. Do you think this is OK for 9? If yes, do we
> > need a FC Extension Request?
> >
> > In the mean time, Yang also has a more generic fix for this issue,
> > which patches share code and could also fix this issue:
> >
> > http://cr.openjdk.java.net/~njian/8169697/webrev.share/
> >
> > Which do you think is better?
> >
> > Both patches tested with fastdebug jtreg.
>
> I've installed your patch to aarch64.ad, and I don't see a vectorized
> mla for the TestSimdMlaInt::vectSumOfMulAdd1 case.
>
> Please tell me exactly how you tested this, and which tree you
> patched.
>
> Thanks,
>
> Andrew.
>
>
>
>


More information about the aarch64-port-dev mailing list