aboutsummaryrefslogtreecommitdiff
path: root/gcc/final.c
diff options
context:
space:
mode:
authorNeil Booth <neil@daikokuya.demon.co.uk>2001-07-08 19:55:57 +0000
committerNeil Booth <neil@gcc.gnu.org>2001-07-08 19:55:57 +0000
commitb4c25db2dfed2c3c86dc6b61c6fc7eee757c6c71 (patch)
treef1cd605c4fdd2d9ac8a6658db5b0993421ca3959 /gcc/final.c
parent45c8268d06270cff703a2caf0d20eea043759bdc (diff)
downloadgcc-b4c25db2dfed2c3c86dc6b61c6fc7eee757c6c71.zip
gcc-b4c25db2dfed2c3c86dc6b61c6fc7eee757c6c71.tar.gz
gcc-b4c25db2dfed2c3c86dc6b61c6fc7eee757c6c71.tar.bz2
final.c (no_asm_to_stream): New.
* final.c (no_asm_to_stream): New. (final_scan_insn): Use target structures for prologue ends and epilogue starts. * output.h (no_asm_to_stream): New. * target-def.h (TARGET_ASM_FUNCTION_END_PROLOGUE, TARGET_ASM_FUNCTION_BEGIN_EPILOGUE): New. (TARGET_ASM_OUT): Update. * target.h (struct gcc_target): New members function_end_prologue and function_begin_epilogue. config: * 1750/1750.h (ASM_OUTPUT_FUNNAM): Delete as unused. * alpha/alpha-protos.h (output_end_prologue): Delete. * alpha/alpha.c (output_end_prologue): Rename to alpha_output_function_end_prologue. Use in target struct and make static. * alpha/alpha.h (FUNCTION_END_PROLOGUE): Delete. * ia64/ia64-protos.h (ia64_output_end_prologue): Delete. * ia64/ia64.c (ia64_output_end_prologue): Rename to ia64_output_function_end_prologue. Use in target struct and make static. (ia64_function_prologue, ia64_funciton_epilogue): Rename mistyped prototypes. * ia64/ia64.h (FUNCTION_END_PROLOGUE): Delete. * m88k/m88k-protos.h (m88k_end_prologue, m88k_begin_epilogue): Delete. * m88k/m88k.c (m88k_end_prologue, m88k_begin_epilogue): Rename an use in target struct, make static. * ia64/ia64.h (FUNCTION_END_PROLOGUE, FUNCTION_BEGIN_EPILOGUE): Delete. From-SVN: r43849
Diffstat (limited to 'gcc/final.c')
-rw-r--r--gcc/final.c15
1 files changed, 9 insertions, 6 deletions
diff --git a/gcc/final.c b/gcc/final.c
index 7509fbe..35fda05 100644
--- a/gcc/final.c
+++ b/gcc/final.c
@@ -546,6 +546,13 @@ default_function_pro_epilogue (file, size)
{
}
+/* Default target hook that outputs nothing to a stream. */
+void
+no_asm_to_stream (file)
+ FILE *file ATTRIBUTE_UNUSED;
+{
+}
+
/* Enable APP processing of subsequent output.
Used before the output from an `asm' statement. */
@@ -2090,16 +2097,12 @@ final_scan_insn (insn, file, optimize, prescan, nopeepholes)
break;
case NOTE_INSN_PROLOGUE_END:
-#ifdef FUNCTION_END_PROLOGUE
- FUNCTION_END_PROLOGUE (file);
-#endif
+ (*targetm.asm_out.function_end_prologue) (file);
profile_after_prologue (file);
break;
case NOTE_INSN_EPILOGUE_BEG:
-#ifdef FUNCTION_BEGIN_EPILOGUE
- FUNCTION_BEGIN_EPILOGUE (file);
-#endif
+ (*targetm.asm_out.function_begin_epilogue) (file);
break;
case NOTE_INSN_FUNCTION_BEG: