[PATCH][3.3] PR 7257 (flag_inline_functions doesn't show up with -fverbose-asm)

Zack Weinberg zack@codesourcery.com
Mon Apr 7 16:05:00 GMT 2003


Steven Bosscher <s.bosscher@student.tudelft.nl> writes:

> Op za 05-04-2003, om 21:22 schreef Zack Weinberg:
>> Here is my suggestion:  Add a boolean field to the langhooks
>> structure, uses_rtl_inliner.  The default for this field is false.
>> Make the Fortran and Ada front ends override it to true.  (I think
>> those are the only statement-at-a-time front ends left.)  Then remove
>> flag_inline_trees entirely.  Instead, have both the RTL and tree
>> inliners look at flag_inline_functions to decide what to do, but
>> disable each one entirely if uses_rtl_inliner says so.
>
> Something like this?  Bootstrapped and regtested on i586-pc-linux-gnu.

Still not quite what I had in mind.  You shouldn't have to frob
flag_inline_functions at all; you should have the tree inliner
use the same logic that the RTL inliner uses, to decide whether
to inline functions explicitly marked so.  That should make this

> ! /* Until the RTL inliner finally dies for real, this flag has twisted
> !    semantics.
> ! 
> !    If the front end uses the tree inliner,
> !    0 means we should not perform inlining.
> !    1 means we should expand functions calls inline at the tree level.
> !    2 means we should consider *all* functions to be inline candidates.
> ! 
> !    For front ends still using the RTL inliner, nonzero means it is ok
> !    to inline at the RTL level all functions that look like good inline
> !    candidates.  */

unnecessary.

> Frankly I like the other fix better.

Is this because of the above?  If not, could you say why you prefer
the other fix?

zw



More information about the Gcc-patches mailing list