This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Put scope blocks on a diet


> 
> I did this, but then I wonder...  How come the differences in decl
> uids arise from inlining of removed variables, if the patch was
> supposed to take effect only after inlining?
> 
> As it turns out, looking at the code, I get the impression that
> cfun->after_inline determines whether the function was inlined into,

cfun->after_inline is set after fixup_cfg that removes extra edges from
cfg otherwise needed by inliner, so we really ought not to inline that
function after that point.
On mainline fixup_cfg is executed after apply_inline, so it should be
safe.

Honza
> rather than whether it has already been inlined into every point it
> would be throughout the current compilation.  Is this not so?
> 
> If it is, then the test is meaningless.  The problem arises when we
> change the declarations in a function's logical blocks and then inline
> into others.
> 
> What am I missing?
> 
> -- 
> Alexandre Oliva         http://www.lsd.ic.unicamp.br/~oliva/
> FSF Latin America Board Member         http://www.fsfla.org/
> Red Hat Compiler Engineer   aoliva@{redhat.com, gcc.gnu.org}
> Free Software Evangelist  oliva@{lsd.ic.unicamp.br, gnu.org}


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]