Date: Mon, 28 Nov 2016 11:05:48 +0000 From: bugzilla-noreply@freebsd.org To: freebsd-bugs@FreeBSD.org Subject: [Bug 214902] head -r309179 buildworld on powerpc64 via clang 3.9.0: llvm::sys::CompareAndSwap and llvm::sys::MemoryFence undefined so build stops Message-ID: <bug-214902-8@https.bugs.freebsd.org/bugzilla/>
next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D214902 Bug ID: 214902 Summary: head -r309179 buildworld on powerpc64 via clang 3.9.0: llvm::sys::CompareAndSwap and llvm::sys::MemoryFence undefined so build stops Product: Base System Version: CURRENT Hardware: powerpc OS: Any Status: New Severity: Affects Only Me Priority: --- Component: bin Assignee: freebsd-bugs@FreeBSD.org Reporter: markmi@dsl-only.net [The powerpc64 self-hosted buildworld failure is for undefined references to llvm::sys::CompareAndSwap and llvm::sys::MemoryFence. See later below.] I cross built TARGET_ARCH=3Dpowerpc64 head -r309179 via . . . (has workaround matching -r309201 and my PowerMac G5 booting hack) buildworld via clang 3.9.0 and it using powerpc64-binutils buildkernel via powerpc-xtoolchain-gcc (and so powerpc64-binutils) and installed and booted the combination: # uname -apKU FreeBSD FBSDG5L 12.0-CURRENT FreeBSD 12.0-CURRENT #1 r309179M: Mon Nov 28 01:23:26 PST 2016=20=20=20=20 markmi@FreeBSDx64:/usr/obj/powerpc64vtsc_xtoolchain_kernel/powerpc.powerpc6= 4/usr/src/sys/GENERIC64vtsc-NODBG powerpc powerpc64 1200017 1200017 # clang --version FreeBSD clang version 3.9.0 (tags/RELEASE_390/final 280324) (based on LLVM 3.9.0) Target: powerpc64-unknown-freebsd12.0 Thread model: posix InstalledDir: /usr/bin I then attempted a self-hosted buildworld but it failed with: Building /usr/obj/powerpc64vtsc_clang_altbinutils_world/powerpc.powerpc64/usr/src/tm= p/usr/src/usr.bin/clang/clang-tblgen/clang-tblgen.full --- clang-tblgen.full --- /usr/obj/powerpc64vtsc_clang_altbinutils_world/powerpc.powerpc64/usr/src/tm= p/usr/src/lib/clang/libllvmminimal/libllvmminimal.a(ManagedStatic.o): In function `getManagedStaticMutex()': /usr/src/contrib/llvm/lib/Support/ManagedStatic.cpp:(.text+0x1c4): undefined reference to `llvm::sys::CompareAndSwap(unsigned int volatile*, unsigned in= t, unsigned int)' /usr/src/contrib/llvm/lib/Support/ManagedStatic.cpp:(.text+0x1d8): undefined reference to `llvm::sys::MemoryFence()' /usr/src/contrib/llvm/lib/Support/ManagedStatic.cpp:(.text+0x220): undefined reference to `llvm::sys::MemoryFence()' clang++: error: linker command failed with exit code 1 (use -v to see invocation) *** [clang-tblgen.full] Error code 1 make[3]: stopped in /usr/src/usr.bin/clang/clang-tblgen .ERROR_TARGET=3D'clang-tblgen.full' .ERROR_META_FILE=3D'/usr/obj/powerpc64vtsc_clang_altbinutils_world/powerpc.= powerpc64/usr/src/tmp/usr/src/usr.bin/clang/clang-tblgen/clang-tblgen.full.= meta' .MAKE.LEVEL=3D'3' MAKEFILE=3D'' .MAKE.MODE=3D'meta missing-filemon=3Dyes missing-meta=3Dyes silent=3Dyes ve= rbose' .CURDIR=3D'/usr/src/usr.bin/clang/clang-tblgen' .MAKE=3D'make' .OBJDIR=3D'/usr/obj/powerpc64vtsc_clang_altbinutils_world/powerpc.powerpc64= /usr/src/tmp/usr/src/usr.bin/clang/clang-tblgen' .TARGETS=3D'all' DESTDIR=3D'' LD_LIBRARY_PATH=3D'' MACHINE=3D'powerpc' MACHINE_ARCH=3D'powerpc64' MAKEOBJDIRPREFIX=3D'/usr/obj/powerpc64vtsc_clang_altbinutils_world/powerpc.= powerpc64/usr/src/tmp' MAKESYSPATH=3D'/usr/src/share/mk' MAKE_VERSION=3D'20160818' PATH=3D'/usr/obj/powerpc64vtsc_clang_altbinutils_world/powerpc.powerpc64/us= r/src/tmp/legacy/usr/sbin:/usr/obj/powerpc64vtsc_clang_altbinutils_world/po= werpc.powerpc64/usr/src/tmp/legacy/usr/bin:/usr/obj/powerpc64vtsc_clang_alt= binutils_world/powerpc.powerpc64/usr/src/tmp/legacy/bin:/sbin:/bin:/usr/sbi= n:/usr/bin' SRCTOP=3D'/usr/src' OBJTOP=3D'/usr/obj/powerpc64vtsc_clang_altbinutils_world/powerpc.powerpc64/= usr/src/tmp/usr/src' .MAKE.MAKEFILES=3D'/usr/src/share/mk/sys.mk /usr/src/share/mk/local.sys.env= .mk /usr/src/share/mk/src.sys.env.mk /root/src.configs/src.conf.powerpc64-clang_altbinutils-bootstrap.powerpc64-= host /usr/src/share/mk/bsd.mkopt.mk /usr/src/share/mk/bsd.suffixes.mk /root/src.configs/make.conf /usr/src/share/mk/local.sys.mk /usr/src/share/mk/src.sys.mk /dev/null /usr/src/usr.bin/clang/clang-tblgen/Makefile /usr/src/usr.bin/clang/llvm.prog.mk /usr/src/lib/clang/llvm.pre.mk /usr/src/lib/clang/llvm.build.mk /usr/src/tools/build/mk/bsd.prog.mk /usr/src/share/mk/bsd.prog.mk /usr/src/share/mk/bsd.init.mk /usr/src/share/mk/bsd.opts.mk /usr/src/share/mk/bsd.cpu.mk /usr/src/share/mk/local.init.mk /usr/src/share/mk/src.init.mk /usr/src/usr.bin/clang/clang-tblgen/../Makefile.inc /usr/src/usr.bin/clang/clang-tblgen/../../Makefile.inc /usr/src/share/mk/bsd.own.mk /usr/src/share/mk/bsd.compiler.mk /usr/src/share/mk/bsd.compiler.mk /usr/src/share/mk/bsd.libnames.mk /usr/src/share/mk/src.libnames.mk /usr/src/share/mk/src.opts.mk /usr/src/share/mk/bsd.nls.mk /usr/src/share/mk/bsd.confs.mk /usr/src/share/mk/bsd.files.mk /usr/src/share/mk/bsd.incs.mk /usr/src/share/mk/bsd.links.mk /usr/src/share/mk/bsd.dep.mk /usr/src/share/mk/bsd.clang-analyze.mk /usr/src/share/mk/bsd.obj.mk /usr/src/share/mk/bsd.subdir.mk /usr/src/share/mk/bsd.sys.mk /usr/src/tools/build/mk/Makefile.boot' .PATH=3D'. /usr/src/usr.bin/clang/clang-tblgen /usr/src/contrib/llvm/tools/clang/utils/TableGen' 1 error . . . # less /usr/obj/powerpc64vtsc_clang_altbinutils_world/powerpc.powerpc64/usr/src/tm= p/usr/src/usr.bin/clang/clang-tblgen/clang-tblgen.full.meta # Meta data file /usr/obj/powerpc64vtsc_clang_altbinutils_world/powerpc.powerpc64/usr/src/tm= p/usr/src/usr.bin/clang/clang-tblgen/clang-tblgen.full.meta CMD /usr/bin/clang++ -B /usr/local/powerpc64-freebsd/bin/ -O2 -pipe -I/usr/obj/powerpc64vtsc_clang_altbinutils_world/powerpc.powerpc64/usr/src/= tmp/usr/src/lib/clang/libllvm -I/usr/src/lib/clang/include -I/usr/src/contrib/llvm/include -DLLVM_ON_UNIX -DLLVM_ON_FREEBSD -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -DLLVM_DEFAULT_TARGET_TRIPLE=3D\"powerpc64-unknown-freebsd12.0\" -DLLVM_HOST_TRIPLE=3D\"powerpc64-unknown-freebsd12.0\" -DDEFAULT_SYSROOT=3D\"/usr/obj/powerpc64vtsc_clang_altbinutils_world/powerp= c.powerpc64/usr/src/tmp\" -g -Qunused-arguments -I/usr/obj/powerpc64vtsc_clang_altbinutils_world/powerpc.powerpc64/usr/src/= tmp/legacy/usr/include -std=3Dc++11 -fno-exceptions -fno-rtti -stdlib=3Dlibc++ -Wno-c++11-extensio= ns=20 -static -L/usr/obj/powerpc64vtsc_clang_altbinutils_world/powerpc.powerpc64/usr/src/= tmp/legacy/usr/lib -o clang-tblgen.full ClangASTNodesEmitter.o ClangAttrEmitter.o ClangCommentCommandInfoEmitter.o ClangCommentHTMLNamedCharacterReferenceEmitter.o ClangCommentHTMLTagsEmitte= r.o ClangDiagnosticsEmitter.o ClangSACheckersEmitter.o NeonEmitter.o TableGen.o /usr/obj/powerpc64vtsc_clang_altbinutils_world/powerpc.powerpc64/usr/src/tm= p/usr/src/lib/clang/libllvmminimal/libllvmminimal.a -lncursesw -lpthread -legacy CWD /usr/obj/powerpc64vtsc_clang_altbinutils_world/powerpc.powerpc64/usr/src/tm= p/usr/src/usr.bin/clang/clang-tblgen TARGET clang-tblgen.full -- command output -- /usr/obj/powerpc64vtsc_clang_altbinutils_world/powerpc.powerpc64/usr/src/tm= p/usr/src/lib/clang/libllvmminimal/libllvmminimal.a(ManagedStatic.o): In function `getManagedStaticMutex()': /usr/src/contrib/llvm/lib/Support/ManagedStatic.cpp:(.text+0x1c4): undefined reference to `llvm::sys::CompareAndSwap(unsigned int volatile*, unsigned in= t, unsigned int)' /usr/src/contrib/llvm/lib/Support/ManagedStatic.cpp:(.text+0x1d8): undefined reference to `llvm::sys::MemoryFence()' /usr/src/contrib/llvm/lib/Support/ManagedStatic.cpp:(.text+0x220): undefined reference to `llvm::sys::MemoryFence()' clang++: error: linker command failed with exit code 1 (use -v to see invocation) *** Error code 1 . . . # svnlite info /usr/src/ | grep "Re[lpv]" Relative URL: ^/head Repository Root: https://svn0.us-west.freebsd.org/base Repository UUID: ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f Revision: 309179 Last Changed Rev: 309179 --=20 You are receiving this mail because: You are the assignee for the bug.=
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-214902-8>