[U-Boot] [PATCH] usb: use noinline define

Marek Vasut marek.vasut at gmail.com
Thu Apr 5 22:24:14 CEST 2012


Dear Mike Frysinger,

> On Thursday 05 April 2012 15:19:11 Marek Vasut wrote:
> > Dear Mike Frysinger,
> > 
> > > On Thursday 05 April 2012 06:13:21 Marek Vasut wrote:
> > > > Dear Mike Frysinger,
> > > > 
> > > > > Building usb for Blackfin boards fails as we get linux/compiler.h
> > > > > included which expands the "noinline" inside of the attribute and
> > > > > we get attribute(attribute(noinline)).
> > > > > 
> > > > > Explicitly use the helper define to avoid this.
> > > > 
> > > > Ain't compiler.h broken then?
> > > 
> > > no ... why would it be ?
> > 
> > Because it colides with gcc stuff?
> 
> it provides shortcuts so you don't have to go grubbing into __attribute__
> syntax, and it does so in a way that supports multiple gcc versions and
> compilers (although the latter isn't generally a realistic use case for
> us).

U-Boot/LLVM or U-Boot/VC ? ;-)

We'll have to support LLVM eventually anyway.

> if you really want to be pedantic, you should be using:
> 	__attribute__((__noinline__))
> instead of:
> 	__attribute__((noinline))

Good point

> > > > Btw. is this a fix I should push to .04 release?
> > > 
> > > i looked closer at how exactly it's failing, and i think waiting for
> > > the next merge window is OK if you want
> > 
> > I'm fine either way as I don't observe this. On the other hand, I'd be
> > inclined to push this into current release if you're 100% sure about the
> > fix and it fixes real issue for some people.
> 
> in general, i wouldn't mind seeing common.h including linux/compiler.h and
> just having everyone use these shortcuts instead of open coding the
> attribute. i'm sure that would break more code (like this common/usb.c) in
> the short term, but it'd be much nicer imo long term.

Ok, will queue this for -next then.

> -mike

Best regards,
Marek Vasut


More information about the U-Boot mailing list