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.