This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
S/390: Clean up EH_RETURN_HANDLER_RTX
- From: Ulrich Weigand <weigand at i1 dot informatik dot uni-erlangen dot de>
- To: gcc-patches at gcc dot gnu dot org
- Date: Wed, 30 Jul 2003 19:31:36 +0200 (MET DST)
- Subject: S/390: Clean up EH_RETURN_HANDLER_RTX
Hello,
this cleans up the definition of EH_RETURN_HANDLER_RTX by replacing
'magic numbers' with a meaningful symbolic expression.
Bootstrapped/regtested on s390-ibm-linux and s390x-ibm-linux.
ChangeLog:
* config/s390/s390.h (EH_RETURN_HANDLER_RTX): Compute offset
symbolically.
Index: gcc/config/s390/s390.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/s390/s390.h,v
retrieving revision 1.79
diff -c -p -r1.79 s390.h
*** gcc/config/s390/s390.h 22 Jul 2003 17:38:14 -0000 1.79
--- gcc/config/s390/s390.h 30 Jul 2003 17:32:58 -0000
*************** extern int current_function_outgoing_arg
*** 600,606 ****
#define EH_RETURN_DATA_REGNO(N) ((N) < 4 ? (N) + 6 : INVALID_REGNUM)
#define EH_RETURN_HANDLER_RTX \
gen_rtx_MEM (Pmode, plus_constant (arg_pointer_rtx, \
! TARGET_64BIT? -48 : -40))
/* Select a format to encode pointers in exception handling data. */
#define ASM_PREFERRED_EH_DATA_FORMAT(CODE, GLOBAL) \
--- 600,606 ----
#define EH_RETURN_DATA_REGNO(N) ((N) < 4 ? (N) + 6 : INVALID_REGNUM)
#define EH_RETURN_HANDLER_RTX \
gen_rtx_MEM (Pmode, plus_constant (arg_pointer_rtx, \
! -STACK_POINTER_OFFSET + UNITS_PER_WORD*RETURN_REGNUM))
/* Select a format to encode pointers in exception handling data. */
#define ASM_PREFERRED_EH_DATA_FORMAT(CODE, GLOBAL) \
--
Dr. Ulrich Weigand
weigand@informatik.uni-erlangen.de