echristo added a comment.

In https://reviews.llvm.org/D30415#705889, @echristo wrote:

> In https://reviews.llvm.org/D30415#705196, @uweigand wrote:
>
> > In https://reviews.llvm.org/D30415#704761, @echristo wrote:
> >
> > > In https://reviews.llvm.org/D30415#703652, @uweigand wrote:
> > >
> > > > I'm a bit confused by this discussion.  -faltivec and -maltivec are 
> > > > simply aliases, they do exactly the same thing; the clang-internal 
> > > > variable OPT_faltivec indicates the use of either -faltivec or 
> > > > -maltivec.
> > >
> > >
> > > They didn't used to, I arranged it so that they did (technically breaking 
> > > gcc compatibility) a while ago.
> >
> >
> > Well, mainline GCC doesn't have -faltivec at all and never had, I think 
> > this was only an Apple GCC extension ...  Not sure what exactly the 
> > semantics of that was.
>
>
> Sure it does and has for years. Check out rs6000/darwin.h :)
>
> FWIW: It turns on maltivec and adds a -include of altivec.h
>
> >>> Or is the suggestion to simply remove the alias -faltivec, and leave 
> >>> -maltivec as-is?  I'd be less opposed to this since it probably breaks 
> >>> fewer users ... but I'm still not quite sure what it actually buys us.   
> >>> And in any case the patch currently under discussion here would still be 
> >>> necessary then, to fix -maltivec -mno-altivec ...
> >> 
> >> No, remove faltivec and move forward with -maltivec/-mno-altivec but you 
> >> should be able to remove a lot of the special handling at that point.
> > 
> > I'm still confused as to what exactly you're refering to here.  As far as I 
> > can see, every single thing triggered by -faltivec / -maltivec in the 
> > compiler frontend would still be needed exactly the same if we only 
> > supported the -maltivec option name.  So the only thing we'd save is 
> > literally the two lines in include/clang/Driver/Options.td that set up the 
> > alias.
> > 
> > Do you have an example of the "special handling" to remove you're thinking 
> > of?
>
> Nearly all of the code in lib/Driver/ToolChains/Clang.cpp and 
> lib/Driver/ToolChains/Arch/PPC.cpp that deal with altivec. Simplifying the 
> interface by getting rid of needing to check multiple options.


I have a patch to do this now. I'll plan on committing it in a bit.

-eric


https://reviews.llvm.org/D30415



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to