summaryrefslogtreecommitdiff
path: root/gcc/config/m68hc11
diff options
context:
space:
mode:
authorciceron <ciceron@138bc75d-0d04-0410-961f-82ee72b054a4>2001-06-10 10:16:27 +0000
committerciceron <ciceron@138bc75d-0d04-0410-961f-82ee72b054a4>2001-06-10 10:16:27 +0000
commit3f93db32a945ca6ecff9f508407c75dc3ad3436c (patch)
tree27dc642253949508901934a2abfa875f297e9389 /gcc/config/m68hc11
parent8ce51105850ef2e948ceb6030054101d35e99312 (diff)
downloadgcc-3f93db32a945ca6ecff9f508407c75dc3ad3436c.tar.gz
* config/m68hc11/m68hc11.h (RETURN_ADDR_RTX): Define the return
address as relative to the argument pointer. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@43133 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/m68hc11')
-rw-r--r--gcc/config/m68hc11/m68hc11.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/config/m68hc11/m68hc11.h b/gcc/config/m68hc11/m68hc11.h
index 2d30ade5d4a..e0618043d21 100644
--- a/gcc/config/m68hc11/m68hc11.h
+++ b/gcc/config/m68hc11/m68hc11.h
@@ -901,6 +901,12 @@ extern int m68hc11_sp_correction;
#define INCOMING_RETURN_ADDR_RTX \
gen_rtx_MEM (VOIDmode, gen_rtx_REG (VOIDmode, STACK_POINTER_REGNUM))
+/* After the prologue, RA is at -2(AP) in the current frame. */
+#define RETURN_ADDR_RTX(COUNT, FRAME) \
+ ((COUNT) == 0 \
+ ? gen_rtx_MEM (Pmode, plus_constant (arg_pointer_rtx, -2))\
+ : 0)
+
/* Before the prologue, the top of the frame is at 2(sp). */
#define INCOMING_FRAME_SP_OFFSET 2