https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=250755
Dimitry Andric <d...@freebsd.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |arichard...@freebsd.org --- Comment #4 from Dimitry Andric <d...@freebsd.org> --- The bump to i686 was originally committed to head in base r353936, after base r352030 bumped it to i586 at first. On 2020-01-07, so already 11 months ago, this was all merged back to stable/12 in base r356460, as part of the clang 9.0.0 merge. Similarly, on 2020-05-05 for stable/11, in base r360658. In any case, I have tried buiding stable/12 world with base r353936 and base r352030 reverted, so effectively going back to i486 as default: Index: contrib/llvm-project/clang/lib/Driver/ToolChains/Arch/X86.cpp =================================================================== --- contrib/llvm-project/clang/lib/Driver/ToolChains/Arch/X86.cpp (revision 367228) +++ contrib/llvm-project/clang/lib/Driver/ToolChains/Arch/X86.cpp (working copy) @@ -94,7 +94,7 @@ switch (Triple.getOS()) { case llvm::Triple::FreeBSD: - return "i686"; + //return "i686"; FALLTHROUGH case llvm::Triple::NetBSD: case llvm::Triple::OpenBSD: return "i486"; However, this leads to a -Werror problem again: --- atomic.o --- /usr/src/contrib/llvm-project/compiler-rt/lib/builtins/atomic.c:178:3: error: large atomic operation may incur significant performance penalty [-Werror,-Watomic-alignment] LOCK_FREE_CASES(); ^ /usr/src/contrib/llvm-project/compiler-rt/lib/builtins/atomic.c:160:9: note: expanded from macro 'LOCK_FREE_CASES' LOCK_FREE_ACTION(uint64_t); \ ^ /usr/src/contrib/llvm-project/compiler-rt/lib/builtins/atomic.c:176:21: note: expanded from macro 'LOCK_FREE_ACTION' *((type *)dest) = __c11_atomic_load((_Atomic(type) *)src, model); \ ^ 1 error generated. *** [atomic.o] Error code 1 Originally we have -Wno-atomic-alignment in libcompiler_rt's Makefile, but we removed it base r364782, because: > After base r364753, there should be no need to suppress -Watomic-alignment > warnings anymore for compiler-rt's atomic.c. This occurred because the > IS_LOCK_FREE_8 macro was not correctly defined to 0 for mips, and this > caused the compiler to emit a runtime call to __atomic_is_lock_free(), > and that triggers the warning. However, the changes in base r364753 are not enough for this particular warning. Alex, you also worked on these warnings upstream, right? I think we could probably add __i386__ to the following line in contrib/llvm-project/compiler-rt/lib/builtins/atomic.c to work around it (optionally with a check if the target CPU is really < i586): /// 32 bit MIPS and PowerPC don't support 8-byte lock_free atomics #if defined(__mips__) || (!defined(__powerpc64__) && defined(__powerpc__)) -- You are receiving this mail because: You are the assignee for the bug. _______________________________________________ freebsd-bugs@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/freebsd-bugs To unsubscribe, send any mail to "freebsd-bugs-unsubscr...@freebsd.org"