public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug libstdc++/103146] New: [12 Regression] libstdc++-v3 bootstrap failure on 32-bit BE powerpc since r12-4952
@ 2021-11-09  4:26 asolokha at gmx dot com
  2021-11-09  7:27 ` [Bug libstdc++/103146] " pinskia at gcc dot gnu.org
                   ` (5 more replies)
  0 siblings, 6 replies; 7+ messages in thread
From: asolokha at gmx dot com @ 2021-11-09  4:26 UTC (permalink / raw)
  To: gcc-bugs

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

            Bug ID: 103146
           Summary: [12 Regression] libstdc++-v3 bootstrap failure on
                    32-bit BE powerpc since r12-4952
           Product: gcc
           Version: 12.0
            Status: UNCONFIRMED
          Keywords: build
          Severity: normal
          Priority: P3
         Component: libstdc++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: asolokha at gmx dot com
  Target Milestone: ---
            Target: powerpc-e300c3-linux-gnu

libstdc++-v3 shipped w/ gcc-12.0.0-alpha20211107 snapshot
(g:962ff7d2849e1fa6a1fe0535aa2dec5c2b9a32a6) fails to build because of missing
__builtin_darn():

libtool: compile: 
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.0_alpha20211107/work/build/./gcc/xgcc
-shared-libgcc
-B/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.0_alpha20211107/work/build/./gcc
-nostdinc++
-L/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.0_alpha20211107/work/build/powerpc-e300c3-linux-gnu/libstdc++-v3/src
-L/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.0_alpha20211107/work/build/powerpc-e300c3-linux-gnu/libstdc++-v3/src/.libs
-L/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.0_alpha20211107/work/build/powerpc-e300c3-linux-gnu/libstdc++-v3/libsupc++/.libs
-B/usr/powerpc-e300c3-linux-gnu/bin/ -B/usr/powerpc-e300c3-linux-gnu/lib/
-isystem /usr/powerpc-e300c3-linux-gnu/include -isystem
/usr/powerpc-e300c3-linux-gnu/sys-include
-I/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.0_alpha20211107/work/gcc-12-20211107/libstdc++-v3/../libgcc
-I/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.0_alpha20211107/work/build/powerpc-e300c3-linux-gnu/libstdc++-v3/include/powerpc-e300c3-linux-gnu
-I/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.0_alpha20211107/work/build/powerpc-e300c3-linux-gnu/libstdc++-v3/include
-I/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.0_alpha20211107/work/gcc-12-20211107/libstdc++-v3/libsupc++
-std=gnu++11 -D_GLIBCXX_SHARED -fno-implicit-templates -Wall -Wextra
-Wwrite-strings -Wcast-qual -Wabi=2 -fdiagnostics-show-location=once
-ffunction-sections -fdata-sections -frandom-seed=random.lo -g -O2
-D_GNU_SOURCE -c
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.0_alpha20211107/work/gcc-12-20211107/libstdc++-v3/src/c++11/random.cc
 -fPIC -DPIC -D_GLIBCXX_SHARED -o random.o
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.0_alpha20211107/work/gcc-12-20211107/libstdc++-v3/src/c++11/random.cc:
In function 'unsigned int std::{anonymous}::__ppc_darn(void*)':
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-12.0.0_alpha20211107/work/gcc-12-20211107/libstdc++-v3/src/c++11/random.cc:147:22:
error: '__builtin_darn' was not declared in this scope; did you mean
'__builtin_tan'?
  147 |       uint64_t val = __builtin_darn();
      |                      ^~~~~~~~~~~~~~
      |                      __builtin_tan

Is the corresponding check really sufficient for PowerISA before 3.0?

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Bug libstdc++/103146] [12 Regression] libstdc++-v3 bootstrap failure on 32-bit BE powerpc since r12-4952
  2021-11-09  4:26 [Bug libstdc++/103146] New: [12 Regression] libstdc++-v3 bootstrap failure on 32-bit BE powerpc since r12-4952 asolokha at gmx dot com
@ 2021-11-09  7:27 ` pinskia at gcc dot gnu.org
  2021-11-09  7:31 ` pinskia at gcc dot gnu.org
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: pinskia at gcc dot gnu.org @ 2021-11-09  7:27 UTC (permalink / raw)
  To: gcc-bugs

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

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|---                         |12.0

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Bug libstdc++/103146] [12 Regression] libstdc++-v3 bootstrap failure on 32-bit BE powerpc since r12-4952
  2021-11-09  4:26 [Bug libstdc++/103146] New: [12 Regression] libstdc++-v3 bootstrap failure on 32-bit BE powerpc since r12-4952 asolokha at gmx dot com
  2021-11-09  7:27 ` [Bug libstdc++/103146] " pinskia at gcc dot gnu.org
@ 2021-11-09  7:31 ` pinskia at gcc dot gnu.org
  2021-11-09  8:44 ` redi at gcc dot gnu.org
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: pinskia at gcc dot gnu.org @ 2021-11-09  7:31 UTC (permalink / raw)
  To: gcc-bugs

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

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2021-11-09
     Ever confirmed|0                           |1

--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
(In reply to Arseny Solokha from comment #0)
> Is the corresponding check really sufficient for PowerISA before 3.0?

Hmm:
#ifdef USE_DARN
    unsigned int
    __attribute__((target("cpu=power9")))
    __ppc_darn(void*)
    {
      const uint64_t failed = -1;
      unsigned int retries = 10;
      uint64_t val = __builtin_darn();
      while (val == failed) [[__unlikely__]]
        {
          if (--retries == 0)
            std::__throw_runtime_error(__N("random_device: darn failed"));
          val = __builtin_darn();
        }
      return (uint32_t)val;
    }
#endif

BU_P9_MISC_0 (DARN_32,          "darn_32",              MISC, darn_32)
BU_P9_64BIT_MISC_0 (DARN_RAW,   "darn_raw",             MISC, darn_raw)
BU_P9_64BIT_MISC_0 (DARN,       "darn",                 MISC, darn)

Confirmed.  __builtin_darn is only enabled for 64bit while __builtin_darn_32 is
enabled for both.

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Bug libstdc++/103146] [12 Regression] libstdc++-v3 bootstrap failure on 32-bit BE powerpc since r12-4952
  2021-11-09  4:26 [Bug libstdc++/103146] New: [12 Regression] libstdc++-v3 bootstrap failure on 32-bit BE powerpc since r12-4952 asolokha at gmx dot com
  2021-11-09  7:27 ` [Bug libstdc++/103146] " pinskia at gcc dot gnu.org
  2021-11-09  7:31 ` pinskia at gcc dot gnu.org
@ 2021-11-09  8:44 ` redi at gcc dot gnu.org
  2021-11-09 11:51 ` rguenth at gcc dot gnu.org
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: redi at gcc dot gnu.org @ 2021-11-09  8:44 UTC (permalink / raw)
  To: gcc-bugs

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

Jonathan Wakely <redi at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Assignee|unassigned at gcc dot gnu.org      |redi at gcc dot gnu.org
             Status|NEW                         |ASSIGNED

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Bug libstdc++/103146] [12 Regression] libstdc++-v3 bootstrap failure on 32-bit BE powerpc since r12-4952
  2021-11-09  4:26 [Bug libstdc++/103146] New: [12 Regression] libstdc++-v3 bootstrap failure on 32-bit BE powerpc since r12-4952 asolokha at gmx dot com
                   ` (2 preceding siblings ...)
  2021-11-09  8:44 ` redi at gcc dot gnu.org
@ 2021-11-09 11:51 ` rguenth at gcc dot gnu.org
  2021-11-09 15:14 ` cvs-commit at gcc dot gnu.org
  2021-11-09 15:16 ` redi at gcc dot gnu.org
  5 siblings, 0 replies; 7+ messages in thread
From: rguenth at gcc dot gnu.org @ 2021-11-09 11:51 UTC (permalink / raw)
  To: gcc-bugs

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

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P3                          |P1

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Bug libstdc++/103146] [12 Regression] libstdc++-v3 bootstrap failure on 32-bit BE powerpc since r12-4952
  2021-11-09  4:26 [Bug libstdc++/103146] New: [12 Regression] libstdc++-v3 bootstrap failure on 32-bit BE powerpc since r12-4952 asolokha at gmx dot com
                   ` (3 preceding siblings ...)
  2021-11-09 11:51 ` rguenth at gcc dot gnu.org
@ 2021-11-09 15:14 ` cvs-commit at gcc dot gnu.org
  2021-11-09 15:16 ` redi at gcc dot gnu.org
  5 siblings, 0 replies; 7+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2021-11-09 15:14 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #2 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Jonathan Wakely <redi@gcc.gnu.org>:

https://gcc.gnu.org/g:d9ebf0ce0845046cdd0cb40c598072bd1d91362c

commit r12-5057-gd9ebf0ce0845046cdd0cb40c598072bd1d91362c
Author: Jonathan Wakely <jwakely@redhat.com>
Date:   Tue Nov 9 09:34:23 2021 +0000

    libstdc++: Do not use 64-bit DARN on 32-bit powerpc [PR103146]

    We need to use the 64-bit DARN to detect failure without bias, but it's
    not available in 32-bit mode.

    libstdc++-v3/ChangeLog:

            PR libstdc++/103146
            * src/c++11/random.cc: Check __powerpc64__ not __powerpc__.

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Bug libstdc++/103146] [12 Regression] libstdc++-v3 bootstrap failure on 32-bit BE powerpc since r12-4952
  2021-11-09  4:26 [Bug libstdc++/103146] New: [12 Regression] libstdc++-v3 bootstrap failure on 32-bit BE powerpc since r12-4952 asolokha at gmx dot com
                   ` (4 preceding siblings ...)
  2021-11-09 15:14 ` cvs-commit at gcc dot gnu.org
@ 2021-11-09 15:16 ` redi at gcc dot gnu.org
  5 siblings, 0 replies; 7+ messages in thread
From: redi at gcc dot gnu.org @ 2021-11-09 15:16 UTC (permalink / raw)
  To: gcc-bugs

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

Jonathan Wakely <redi at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         Resolution|---                         |FIXED
             Status|ASSIGNED                    |RESOLVED

--- Comment #3 from Jonathan Wakely <redi at gcc dot gnu.org> ---
It should be fixed, but I don't have a power64 BE machine with a new-enough
glibc to check it. Please reopen this bug if it's still a problem.

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2021-11-09 15:16 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-11-09  4:26 [Bug libstdc++/103146] New: [12 Regression] libstdc++-v3 bootstrap failure on 32-bit BE powerpc since r12-4952 asolokha at gmx dot com
2021-11-09  7:27 ` [Bug libstdc++/103146] " pinskia at gcc dot gnu.org
2021-11-09  7:31 ` pinskia at gcc dot gnu.org
2021-11-09  8:44 ` redi at gcc dot gnu.org
2021-11-09 11:51 ` rguenth at gcc dot gnu.org
2021-11-09 15:14 ` cvs-commit at gcc dot gnu.org
2021-11-09 15:16 ` redi at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).