[cfe-dev] Removal of built-ins

Eric Christopher via cfe-dev cfe-dev at lists.llvm.org
Wed Jun 1 13:11:50 PDT 2016


On Wed, Jun 1, 2016 at 8:37 AM C Bergström <cfe-dev at lists.llvm.org> wrote:

> On Wed, Jun 1, 2016 at 11:26 PM, Reid Kleckner <rnk at google.com> wrote:
> > Clang has never exposed the same set of builtins as GCC, though:
> > http://clang.llvm.org/compatibility.html#vector_builtins
> >
> > I don't think we need to keep our IA32 vector builtin interface stable
> when
> > the *mmintrin.h headers already provide a stable, portable, cross-vendor
> > interface to the same functionality.
>
> I didn't mention gcc.. I agree they shouldn't be used in the wild, but
> they are..
>
> Why not leave the built-in support and under the hood just map that to
> something more portable? This is a pretty low cost (zero?) maintenance
> burden...
>
> Intentionally breaking stuff without at least giving any warning or
> marking as deprecated in a major release 1st.. Is this an exception
> because __built-ins are grey area support?
>
>
What Reid is saying has been our policy from the beginning, there's even a
script in the repository (that I sadly haven't updated in years) that helps
handle the transition between builtins and the *mmintrin.h headers.

-eric
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20160601/ff02ed40/attachment.html>


More information about the cfe-dev mailing list