[aarch64-port-dev ] RFR(M): 8196402: AARCH64: create intrinsic for Math.log

White, Derek Derek.White at cavium.com
Tue Jun 19 23:45:06 UTC 2018


Hi Dmitrij,

I have a few questions and comments, mostly because my FP knowledge is so rusty.

src/hotspot/cpu/aarch64/macroAssembler_aarch64_log.cpp:

 - Line 68: Could align to 64 bytes. We're going to load the first 64 bytes, may as well use one cache line.

 - Lines 71, 77, 79. You could comment these lines with "_coeff", "_log2", and "_L_tbl", for clearer correspondence to x86 code.

- Line 204: I believe that we should be looking for equal to 0.0:
204 //      if (X = 0.0d) return -INFINITY;

- The (float)(zeroExponent(X) code was fun.

- Are there any concerns about denormalized inputs? I didn't see any obvious problem in the code pulling aaprt and adding in exponents, but there's nothing obvious in that code to me.

- The RETURN_MINF_OR_NAN block can generate a wide range of signaling and non-signaling NaNs. I forget how signaling Nans are treated in the Java math mode - are they just treated as quiet NaNs or are they never supposed to appear?

Looks good otherwise!

- Derek



> -----Original Message-----
> From: aarch64-port-dev [mailto:aarch64-port-dev-
> bounces at openjdk.java.net] On Behalf Of Andrew Haley
> Sent: Tuesday, June 19, 2018 2:02 PM
> To: Dmitrij Pochepko <dmitrij.pochepko at bell-sw.com>
> Cc: aarch64-port-dev at openjdk.java.net
> Subject: Re: [aarch64-port-dev ] RFR(M): 8196402: AARCH64: create intrinsic
> for Math.log
> 
> On 06/18/2018 07:53 PM, Dmitrij Pochepko wrote:
> > I added lots of documentation in a same manner as in Math::sin/cos patch.
> >
> > Please take a look at updated webrev:
> > http://cr.openjdk.java.net/~dpochepk/8196402/webrev.05/
> 
> Very nice!  Same review comments as sin/cos.  Thanks.



More information about the aarch64-port-dev mailing list