[PATCH] testsuite: mips: use noinline attribute instead of -fno-inline

Xi Ruoyao xry111@mengyan1223.wang
Thu Jun 24 17:02:29 GMT 2021

On Thu, 2021-06-24 at 10:48 -0600, Jeff Law wrote:
> On 6/22/2021 1:05 AM, Xi Ruoyao via Gcc-patches wrote:
> > mips.exp does not support -fno-inline, causing the tests return
> > "ERROR:
> > Unrecognised option: -fno-inline for dg-options ... ".
> > 
> > Use noinline attribute like other mips target tests, to workaround
> > it.
> > 
> > gcc/testsuite/
> > 
> >         * gcc.target/mips/cfgcleanup-jalr2.c: Remove -fno-inline and
> > add
> >           __attribute__((noinline)).
> >         * gcc.target/mips/cfgcleanup-jalr3.c: Likewise.
> I'd like to know a bit more here.  mips.exp shouldn't care about the 
> options passed to the compiler and to the best of my knowledge 
> -fno-inline is still a valid GCC option.  So while I don't think the 
> patch itself is wrong, I question if it's necessary and whether or not
> your just papering over some other issue.

There is some logic processing options in mips.exp.  Some options are
overrided for multilib.  It seems the mips.exp was originally designed

* MIPS options should go in dg-options
* Other options should go in dg-additional-options

In d2148424165 marxin merged some dg-additional-options into dg-options,
exploited the problem.

And, the "origin" convention seems already broken: there is something
like -funroll-loops which is not a MIPS option, but accepted by mips.exp
in dg-options.

Possiblities are:

(1) this patch
(2) make mips.exp accept -fno-inline as "if it is a MIPS option"
(3) refactor mips.exp to pass everything itself doesn't know directly to
Xi Ruoyao <xry111@mengyan1223.wang>

More information about the Gcc-patches mailing list