summaryrefslogtreecommitdiff
path: root/gcc/config/m68k
diff options
context:
space:
mode:
authorbernie <bernie@138bc75d-0d04-0410-961f-82ee72b054a4>2003-10-26 22:08:07 +0000
committerbernie <bernie@138bc75d-0d04-0410-961f-82ee72b054a4>2003-10-26 22:08:07 +0000
commit7dcec20aeb4fa230db85fe2bccdfa58c5707b557 (patch)
tree81a6acc842e1c5ba68e2f20b80afcdd5d7ff4957 /gcc/config/m68k
parent09445e53c567910f204085af7dd24f6e2ed1d35a (diff)
downloadgcc-7dcec20aeb4fa230db85fe2bccdfa58c5707b557.tar.gz
* config/m68k/m68k.c (m68k_compute_frame_layout): Swap reg_mask and
reg_rev_mask computation. (m68k_output_function_prologue): Fix usage of current_frame (one typo and one missing); use reg_rev_mask not reg_mask. (m68k_output_function_epilogue): Fix usage of current_frame; use fpu_rev_mask not fpu_mask. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@72964 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/m68k')
-rw-r--r--gcc/config/m68k/m68k.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/gcc/config/m68k/m68k.c b/gcc/config/m68k/m68k.c
index 59bd544add8..64c8c9c62dc 100644
--- a/gcc/config/m68k/m68k.c
+++ b/gcc/config/m68k/m68k.c
@@ -358,8 +358,8 @@ m68k_compute_frame_layout (void)
for (regno = 16; regno < 24; regno++)
if (m68k_save_reg (regno, interrupt_handler))
{
- mask |= 1 << (23 - regno);
- rmask |= 1 << (regno - 16);
+ mask |= 1 << (regno - 16);
+ rmask |= 1 << (23 - regno);
saved++;
}
current_frame.foffset = saved * 12 /* (TARGET_CFV4E ? 8 : 12) */;
@@ -610,7 +610,7 @@ m68k_output_function_prologue (FILE *stream, HOST_WIDE_INT size ATTRIBUTE_UNUSED
#ifdef MOTOROLA
asm_fprintf (stream, "\tfmovm %I0x%x,-(%Rsp)\n", current_frame.fpu_mask);
#else
- asm_fprintf (stream, "\tfmovem %I0x%x,%Rsp@-\n", current_frmae.fpu_mask);
+ asm_fprintf (stream, "\tfmovem %I0x%x,%Rsp@-\n", current_frame.fpu_mask);
#endif
if (dwarf2out_do_frame ())
{
@@ -695,9 +695,9 @@ m68k_output_function_prologue (FILE *stream, HOST_WIDE_INT size ATTRIBUTE_UNUSED
else
{
#ifdef MOTOROLA
- asm_fprintf (stream, "\tmovm.l %I0x%x,-(%Rsp)\n", current_frame.reg_mask);
+ asm_fprintf (stream, "\tmovm.l %I0x%x,-(%Rsp)\n", current_frame.reg_rev_mask);
#else
- asm_fprintf (stream, "\tmoveml %I0x%x,%Rsp@-\n", current_frame.reg_mask);
+ asm_fprintf (stream, "\tmoveml %I0x%x,%Rsp@-\n", current_frame.reg_rev_mask);
#endif
}
if (dwarf2out_do_frame ())
@@ -922,7 +922,7 @@ m68k_output_function_epilogue (FILE *stream, HOST_WIDE_INT size ATTRIBUTE_UNUSED
#else
asm_fprintf (stream, "\tmoveml %s@(-%wd),%I0x%x\n",
reg_names[FRAME_POINTER_REGNUM],
- offset + fsize,
+ current_frame.offset + fsize,
current_frame.reg_mask);
#endif
}
@@ -1001,7 +1001,7 @@ m68k_output_function_epilogue (FILE *stream, HOST_WIDE_INT size ATTRIBUTE_UNUSED
asm_fprintf (stream, "\tfmovm -%wd(%s),%I0x%x\n",
current_frame.foffset + fsize,
reg_names[FRAME_POINTER_REGNUM],
- current_frame.fpu_mask);
+ current_frame.fpu_rev_mask);
#else
asm_fprintf (stream, "\tfmovem %s@(-%wd),%I0x%x\n",
reg_names[FRAME_POINTER_REGNUM],