This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: patch to improve i386 epilogue (version 6)
- To: John Wehle <john at feith dot com>
- Subject: Re: patch to improve i386 epilogue (version 6)
- From: Jeffrey A Law <law at cygnus dot com>
- Date: Mon, 12 Oct 1998 11:05:51 -0600
- cc: egcs-patches at cygnus dot com
- Reply-To: law at cygnus dot com
In message <199810112256.SAA21491@jwlab.FEITH.COM>you write:
> [ This version is in principle identical to version 5. It has
> been updated to match the current source tree and to include
> some suggestions by Jeff. ]
>
> This change allows gcc to skip the loading of the stack pointer
> when it is already known to contain the proper value.
>
> ChangeLog:
>
> Sun Oct 11 16:49:15 EDT 1998 John Wehle (john@feith.com)
>
> * flow.c: Update comment.
> (notice_stack_pointer_modification): New static function.
> (record_volatile_insns): Use it.
> (mark_regs_live_at_end): Mark the stack pointer as alive
> at the end of the function if current_function_sp_is_unchanging
> is set.
> (life_analysis_1): Set current_function_sp_is_unchanging.
> * function.c: Define it.
> (init_function_start): Initialize it.
> * output.h: Declare it.
> * reorg.c (fill_simple_delay_slots, dbr_schedule): Mark
> the stack pointer as alive at the end of the function if
> current_function_sp_is_unchanging is set.
> * i386.c (ix86_epilogue): Optimize the restoring
> of the stack pointer.
I added a prototype for notice_stack_pointer_modification and installed your
patch. Thanks! Sorry it took so long to sort out.
jeff