diff options
author | Anthony Green <green@gcc.gnu.org> | 2010-11-21 03:49:21 +0000 |
---|---|---|
committer | Anthony Green <green@gcc.gnu.org> | 2010-11-21 03:49:21 +0000 |
commit | 8812e4d5dd6f5ff0cac16c22bfe41986d92cb959 (patch) | |
tree | 8f2987194d0cb64c65d09ede9ba10efe18d56713 | |
parent | 52ae149de0588e84b71b4fcc3ec35a7af1644d3f (diff) | |
download | gcc-8812e4d5dd6f5ff0cac16c22bfe41986d92cb959.zip gcc-8812e4d5dd6f5ff0cac16c22bfe41986d92cb959.tar.gz gcc-8812e4d5dd6f5ff0cac16c22bfe41986d92cb959.tar.bz2 |
moxie EH fixes
From-SVN: r166997
-rw-r--r-- | gcc/config/moxie/moxie.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/gcc/config/moxie/moxie.h b/gcc/config/moxie/moxie.h index 6f64a7b..c3b3454 100644 --- a/gcc/config/moxie/moxie.h +++ b/gcc/config/moxie/moxie.h @@ -285,6 +285,21 @@ enum reg_class pointer registers are already assumed to be used as needed. */ #define EPILOGUE_USES(R) (R == MOXIE_R5) +/* A C expression whose value is RTL representing the location of the + incoming return address at the beginning of any function, before + the prologue. */ +#define INCOMING_RETURN_ADDR_RTX \ + gen_frame_mem (Pmode, \ + plus_constant (stack_pointer_rtx, UNITS_PER_WORD)) + +/* Describe how we implement __builtin_eh_return. */ +#define EH_RETURN_DATA_REGNO(N) ((N) < 4 ? (N+2) : INVALID_REGNUM) + +/* Store the return handler into the call frame. */ +#define EH_RETURN_HANDLER_RTX \ + gen_frame_mem (Pmode, \ + plus_constant (frame_pointer_rtx, UNITS_PER_WORD)) + /* Storage Layout */ #define BITS_BIG_ENDIAN 0 |