This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH][3.3] PR 7257 (flag_inline_functions doesn't show upwith -fverbose-asm)
Steven Bosscher <s dot bosscher at student dot tudelft dot 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