[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