On Sun, Aug 5, 2018 at 5:49 PM, Dimitry Andric <dimi...@andric.com> wrote: > On 3 Aug 2018, at 13:37, Hans Wennborg via Release-testers > <release-test...@lists.llvm.org> wrote: >> >> 7.0.0-rc1 was just tagged (from the branch at r338847). >> >> It's early in the release process, but I'd like to find out what the >> status is of the branch on our various platforms. >> >> Please run the test script, share the results, and upload binaries. > > Hmm, I'm running into a rather nasty snag now on i386-freebsd11, due to our > lack of atomic 64 bit primitives; Phase2's configure dies with: > > -- Performing Test HAVE_CXX_ATOMICS_WITHOUT_LIB > -- Performing Test HAVE_CXX_ATOMICS_WITHOUT_LIB - Success > -- Performing Test HAVE_CXX_ATOMICS64_WITHOUT_LIB > -- Performing Test HAVE_CXX_ATOMICS64_WITHOUT_LIB - Failed > -- Looking for __atomic_load_8 in atomic > -- Looking for __atomic_load_8 in atomic - not found > CMake Error at cmake/modules/CheckAtomic.cmake:75 (message): > Host compiler appears to require libatomic, but cannot find it. > > Interestingly, Phase1 does *not* suffer from this, but there the "host > compiler" is clang 6.0.0. > > Phase1 CMake output: > > Performing C++ SOURCE FILE Test HAVE_CXX_ATOMICS64_WITHOUT_LIB succeeded > with the following output: > Change Dir: > /home/dim/llvm/7.0.0/rc1/Phase1/Release/llvmCore-7.0.0-rc1.obj/CMakeFiles/CMakeTmp > > Run Build Command:"/usr/local/bin/gmake" "cmTC_845df/fast" > /usr/local/bin/gmake -f CMakeFiles/cmTC_845df.dir/build.make > CMakeFiles/cmTC_845df.dir/build > gmake[1]: Entering directory > '/home/dim/llvm/7.0.0/rc1/Phase1/Release/llvmCore-7.0.0-rc1.obj/CMakeFiles/CMakeTmp' > Building CXX object CMakeFiles/cmTC_845df.dir/src.cxx.o > /usr/bin/c++ -DHAVE_CXX_ATOMICS64_WITHOUT_LIB -std=c++11 > -Werror=unguarded-availability-new -o CMakeFiles/cmTC_845df.dir/src.cxx.o > -c > /home/dim/llvm/7.0.0/rc1/Phase1/Release/llvmCore-7.0.0-rc1.obj/CMakeFiles/CMakeTmp/src.cxx > Linking CXX executable cmTC_845df > /usr/local/bin/cmake -E cmake_link_script > CMakeFiles/cmTC_845df.dir/link.txt --verbose=1 > /usr/bin/c++ -DHAVE_CXX_ATOMICS64_WITHOUT_LIB -std=c++11 > -Werror=unguarded-availability-new CMakeFiles/cmTC_845df.dir/src.cxx.o -o > cmTC_845df -lm > gmake[1]: Leaving directory > '/home/dim/llvm/7.0.0/rc1/Phase1/Release/llvmCore-7.0.0-rc1.obj/CMakeFiles/CMakeTmp' > > Source file was: > > #include <atomic> > #include <cstdint> > std::atomic<uint64_t> x (0); > int main() { > uint64_t i = x.load(std::memory_order_relaxed); > return 0; > } > > Phase2 CMake output: > > Performing C++ SOURCE FILE Test HAVE_CXX_ATOMICS64_WITHOUT_LIB failed > with the following output: > Change Dir: > /home/dim/llvm/7.0.0/rc1/Phase2/Release/llvmCore-7.0.0-rc1.obj/CMakeFiles/CMakeTmp > > Run Build Command:"/usr/local/bin/gmake" "cmTC_720f3/fast" > /usr/local/bin/gmake -f CMakeFiles/cmTC_720f3.dir/build.make > CMakeFiles/cmTC_720f3.dir/build > gmake[1]: Entering directory > '/home/dim/llvm/7.0.0/rc1/Phase2/Release/llvmCore-7.0.0-rc1.obj/CMakeFiles/CMakeTmp' > Building CXX object CMakeFiles/cmTC_720f3.dir/src.cxx.o > > /home/dim/llvm/7.0.0/rc1/Phase1/Release/llvmCore-7.0.0-rc1.install/usr/local/bin/clang++ > -DHAVE_CXX_ATOMICS64_WITHOUT_LIB -std=c++11 > -Werror=unguarded-availability-new -o CMakeFiles/cmTC_720f3.dir/src.cxx.o > -c > /home/dim/llvm/7.0.0/rc1/Phase2/Release/llvmCore-7.0.0-rc1.obj/CMakeFiles/CMakeTmp/src.cxx > Linking CXX executable cmTC_720f3 > /usr/local/bin/cmake -E cmake_link_script > CMakeFiles/cmTC_720f3.dir/link.txt --verbose=1 > > /home/dim/llvm/7.0.0/rc1/Phase1/Release/llvmCore-7.0.0-rc1.install/usr/local/bin/clang++ > -DHAVE_CXX_ATOMICS64_WITHOUT_LIB -std=c++11 > -Werror=unguarded-availability-new CMakeFiles/cmTC_720f3.dir/src.cxx.o -o > cmTC_720f3 -lm > CMakeFiles/cmTC_720f3.dir/src.cxx.o: In function `main': > src.cxx:(.text+0x33): undefined reference to `__atomic_load_8' > clang-7: error: linker command failed with exit code 1 (use -v to see > invocation) > gmake[1]: *** [CMakeFiles/cmTC_720f3.dir/build.make:98: cmTC_720f3] Error > 1 > gmake[1]: Leaving directory > '/home/dim/llvm/7.0.0/rc1/Phase2/Release/llvmCore-7.0.0-rc1.obj/CMakeFiles/CMakeTmp' > gmake: *** [Makefile:126: cmTC_720f3/fast] Error 2 > > Source file was: > > #include <atomic> > #include <cstdint> > std::atomic<uint64_t> x (0); > int main() { > uint64_t i = x.load(std::memory_order_relaxed); > return 0; > } > > Apparently, with clang 6.0 it didn't generate libcalls to atomic functions, > but just put in cmpxchg8b's, I guess? And with clang 7.0 this seems to have > changed. > > For now, I can only test on amd64 due to this, since I don't have an easy > workaround.
This doesn't sound so good, but I'm glad we found out early. Did you file a bug to track this? (Sorry if you already did, I haven't read through the list today.) Thanks, Hans _______________________________________________ lldb-dev mailing list lldb-dev@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev