[PATCH] First attempt at unwind epilogue support for powerpc{,64} (take 2)

Richard Henderson rth@redhat.com
Wed Jun 3 16:49:00 GMT 2009


Jakub Jelinek wrote:
> On Tue, Jun 02, 2009 at 01:14:11PM -0700, Richard Henderson wrote:
>> This condition ought to be pulled out to a predicate function.
>> It's complex and used more than once.
> ...
>> Could use gen_add3_insn to tidy some of this up.
> ...
>> plus_constant.
> 
> Here is a patch with the above suggestions incorporated,
> bootstrapped on powerpc64-linux --with-cpu=default32,
> regtested with both -m32 and -m64.  Ok for trunk?
> 
> 2009-06-03  Jakub Jelinek  <jakub@redhat.com>
> 
> 	* config/rs6000/rs6000.c (rs6000_emit_stack_reset): Return generated
> 	insn if it is changing sp.  Use gen_add3_insn instead of
> 	conditionally gen_addsi3 and gen_adddi3.
> 	(offset_below_red_zone_p): New static inline function.
> 	(rs6000_emit_epilogue): Emit needed epilogue unwind info.
> 	Use gen_add3_insn instead of conditionally gen_addsi3 and gen_adddi3.
> 	* config/rs6000/ppc-asm.h: Include auto-host.h.
> 	(CFI_STARTPROC, CFI_ENDPROC, CFI_DEF_CFA_REGISTER, CFI_OFFSET,
> 	CFI_RESTORE): Define.
> 	* config/rs6000/crtresxgpr.asm: Add unwind info.
> 	* config/rs6000/crtresxfpr.asm: Likewise.
> 	* config/rs6000/crtresgpr.asm: Likewise.
> 	* config/rs6000/crtresfpr.asm: Likewise.
> 	* config/rs6000/crtsavgpr.asm: Likewise.
> 	* config/rs6000/crtsavfpr.asm: Likewise.

Ok by me now, if ppc maintainers have no further objections.


r~



More information about the Gcc-patches mailing list