RFR (M): 8145688: Update for x86 pow in the math lib

Deshpande, Vivek R vivek.r.deshpande at intel.com
Wed Dec 23 00:55:53 UTC 2015


Hi Vladimir

Please find the updated webrev for pow at this location for your review.
http://cr.openjdk.java.net/~vdeshpande/libm_pow/8145688/webrev.00/
Bug ID: https://bugs.openjdk.java.net/browse/JDK-8145688
Thank you.

Regards,
Vivek

-----Original Message-----
From: Vladimir Kozlov [mailto:vladimir.kozlov at oracle.com] 
Sent: Monday, December 21, 2015 12:43 PM
To: Deshpande, Vivek R; hotspot-compiler-dev at openjdk.java.net
Cc: Viswanathan, Sandhya
Subject: Re: RFR (M): 8145688: Update for x86 pow in the math lib

Hi Vivek.

Also always use {}:

+       if (VM_Version::supports_sse3())
           StubRoutines::_dlog = generate_libmLog();
+       StubRoutines::_dpow = generate_libmPow();

I see fast_log() is using movddup() sse3 instruction. Can you replace it with sse2 equivalent and have conditional code generation depending on sse3 presence instead of limiting it in stubGenerator?

And please add comments to all #endif in macroAssembler_x86_libm.cpp. I forgot to ask that in previous changes.
When #ifdef block is big we put comment to see what scope is that:

#endif // _LP64

#endif // !_LP64

Thanks,
Vladimir

On 12/18/15 7:05 PM, Deshpande, Vivek R wrote:
> Hi all
>
> I would like to contribute a patch which optimizes Math.pow() for 64 and 32 bit X86 architecture using Intel LIBM
>   implementation.
>
> This passes all the jtreg test in hotspot and PowTests.java in jdk/tests/java/lang/Math.
>
> Could you please review and sponsor this patch.
>
> Bug-id:
>
> https://bugs.openjdk.java.net/browse/JDK-8145688
> webrev:
>
> http://cr.openjdk.java.net/~mcberg/8145688/webrev.02/
>
> Thanks and regards,
>
> Vivek
>


More information about the hotspot-compiler-dev mailing list