[aarch64-port-dev ] RFR: 8135231: add support for vectorizing double precision sqrt
Andrew Haley
aph at redhat.com
Wed Sep 23 09:28:57 UTC 2015
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.
>
> I have tested this with JTreg hotspot+langtools with no regressions.
>
> There is a trivial change to
> test/compiler/loopopts/superword/SumRedSqrt_Double.java
>
> -* @requires os.arch=="x86" | os.arch=="amd64" | os.arch=="x86_64"
> +* @requires os.arch=="x86" | os.arch=="amd64" | os.arch=="x86_64" |
> os.arch=="aarch64"
>
> I am not clear whether this change means that the change requires
> sponsoring and pushing through JPRT, but if so could someone do this.
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); \
+ }
+
Andrew.
More information about the aarch64-port-dev
mailing list