[aarch64-port-dev ] [16] RFR(S): 8251525: AARCH64: Faster Math.signum(fp)
Dmitry Chuyko
dmitry.chuyko at bell-sw.com
Wed Sep 2 10:01:13 UTC 2020
Andrew, thank you very much for the review.
Vladimir Ivanov pointed that constructed nested nodes must be introduced
to gvn, otherwise there is potentially a violated assert. Here is an
updated change with correct creation of constant nodes and a few minor
cleanups:
http://cr.openjdk.java.net/~dchuyko/8251525/webrev.05/
-Dmitry
On 9/1/20 6:48 PM, Andrew Haley wrote:
> On 31/08/2020 15:28, Dmitry Chuyko wrote:
>> Here is another version of intrinsics. It is an extension of webrev.03.
>> Additional thing is that constants 0 and 1 that are used internally by
>> intrinics are constructed as nodes. This is somehow similar to what is
>> done for passing pointers to tables.
>>
>> webrev: http://cr.openjdk.java.net/~dchuyko/8251525/webrev.04/
>> results:
>> http://cr.openjdk.java.net/~dchuyko/8251525/webrev.04/benchmarks/signum-facgt_ir-copysign.ods
> Hi,
>
> Thank you. That certainly looks better.
>
> It's unfortunate that signum doesn't help in all cases, but I'm happy
> that we have something positive in general. Certainly the code looks
> nice. I'm still rather baffled that an intrinsification of copySign
> actually makes things much worse on blackhole on Neoverse N1, but it
> doesn't really matter because the copySign intrinsic isn't enabled by
> default. So please go ahead with this version.
>
> Having said all of that, it's a fairly minor improvement for some
> considerable complexity. And it depends terribly on the
> micorarchitecture of a particular part, albeit an important one.
>
More information about the hotspot-compiler-dev
mailing list