r188906 - Centralize the handling of -target-feature.

Lang Hames lhames at gmail.com
Thu Nov 28 22:58:28 PST 2013


Thanks for that Rafael!


On Sat, Nov 23, 2013 at 6:41 AM, Rafael EspĂ­ndola <
rafael.espindola at gmail.com> wrote:

> r195551
>
> On 29 October 2013 00:03, Rafael EspĂ­ndola <rafael.espindola at gmail.com>
> wrote:
> > On 28 October 2013 23:28, Lang Hames <lhames at gmail.com> wrote:
> >> Hi Rafael,
> >>
> >> I noticed that as a consequence of this patch, clang is issuing the
> >> following warning when assembling for arm:
> >>
> >> "'+soft-float-abi' is not a recognized feature for this target (ignoring
> >> feature)"
> >>
> >> You can reproduce this (at least on Darwin, and I expect on Linux too)
> by
> >> creating an empty foo.s file and running:
> >>
> >> clang -arch armv7 -c foo.s
> >>
> >> It looks like the cause of the warning is that both Clang::ConstructJob
> and
> >> ClangAs::ConstructJob are both calling getARMTargetFeatures (indirectly
> via
> >> getTargetFeatures), and getARMTargetFeatures always adds the
> abi-appropriate
> >> flag, even when the driver was being invoked as an assembler.
> >>
> >> I'm not very familiar with the driver code, so I didn't want to jump in
> and
> >> undo any of the useful parts of your refactor to fix this.
> >>
> >> Do you have any thoughts on the right way to omit this flag when
> assembling?
> >
> > Good question. These are odd "feature, but not really". It looks like
> > the driver passes them as features because that is all that TargetInfo
> > in "clang -cc1" will see. Some options would be
> >
> > * Don't pass this information as features. Call them TargetOptions or
> > something like that and add a  virtual bool handleTargetOption.
> > * Make them real features (attached patch).
> > * Pass a flag to getARMTargetFeatures so that it knows the target
> > features are being collected for the assembler.
> >
> > Daniel, you added this back in r91755 along with the "this is a hack"
> > FIXME. What was the direction you wanted this to take?
> >
> > Cheers,
> > Rafael
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20131128/6b8207dd/attachment.html>


More information about the cfe-commits mailing list