https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106574

            Bug ID: 106574
           Summary: gcc 12 with O3 leads to failures in glibc's y1f128
                    tests
           Product: gcc
           Version: 12.1.1
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c
          Assignee: unassigned at gcc dot gnu.org
          Reporter: michael.hudson at canonical dot com
  Target Milestone: ---

Initially reported here, but more likely to be a gcc issue: if I build glibc
with gcc 12 and -O3 (as is the default in Debian/Ubuntu) I get this failure:

(kinetic-amd64)root@anduril:/build/glibc-EA2Jch/glibc-2.36/build-tree/amd64-libc#
./elf/ld-linux-x86-64.so.2 --library-path .:./elf:./math 
./math/test-float128-y1
testing _Float128 (without inline functions)
Failure: Test: y1_downward (0x1.c1badep+0)
Result:
 is:         -2.49850711930108135145795303826944004e-01 
-0x1.ffb1bae4fa20118544b142160f5fp-3
 should be:  -2.49850711930108135145795303826943836e-01 
-0x1.ffb1bae4fa20118544b142160f58p-3
 difference:  1.68518870133883137142398069976181140e-34  
0x1.c000000000000000000000000000p-113
 ulp       :  7.0000
 max.ulp   :  5.0000
Maximal error of `y1_downward'
 is      : 7 ulp
 accepted: 5 ulp

Test suite completed:
  216 test cases plus 212 tests for exception flags and
    212 tests for errno executed.
  2 errors occurred.

Building the e_j1f128.os object with -O2 or with gcc-11 fixes the failure.

Not sure how to reduce this to a smaller test case, but I'm happy to try
things.

Reply via email to