[aarch64-port-dev ] RFR: 8135231: add support for vectorizing double precision sqrt
Edward Nevill
edward.nevill at gmail.com
Wed Sep 23 16:52:07 UTC 2015
On Wed, Sep 23, 2015 at 10:28 AM, Andrew Haley <aph at redhat.com> wrote:
> Hi,
>
> On 22/09/15 19:30, Edward Nevill wrote:
>
> > http://cr.openjdk.java.net/~enevill/8135231/webrev/
> >
> > JIRA issue: https://bugs.openjdk.java.net/browse/JDK-8135231
> >
> > This adds support for vector double sqrt for aarch64.
>
> This is an instance of the pattern "AdvSIMD two-reg misc". Please use
> it.
>
> + void fsqrt(FloatRegister Vd, SIMD_Arrangement T, FloatRegister Vn) {
> \
> + starti;
> \
> + assert(T == T2S || T == T4S || T == T2D, "invalid arrangement");
> \
> + f(0, 21), f((int)T & 1, 30), f(0b1011101, 29, 23);
> \
> + f(T==T2D ? 1:0, 22), f(0b100001111110, 21, 10), rf(Vn, 5), rf(Vd, 0);
> \
> + }
> +
>
I have rewritten this as
+#define ASSERTION (T == T2S || T == T4S || T == T2D)
+ INSN(fsqrt, 1, 0b11111);
+#undef ASSERTION
+
New webrev
http://cr.openjdk.java.net/~enevill/8135231/webrev.02
Thanks for your help,
Ed.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/hotspot-compiler-dev/attachments/20150923/a591dfc3/attachment.html>
More information about the hotspot-compiler-dev
mailing list