diff options
author | Richard Kenner <kenner@gcc.gnu.org> | 1994-07-01 13:49:42 -0400 |
---|---|---|
committer | Richard Kenner <kenner@gcc.gnu.org> | 1994-07-01 13:49:42 -0400 |
commit | 16454bf22c617f6f571a4065ce8a87444d7b9aea (patch) | |
tree | 61aa83add11fd0e87e4dd9219c5fa9f052ec75d6 /gcc | |
parent | f71c71f188745b140c7237b71643d4bd30c9cdd6 (diff) | |
download | gcc-16454bf22c617f6f571a4065ce8a87444d7b9aea.zip gcc-16454bf22c617f6f571a4065ce8a87444d7b9aea.tar.gz gcc-16454bf22c617f6f571a4065ce8a87444d7b9aea.tar.bz2 |
(FUNCTION_EXTRA_PROLOGUE): New macro.
From-SVN: r7630
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/config/m68k/mot3300.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/gcc/config/m68k/mot3300.h b/gcc/config/m68k/mot3300.h index e0be06f..f20a18e 100644 --- a/gcc/config/m68k/mot3300.h +++ b/gcc/config/m68k/mot3300.h @@ -103,6 +103,13 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ "%a0", "%a1", "%a2", "%a3", "%a4", "%a5", "%fp", "%sp", \ "%fp0", "%fp1", "%fp2", "%fp3", "%fp4", "%fp5", "%fp6", "%fp7"} +#undef FUNCTION_EXTRA_EPILOGUE +#define FUNCTION_EXTRA_EPILOGUE(FILE, SIZE) \ + { extern int current_function_returns_pointer; \ + if ((current_function_returns_pointer) && \ + ! find_equiv_reg (0, get_last_insn (), 0, 0, 0, 8, Pmode)) \ + asm_fprintf (FILE, "\tmovl %Rd0,%Ra0\n"); } + #undef FUNCTION_PROFILER #define FUNCTION_PROFILER(FILE, LABEL_NO) \ fprintf (FILE, "\tmov.l &LP%%%d,%%a0\n\tjsr mcount%%\n", (LABEL_NO)) |