[Bug 1987266] Re: test-ibm128-llround fails on ppc64el when built with gcc-12 and -O2 or higher
Dimitri John Ledkov
1987266 at bugs.launchpad.net
Thu Sep 29 10:40:35 UTC 2022
I wonder if this is fixed in:
glibc (2.36-0ubuntu2) kinetic; urgency=medium
* Add patches to fix build with GCC 12:
- d/patches/0001-Avoid-undefined-behaviour-in-ibm128-implementation-o.patch
- d/patches/0001-Ensure-calculations-happen-with-desired-rounding-mod.patch
- d/patches/0001-Fix-BZ-29463-in-the-ibm128-implementation-of-y1l-too.patch
* Switch back to building with the default GCC (i.e. 12)
* Add patches to fix incompatibility between kernel and glibc mount.h
headers (LP: #1985956):
- d/patches/0001-glibcextract.py-Add-compile_c_snippet.patch
- d/patches/0003-linux-Mimic-kernel-defition-for-BLOCK_SIZE.patch
- d/patches/0004-linux-Use-compile_c_snippet-to-check-linux-mount.h-a.patch
- d/patches/0005-linux-Fix-sys-mount.h-usage-with-kernel-headers.patch
- d/patches/0006-Linux-Fix-enum-fsconfig_command-detection-in-sys-mou.patch
* Add patch to restore DT_HASH tag/SHT_HASH section (see
https://sourceware.org/bugzilla/show_bug.cgi?id=29456):
- d/patches/restore-libc-DT_HASH.patch
* Add nss/tst-reload2 to xfails as it fails in autopkgtests in check_prof
run.
** Bug watch added: Sourceware.org Bugzilla #29456
https://sourceware.org/bugzilla/show_bug.cgi?id=29456
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to glibc in Ubuntu.
https://bugs.launchpad.net/bugs/1987266
Title:
test-ibm128-llround fails on ppc64el when built with gcc-12 and -O2 or
higher
Status in GLibC:
New
Status in The Ubuntu-power-systems project:
New
Status in glibc package in Ubuntu:
New
Bug description:
root at kinetic:~/build# ./elf/ld.so --library-path .:math ./math/test-ibm128-llround
testing long double (without inline functions)
Failure: llround (0x7fffffffffffffff.8p0): Exception "Invalid operation" not set
Failure: llround_downward (0x7fffffffffffffff.8p0): Exception "Invalid operation" not set
Failure: llround_towardzero (0x7fffffffffffffff.8p0): Exception "Invalid operation" not set
Failure: llround_upward (0x7fffffffffffffff.8p0): Exception "Invalid operation" not set
Test suite completed:
1156 test cases plus 656 tests for exception flags and
656 tests for errno executed.
4 errors occurred.
Recompiling math/s_llroundl.os with gcc-11 or with gcc-12 -O1 is
enough to fix this. Looking at the disassembly though I'm completely
confused, feraiseexcept (FE_INVALID); is still getting called in the
failing case and the code that runs after that looks the same (I've
spent far too long trying to debug this). I've uploaded the .o files
to https://people.canonical.com/~mwh/good.o and
https://people.canonical.com/~mwh/bad.o -- good luck to the next
person!
A potential fix is here:
https://sourceware.org/pipermail/libc-alpha/2022-August/141547.html
For more details and discussions have a look at the attached upstream
bug.
To manage notifications about this bug go to:
https://bugs.launchpad.net/glibc/+bug/1987266/+subscriptions
More information about the foundations-bugs
mailing list