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: PR 41469 followup: improve __builtin_stack_restore removal


On 11/04/2009 02:06 PM, Eric Botcazou wrote:
This breaks the newly enabled ACATS test cb1010c at -O on x86-64: a
__builtin_stack_restore just before a RESX is eliminated in a cleanup.

I presume that's wrong...

It's only wrong if the RESX resolves within the function, i.e. the block has successors. If there are no successors to the bb, then we're about to (effectively) perform a longjmp, and there's no point in keeping the stack restore.


But we already check for zero successors or a single EXIT successor, so I'm not sure what's wrong with the current code. Can you describe the failure in more detail, or do I need to debug it myself.


r~



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