On Tue, Oct 15, 2019 at 12:47:02PM -0500, Peter Bergner wrote:
> On 10/15/19 4:56 AM, Segher Boessenkool wrote:
> > On Tue, Oct 15, 2019 at 05:15:07PM +0800, Jiufu Guo wrote:
> >> And another issue: Behavior is still inconsistent between "-mno-vsx
> >> -flto" and "-mno-vsx" for user code. Previous patch makes it consistent
> >> between "-mvsx -flto" and "-mvsx". 
> > 
> >>  $GCC_BUILD/gcc/xgcc -B$GCC_BUILD/gcc novsx.c -O2 -mno-vsx
> >> /home/guojiufu/temp/novsx.c: In function 'main':
> >> /home/guojiufu/temp/novsx.c:6:1: error: inlining failed in call to 
> >> 'always_inline' 'foo': target specific option mismatch
> > 
> > So what should we do about this?  There are arguments for *both*
> > behaviours, and apparently with LTO we do not know which flags are
> > explicit?
> 
> I'd say this is user error, telling the compiler it has to inline the callee
> function, but then using incompatible options on the caller and the callee,
> so that it cannot.  I think the error message is the correct thing here.

Everything here is -mno-vsx though?  The always_inline "foo" has it as
target attribute, but everyone (also) has it from the command line arg?


Segher

Reply via email to