summaryrefslogtreecommitdiff
path: root/gcc/config/m68k/tower-as.h
diff options
context:
space:
mode:
authorwood <wood@138bc75d-0d04-0410-961f-82ee72b054a4>1992-05-12 10:16:09 +0000
committerwood <wood@138bc75d-0d04-0410-961f-82ee72b054a4>1992-05-12 10:16:09 +0000
commitaa80db6676d073c8760980a2bab475393e9bd3fd (patch)
tree811ead04d8b42a4c31c08b0bfe61f9269d82ec5a /gcc/config/m68k/tower-as.h
parente48aa41cc0e1cd75e1aa34c7d3b3b0a17a419c95 (diff)
downloadgcc-aa80db6676d073c8760980a2bab475393e9bd3fd.tar.gz
*** empty log message ***
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@963 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/m68k/tower-as.h')
-rw-r--r--gcc/config/m68k/tower-as.h20
1 files changed, 19 insertions, 1 deletions
diff --git a/gcc/config/m68k/tower-as.h b/gcc/config/m68k/tower-as.h
index 8a1685414bb..a1c3b811814 100644
--- a/gcc/config/m68k/tower-as.h
+++ b/gcc/config/m68k/tower-as.h
@@ -155,8 +155,26 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
#undef TARGET_VERSION
#define TARGET_VERSION fprintf (stderr, " (68k, Motorola/SGS/Tower32 syntax)");
-#undef BLOCK_PROFILER
#undef FUNCTION_BLOCK_PROFILER
+#define FUNCTION_BLOCK_PROFILER(FILE, LABELNO) \
+ do { \
+ char label1[20], label2[20]; \
+ ASM_GENERATE_INTERNAL_LABEL (label1, "LPBX", 0); \
+ ASM_GENERATE_INTERNAL_LABEL (label2, "LPI", LABELNO); \
+ fprintf (FILE, "\ttst.l %s\n\tbne %s\n\tpea %s\n\tjsr __bb_init_func\n\taddq.l &4,%%sp\n", \
+ label1, label2, label1); \
+ ASM_OUTPUT_INTERNAL_LABEL (FILE, "LPI", LABELNO); \
+ putc ('\n', FILE); \
+ } while (0)
+
+#undef BLOCK_PROFILER
+#define BLOCK_PROFILER(FILE, BLOCKNO) \
+ do { \
+ char label[20]; \
+ ASM_GENERATE_INTERNAL_LABEL (label, "LPBX", 2); \
+ fprintf (FILE, "\taddq.l &1,%s+%d\n", label, 4 * BLOCKNO); \
+ } while (0)
+
#undef FUNCTION_PROFILER
#define FUNCTION_PROFILER(FILE, LABEL_NO) \
fprintf (FILE, "\tmov.l &LP%%%d,%%a0\n\tjsr mcount%%\n", (LABEL_NO))