Date: Sun, 7 Oct 2018 11:21:27 +0200 From: Dimitry Andric <dim@FreeBSD.org> To: Antoine Brodin <antoine@freebsd.org> Cc: src-committers <src-committers@freebsd.org>, svn-src-projects@freebsd.org Subject: Re: svn commit: r337979 - projects/clang700-import/contrib/llvm/tools/clang/lib/Basic/Targets Message-ID: <FA4B0504-8904-4482-9C91-23AFF3D92E71@FreeBSD.org> In-Reply-To: <CAALwa8mJyFeWwunq-nx=PLOMK=FFae87CHi56JbDgq8X51RFag@mail.gmail.com> References: <201808171626.w7HGQ0Sp020544@repo.freebsd.org> <CAALwa8mJyFeWwunq-nx=PLOMK=FFae87CHi56JbDgq8X51RFag@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
--Apple-Mail=_8D1B162B-12B0-484C-9C23-AC8514586B97 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=us-ascii On 7 Oct 2018, at 10:57, Antoine Brodin <antoine@freebsd.org> wrote: > > On Fri, Aug 17, 2018 at 6:26 PM Dimitry Andric <dim@freebsd.org> wrote: >> Author: dim >> Date: Fri Aug 17 16:25:59 2018 >> New Revision: 337979 >> URL: https://svnweb.freebsd.org/changeset/base/337979 >> >> Log: >> For now, revert upstream clang r323281 (by Wei Mi): >> >> Adjust MaxAtomicInlineWidth for i386/i486 targets. >> >> This is to fix the bug reported in >> https://bugs.llvm.org/show_bug.cgi?id=34347#c6. Currently, all >> MaxAtomicInlineWidth of x86-32 targets are set to 64. However, i386 >> doesn't support any cmpxchg related instructions. i486 only supports >> cmpxchg. So in this patch MaxAtomicInlineWidth is reset as follows: >> For i386, the MaxAtomicInlineWidth should be 0 because no cmpxchg is >> supported. For i486, the MaxAtomicInlineWidth should be 32 because >> it supports cmpxchg. For others 32 bits x86 cpu, the >> MaxAtomicInlineWidth should be 64 because of cmpxchg8b. >> >> Differential Revision: https://reviews.llvm.org/D42154 >> >> This should fix buildworld on i386, because of our system libraries >> missing __atomic_load_8, and possibly other 64 bit atomic functions, for >> that architecture. >> >> We should really fix that at some point, but since we have been actually >> using cmpxchg8b for years now, it does not seem to matter much... > > Hi, > > Is it possible to backport something similar on stable/11 and maybe do > an EN for 11.2? The change I reverted here was made after 6.0, so there is no need to revert in stable/11. It doesn't change the fact that we don't have 64 bit atomic support at all for i386, so this is going to keep on being an issue. In my opinion, the best solution would be to stop pretending we support "real" i486 CPUs, and raise the minimum CPU to at least i586 (but going directly towards i386-with-SSE would even be better!). -Dimitry --Apple-Mail=_8D1B162B-12B0-484C-9C23-AC8514586B97 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.2 iF0EARECAB0WIQR6tGLSzjX8bUI5T82wXqMKLiCWowUCW7nQFwAKCRCwXqMKLiCW o0eJAJ45sOYQsc0+BZwjJRhQ+n7WP4GG2gCeNl1RRKOcjsdF0Qs5fiOLfGr/Pxg= =Ry5k -----END PGP SIGNATURE----- --Apple-Mail=_8D1B162B-12B0-484C-9C23-AC8514586B97--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?FA4B0504-8904-4482-9C91-23AFF3D92E71>