https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111558

Jeffrey A. Law <law at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|---                         |INVALID

--- Comment #4 from Jeffrey A. Law <law at gcc dot gnu.org> ---
This is behaving per design.  The basic idea behind shrink wrapping is to push
prologue instructions into deeper control nests and hoist epilogue instructions
into deeper control nests.  That reduces the dynamic instruction counts.

That may mean we end up with more static copies of the saves and restores, but
the dynamic count will be lower. 

LLVM is in the process of improving their shrink wrapping code to behave more
like GCC's as it ultimately results in better performance.

Reply via email to