This is the mail archive of the gcc-bugs@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]

[Bug tree-optimization/54779] split FRAME variables back into pieces


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54779

--- Comment #5 from Eric Botcazou <ebotcazou at gcc dot gnu.org> ---
> Eric, to what extent would this patch suffice?  It detects situations
> when an array is the only thing preventing a local scalar from being
> totally replaced disappearing and if it also complies with a number of
> conditions (most importantly, it must not be accessed as whole, only
> its elements), it creates a separate array and changes all array
> references to use that.  While it most certainly isn't as powerful as
> your specialized patch, it also works on non-FRAMEs and is good enough
> to break them up in your testcase (and its slightly more complex
> variant included as the second testcase in the patch).

The last sentence seems to comprise the answer.  The purpose of the patch is to
eliminate _all traces_ of the non-local frame when all the nested functions are
inlined, without any restrictions whatsoever.  The idea is that this artificial
construct must die when everything is unnested.


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