Date: Fri, 23 Aug 2013 07:50:38 -0600 From: Warner Losh <imp@bsdimp.com> To: David Chisnall <theraven@FreeBSD.org> Cc: toolchain@FreeBSD.org, John-Mark Gurney <jmg@funkthat.com>, current@FreeBSD.org, "re@FreeBSD.org Engineering Team" <re@FreeBSD.org> Subject: Re: patch to add AES intrinsics to gcc Message-ID: <9D48CB3D-E3FE-4189-9A6E-FE441C6854AB@bsdimp.com> In-Reply-To: <D879DDDA-EF9D-470A-A82E-04E83DB2A7E4@FreeBSD.org> References: <20130822200902.GG94127@funkthat.com> <105E26EE-8471-49D3-AB57-FBE2779CF8D0@FreeBSD.org> <CAE-m3X324rbdP_C=az4eO-EkMcR-yFAeRG7S4q%2BMUsnMezGddw@mail.gmail.com> <5CE4B5FA-9DA0-45E4-8D67-161E0829FE6B@FreeBSD.org> <52173C8D.20608@freebsd.org> <D879DDDA-EF9D-470A-A82E-04E83DB2A7E4@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Aug 23, 2013, at 5:06 AM, David Chisnall wrote: > On 23 Aug 2013, at 11:42, Julian Elischer <julian@freebsd.org> wrote: >=20 >> no, I believe we have said that 10 would ship with clang by default. = NO mention was made about gcc being absent, and I am uncomfortable with = taking that step yet. Having gcc just present, will not hurt you.. even = after it is gone we will need to support those who will be replacing = clang with newer versions of gcc in hteir own products. >=20 > The plan is not to delete gcc from the tree, it is to disable building = gcc by default when clang is the system compiler. If you are building = products then you are perfectly at liberty to set WITH_GCC=3Dyes in your = src.conf. >=20 > Our gcc is from 2007. It has no C11, no C++11 support. It has bugs = in its atomic generation so you can't use it sensibly without lots of = inline assembly (which it doesn't support for newer architectures) for = multithreaded things. >=20 > Our libstdc++ is ancient and doesn't work with modern C++ codebases. = Putting them in the base system means that people will use them. If = anyone wants them to remain, then speak now and this will be taken as = your volunteering to: >=20 > - Maintain our forks of both gcc and libstdc++ > - Handle every single PR that is filed by people using these >=20 > If you are willing to do this, then that's great. If not, then you = are asking other people to support ancient codebases that they are not = using. Well, it isn't quite that cut and dried. The date that gcc is from is not relevant. It works today for most of = the code out there. True, it doesn't have the latest features that a = small fraction of the code needs, but it works well enough. And it also = needs to be there for some upgrade paths. There's a use for gcc, and it = will likely be needed for these paths. As such, it has to work. Doesn't = matter if it is built by default or not, it simply has to keep working = as well as it has been working for the past 5 years to fill these roles. = For these tasks the nice C++ things simply don't matter or aren't = relevant. c11 features can't be put into the base for some time still = because of the issues on other architectures. We *HAVE* to have gcc on the other architectures. clang simply isn't = ready for MIPS, and has several outstanding problems on ARM. While work = is ongoing in these areas, clang simply won't be in as good a shape for = !x86 as it is for x86 in the 10.0 time frame. So even if gcc is turned off by default in 10 on x86, it still has to = work at least well enough to build the system and bootstrap clang. = Turning it off by default or on by default doesn't change this, and the = feature set that is used in 10 will basically be frozen soon, and the = non-x86 architectures will require the MI parts continue to work. I = don't see much decay that can happen in the x86MD parts that would break = it... Warner=
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?9D48CB3D-E3FE-4189-9A6E-FE441C6854AB>