On Tue, 27 Aug 2024 10:54:11 GMT, Andrew Haley <a...@openjdk.org> wrote:

>> src/hotspot/cpu/x86/stubGenerator_x86_64_tanh.cpp line 437:
>> 
>>> 435:   __ mulpd(xmm1, xmm1);
>>> 436:   __ movdqu(xmm4, ExternalAddress(pv + 32), r11 /*rscratch*/);
>>> 437:   __ mulpd(xmm2, xmm1);
>> 
>> I would encourage either you add detailed comments or give meaningful names 
>> to the registers to ease the review process.
>
> I agree, this is all rather obscure. Ideally the same names that are used in 
> wherever this comes from.
> 
> Where does the algorithm come from? What are its accuracy guarantees?
> 
> In addition, given the rarity of hyperbolic tangents in Java applications, do 
> we need this?

@theRealAph, this implementation is based on Intel libm math library and meets 
the accuracy requirements. The algorithm is provided in the comments.

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/20657#discussion_r1733589125

Reply via email to