8212043: Request for help with Submit Failure

Andrew Dinn adinn at redhat.com
Thu Dec 13 17:25:22 UTC 2018

Hi Pengfei,

On 13/12/2018 09:41, Pengfei Li (Arm Technology China) wrote:
> Hi Andrew Dinn,
>> Pengfei, I think a portable way to define +/-INFINITY will be to use the values
>> 1.0D/0.0D or -1.0D/0.0D.
>> We might want to introduce some local defines for them.
>> I'm just checking that this definition works on AArch64 (it ought to as it uses
>> gcc) and will then resubmit to see if sparc also accepts it.
> This is my rebased webrev with the INFINITY issue fixed.
> http://cr.openjdk.java.net/~pli/rfr/8212043/webrev.02/
> The +/-INFINITY definitions for float/double are added into type.cpp/hpp. 
> I've tested the build on x86 and AArch64 and it's good. Hope other platforms wouldn't be broken this time.
Bad news again, Pengfei :-/. I pushed your latest patch and got the
errors below (see after sig :-).

I don't know for sure what the actual errors are but I suspect that the
relevant compilers will not bite on the expression (1.0/0.0). It seems
that defining +/-INFINITY in a portable way is going to require some work.

One option would be to replicate the approach employed in


which clearly must work on all platforms.

File fdlibm.h defines macros HI and LO (also HIp and LOp) for accessing
and updating floats and doubles as one or two 32 bit ints. HI can be
used to read or set float bits or the 'top' bits of doubles. LO is used
to read or set the 'bottom' bits of doubles.

fdlibm.h includes the relevant version of endian.h to ensure it respects
respects endianness.

So, you could use these macros to initialise the relevant float and
double constants to the correct bit patterns.


Andrew Dinn
Senior Principal Software Engineer
Red Hat UK Ltd
Registered in England and Wales under Company Registration No. 03798903
Directors: Michael Cunningham, Michael ("Mike") O'Neill, Eric Shander

----- 8< -------- 8< -------- 8< -------- 8< -------- 8< -------- 8< ---

Build Details: 2018-12-13-1216576.adinn.source
0 Failed Tests
Mach5 Tasks Results Summary

    FAILED: 0
    NA: 0
    KILLED: 0
    PASSED: 27

        10 Executed with failure
            macosx-x64-macosx-x64-build-5 error while building, return
value: 2
            macosx-x64-debug-macosx-x64-build-6 error while building,
return value: 2
            macosx-x64-open-macosx-x64-build-7 error while building,
return value: 2
            macosx-x64-open-debug-macosx-x64-build-8 error while
building, return value: 2
            solaris-sparcv9-solaris-sparcv9-build-9 error while
building, return value: 2
            solaris-sparcv9-debug-solaris-sparcv9-build-10 error while
building, return value: 2
            windows-x64-windows-x64-build-11 error while building,
return value: 2
            windows-x64-debug-windows-x64-build-12 error while building,
return value: 2
            windows-x64-open-windows-x64-build-13 error while building,
return value: 2
            windows-x64-open-debug-windows-x64-build-14 error while
building, return value: 2
        3 Not run
            macosx-x64-install-macosx-x64-build-16 Dependency task
failed: mach5...1213-1219-14490-macosx-x64-macosx-x64-build-5
            solaris-sparcv9-install-solaris-sparcv9-build-17 Dependency
task failed: mach5...14490-solaris-sparcv9-solaris-sparcv9-build-9
            windows-x64-install-windows-x64-build-18 Dependency task
failed: sCTahmBZKo


        36 Not run

Dependency task failed:

Dependency task failed:

Dependency task failed:

Dependency task failed:

Dependency task failed: sCTahmBZKo

Dependency task failed: sCTahmB0Ko

Dependency task failed:

tier1-debug-open_test_hotspot_jtreg_tier1_compiler_1-windows-x64-debug-30 Dependency
task failed: sCTahmB0Ko

Dependency task failed:

tier1-debug-open_test_hotspot_jtreg_tier1_compiler_2-windows-x64-debug-33 Dependency
task failed: sCTahmB0Ko
            See all 36...

More information about the hotspot-compiler-dev mailing list