Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 24 Oct 2019 09:58:47 -0600
From:      Warner Losh <imp@bsdimp.com>
To:        Alexey Dokuchaev <danfe@freebsd.org>
Cc:        Dimitry Andric <dim@freebsd.org>, src-committers <src-committers@freebsd.org>,  svn-src-all <svn-src-all@freebsd.org>, svn-src-head <svn-src-head@freebsd.org>
Subject:   Re: svn commit: r353936 - head/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch
Message-ID:  <CANCZdfpeQwCpgFUzZid6NVUgjwEF1GvdtYTnqA8h8j=0QSXVNw@mail.gmail.com>
In-Reply-To: <20191024153433.GA68256@FreeBSD.org>
References:  <201910231657.x9NGvCMD039111@repo.freebsd.org> <20191024082609.GA63459@FreeBSD.org> <CANCZdfrqdy9MBX6JfrY%2BkBCQY=xZABAnS=VF7U4KWZzVo9Qj6w@mail.gmail.com> <20191024153433.GA68256@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Oct 24, 2019 at 9:34 AM Alexey Dokuchaev <danfe@freebsd.org> wrote:

> On Thu, Oct 24, 2019 at 09:14:07AM -0600, Warner Losh wrote:
> > On Thu, Oct 24, 2019 at 2:26 AM Alexey Dokuchaev <danfe@freebsd.org>
> wrote:
> > > On Wed, Oct 23, 2019 at 04:57:12PM +0000, Dimitry Andric wrote:
> > > > New Revision: 353936
> > > > URL: https://svnweb.freebsd.org/changeset/base/353936
> > > >
> > > > Log:
> > > >   Bump clang's default target CPU for the i386 architecture (aka
> > > >   "x86") to i686, as per the discussion on the freebsd-arch mailing
> > > >   list.
> > >
> > > Why i686, not i586?  i486 lacking 64-bit atomics is a sound and valid
> > > reason, but I don't understand why i586 wasn't chosen, and quick review
> > > of that -arch thread did not help.
> >
> > There were several notions at play here. First, the rest of the i386
> > ecosystem has defaulted to i686 for a long time. [...]
> >
> > i686 support by default allows better code generation and increased
> > performance. The biggest thing being using CMOVxx instructions to avoid
> > a pipeline miss due to branching, though there's likely others.
>

The other reason to do this on i386 is that we've built lib32 with i686
forever on amd64, and this makes them match. I'd forgotten that this was
mentioned in early discussions and was just reminded about that in IRC.


> > By moving to i686 by default, we have only one bump instead of two. [...]
> >
> > So that's where we are: a mix of technical and political reasons were why
> > we bumped up to i686 by default
>
> Understood.  I appreciate long and elaborate reply Warner.
>
> > Chances are this will be the last minimum bump as well before i386 is
> > removed from the tree as irrelevant (some years from now, but the day
> > will come).
>
> I hope the day never comes, as I don't want to be forced from FreeBSD to
> something else on vast majority of my hardware.
>

I hope so too. I know this change represents some hassle for  some people,
but represents an improvement for others.

Warner



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CANCZdfpeQwCpgFUzZid6NVUgjwEF1GvdtYTnqA8h8j=0QSXVNw>