[PATCH] 8217561 : X86: Add floating-point Math.min/max intrinsics

Bhateja, Jatin jatin.bhateja at intel.com
Tue Jan 29 13:11:02 UTC 2019

Hi Nils,

This failure will occur even when intrinsification for Max[FD]/Min[FD] which this patch supported is disabled.

Try passing another option -XX:DisableIntrinsic=_maxD  and test will still assert with non-intrinsified jitt'ed code, test case is not correct since its doing
an assert over direct floating point comparison.

Will update the patch.


From: hotspot-compiler-dev [mailto:hotspot-compiler-dev-bounces at openjdk.java.net] On Behalf Of Nils Eliasson
Sent: Tuesday, January 29, 2019 4:14 PM
To: hotspot-compiler-dev at openjdk.java.net
Subject: Re: [PATCH] 8217561 : X86: Add floating-point Math.min/max intrinsics

Hi again,

I can get the test to fail in the -XX:-TieredCompilation case:

java.lang.AssertionError: Unexpected result of double min/maxa = 4.823909266625017E17, b = -3.3333333333333331E17, result = (-3.333334338197927E17, 4.823908261760423E17), expected = (-3.3333333333333331E17, 4.823909266625017E17)

        at compiler.intrinsics.math.TestFpMinMaxIntrinsics.dTest(TestFpMinMaxIntrinsics.java:113)

        at java.base/java.util.Spliterators$ArraySpliterator.forEachRemaining(Spliterators.java:948)

        at java.base/java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:658)

        at compiler.intrinsics.math.TestFpMinMaxIntrinsics.main(TestFpMinMaxIntrinsics.java:124)

        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

        at java.base/java.lang.reflect.Method.invoke(Method.java:567)

        at com.sun.javatest.regtest.agent.MainWrapper$MainThread.run(MainWrapper.java:127)

        at java.base/java.lang.Thread.run(Thread.java:835)

Allow compilation of the methods in the test:


And add a loop in the main method, so the test case is run multiple times.



On 2019-01-29 11:02, Nils Eliasson wrote:

Hi Jatin,

The diffs in your webrev have the wrong permissions - they return "403 - Forbidden".

The patch is readable though, so I will have a look.


On 2019-01-29 05:18, Bhateja, Jatin wrote:
Hi All,

Please find attached a patch for intrinsification for java library methods Math.max and Math.min  for scalar floating point types (float and double).

New intrinsics match the semantics of java library function and takes care of NaN and signed zero operands.

Webrev : http://cr.openjdk.java.net/~sviswanathan/8217561/webrev.01/

Kindly review.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.java.net/pipermail/hotspot-compiler-dev/attachments/20190129/07695dc4/attachment.html>

More information about the hotspot-compiler-dev mailing list