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

            Bug ID: 82012
           Summary: [8 Regression] libitm build fails for s390x-linux-gnu
           Product: gcc
           Version: 7.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: libitm
          Assignee: unassigned at gcc dot gnu.org
          Reporter: jsm28 at gcc dot gnu.org
  Target Milestone: ---
            Target: s390x-linux-gnu

Created attachment 42063
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=42063&action=edit
Preprocessed source

The build of libitm fails for x390x-linux-gnu:

/scratch/jmyers/glibc/many8/build/compilers/s390x-linux-gnu/gcc/./gcc/xg++
-B/scratch/jmyers/glibc/many8/build/compilers/s390x-linux-gnu/gcc/./gcc/
-nostdinc++ -nostdinc++
-I/scratch/jmyers/glibc/many8/build/compilers/s390x-linux-gnu/gcc/s390x-glibc-linux-gnu/libstdc++-v3/include/s390x-glibc-linux-gnu
-I/scratch/jmyers/glibc/many8/build/compilers/s390x-linux-gnu/gcc/s390x-glibc-linux-gnu/libstdc++-v3/include
-I/scratch/jmyers/glibc/many8/src/gcc/libstdc++-v3/libsupc++
-I/scratch/jmyers/glibc/many8/src/gcc/libstdc++-v3/include/backward
-I/scratch/jmyers/glibc/many8/src/gcc/libstdc++-v3/testsuite/util
-L/scratch/jmyers/glibc/many8/build/compilers/s390x-linux-gnu/gcc/s390x-glibc-linux-gnu/libstdc++-v3/src
-L/scratch/jmyers/glibc/many8/build/compilers/s390x-linux-gnu/gcc/s390x-glibc-linux-gnu/libstdc++-v3/src/.libs
-L/scratch/jmyers/glibc/many8/build/compilers/s390x-linux-gnu/gcc/s390x-glibc-linux-gnu/libstdc++-v3/libsupc++/.libs
-B/scratch/jmyers/glibc/many8/build/compilers/s390x-linux-gnu/gcc/s390x-glibc-linux-gnu/libstdc++-v3/src/.libs
-B/scratch/jmyers/glibc/many8/build/compilers/s390x-linux-gnu/gcc/s390x-glibc-linux-gnu/libstdc++-v3/libsupc++/.libs
-B/scratch/jmyers/glibc/many8/install/compilers/s390x-linux-gnu/s390x-glibc-linux-gnu/bin/
-B/scratch/jmyers/glibc/many8/install/compilers/s390x-linux-gnu/s390x-glibc-linux-gnu/lib/
-isystem
/scratch/jmyers/glibc/many8/install/compilers/s390x-linux-gnu/s390x-glibc-linux-gnu/include
-isystem
/scratch/jmyers/glibc/many8/install/compilers/s390x-linux-gnu/s390x-glibc-linux-gnu/sys-include
-DHAVE_CONFIG_H -I. -I/scratch/jmyers/glibc/many8/src/gcc/libitm
-I/scratch/jmyers/glibc/many8/src/gcc/libitm/config/linux/s390
-I/scratch/jmyers/glibc/many8/src/gcc/libitm/config/linux
-I/scratch/jmyers/glibc/many8/src/gcc/libitm/config/s390
-I/scratch/jmyers/glibc/many8/src/gcc/libitm/config/posix
-I/scratch/jmyers/glibc/many8/src/gcc/libitm/config/generic
-I/scratch/jmyers/glibc/many8/src/gcc/libitm -ftls-model=initial-exec -mzarch
-mhtm -Wall -pthread -Werror -std=gnu++0x -funwind-tables -fno-exceptions
-fno-rtti -fabi-version=4 -g -O2 -D_GNU_SOURCE -MT beginend.lo -MD -MP -MF
.deps/beginend.Tpo -c /scratch/jmyers/glibc/many8/src/gcc/libitm/beginend.cc 
-fPIC -DPIC -o .libs/beginend.o

In file included from
/scratch/jmyers/glibc/many8/src/gcc/libitm/libitm_i.h:39:,
                 from
/scratch/jmyers/glibc/many8/src/gcc/libitm/beginend.cc:25:
/scratch/jmyers/glibc/many8/src/gcc/libitm/local_atomic: In static member
function 'static uint32_t GTM::gtm_thread::begin_transaction(uint32_t, const
gtm_jmpbuf*)':
/scratch/jmyers/glibc/many8/src/gcc/libitm/local_atomic:589:7: error: inlining
failed in call to always_inline 'std::__atomic_base<_IntTp>::__int_type
std::__atomic_base<_IntTp>::fetch_add(std::__atomic_base<_IntTp>::__int_type,
std::memory_order) noexcept [with _ITp = long unsigned int]': target specific
option mismatch
       fetch_add(__int_type __i,
       ^~~~~~~~~
/scratch/jmyers/glibc/many8/src/gcc/libitm/beginend.cc:395:36: note: called
from here
       tx->id = global_tid.fetch_add(tid_block_size, memory_order_relaxed);
                ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

The build was OK at r251332, failed at r251358.  I suspect the bug 81921
changes (r251333) of being the cause, but don't know if the problem is in the
compiler or in libitm itself.

Preprocessed source attached.

Reply via email to