Date: Mon, 20 Apr 2020 01:49:55 +0000 From: bugzilla-noreply@freebsd.org To: powerpc@FreeBSD.org Subject: [Bug 243958] net-p2p/libtorrent-rasterbar : Fails to build on FreeBSD 12.1-RELEASE-p1 powerpc 32 bit : libtorrent-rasterbar.so.1.2.3: undefined reference to `__atomic_compare_exchange_8' Message-ID: <bug-243958-25139-yqExK3ZOqk@https.bugs.freebsd.org/bugzilla/> In-Reply-To: <bug-243958-25139@https.bugs.freebsd.org/bugzilla/> References: <bug-243958-25139@https.bugs.freebsd.org/bugzilla/>
next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D243958 --- Comment #11 from Mark Millard <marklmi26-fbsd@yahoo.com> --- (In reply to Piotr Kubaj from comment #9) For head, if gcc* is to match the system clang code that is currently produced by default, gcc* needs to be told to use -maix-struct-return instead of its default -msvr4-struct-return . It will be this way until system-clang itself is updated to use the historical -msvr4-struct-return style that was in use prior to the conversion to using clang as the system compiler for 32-bit powerpc. This, unfortunately, is a mismatch with prior-to-head versions of 32-bit FreeBSD: for those -maix-struct-return in a gcc* would be wrong and would introduce an ABI difference. I'll note that, when code on head hits the ABI difference, it treats non-pointer-values as pointer values and tries to dereference or update memory through the garbage addresses. (FYI: I'm a tester of the llvm proposal, so my context is non-default for the system-clang behavior for targeting 32-bit powerpc.) --=20 You are receiving this mail because: You are on the CC list for the bug.=
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-243958-25139-yqExK3ZOqk>