diff options
author | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 1999-06-21 17:47:44 +0000 |
---|---|---|
committer | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 1999-06-21 17:47:44 +0000 |
commit | 290fa2d3cdbb0ca6308c34db69ddc0f474baf0ea (patch) | |
tree | a99da405152b364cbdfe9d3e91858d70b9a20881 /gcc/config/sparc/sysv4.h | |
parent | 602c2dae8647c0053ea96d189e0dca02192e9f9f (diff) | |
download | gcc-290fa2d3cdbb0ca6308c34db69ddc0f474baf0ea.tar.gz |
* sparc.c (sparc_override_options): Don't allow profiling for
code models other than medlow.
(sparc_function_profiler): New function from old FUNCTION_PROFILER
macro. Use ASM_GENERATE_INTERNAL_LABEL and MCOUNT_FUNCTION.
(sparc_function_block_profiler): Likewise. Use user_label_prefix.
(sparc_block_profiler): Likewise.
(sparc_function_block_profiler_exit): Likewise.
* sparc.h (FUNCTION_PROFILER): Call new sparc.c function.
(FUNCTION_BLOCK_PROFILER): Likewise.
(BLOCK_PROFILER): Likewise.
(FUNCTION_BLOCK_PROFILER_EXIT): Likewise.
(MCOUNT_FUNCTION): New.
* sparc/pbd.h (FUNCTION_PROFILER): Delete.
(FUNCTION_BLOCK_PROFILER, BLOCK_PROFILER): Delete.
* sparc/sun4o3.h (FUNCTION_PROFILER): Delete.
(MCOUNT_FUNCTION): New.
* sparc/sysv4.h (FUNCTION_BLOCK_PROFILER): Delete.
(BLOCK_PROFILER): Delete.
(MCOUNT_FUNCTION): New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@27672 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/sparc/sysv4.h')
-rw-r--r-- | gcc/config/sparc/sysv4.h | 27 |
1 files changed, 5 insertions, 22 deletions
diff --git a/gcc/config/sparc/sysv4.h b/gcc/config/sparc/sysv4.h index 572b9dcde73..5f9bba9e594 100644 --- a/gcc/config/sparc/sysv4.h +++ b/gcc/config/sparc/sysv4.h @@ -200,28 +200,6 @@ do { \ else \ fprintf (FILE, ".section\t\"%s\",#alloc,#write\n", (NAME)); \ } while (0) - -/* Output assembler code to FILE to initialize this source file's - basic block profiling info, if that has not already been done. */ - -#undef FUNCTION_BLOCK_PROFILER -#define FUNCTION_BLOCK_PROFILER(FILE, LABELNO) \ - do { \ - fprintf (FILE, "\tsethi %%hi(.LLPBX0),%%o0\n\tld [%%lo(.LLPBX0)+%%o0],%%o1\n\ttst %%o1\n\tbne LPY%d\n\tadd %%o0,%%lo(.LLPBX0),%%o0\n\tcall __bb_init_func\n\tnop\nLPY%d:\n", \ - (LABELNO), (LABELNO)); \ - } while (0) - -/* Output assembler code to FILE to increment the entry-count for - the BLOCKNO'th basic block in this source file. */ - -#undef BLOCK_PROFILER -#define BLOCK_PROFILER(FILE, BLOCKNO) \ -{ \ - int blockn = (BLOCKNO); \ - fprintf (FILE, "\tsethi %%hi(.LLPBX2+%d),%%g1\n\tld [%%lo(.LLPBX2+%d)+%%g1],%%g2\n\ -\tadd %%g2,1,%%g2\n\tst %%g2,[%%lo(.LLPBX2+%d)+%%g1]\n", \ - 4 * blockn, 4 * blockn, 4 * blockn); \ -} /* A C statement (sans semicolon) to output to the stdio stream FILE the assembler definition of uninitialized global DECL named @@ -231,3 +209,8 @@ do { \ #undef ASM_OUTPUT_ALIGNED_BSS #define ASM_OUTPUT_ALIGNED_BSS(FILE, DECL, NAME, SIZE, ALIGN) \ asm_output_aligned_bss (FILE, DECL, NAME, SIZE, ALIGN) + +/* Override the name of the mcount profiling function. */ + +#undef MCOUNT_FUNCTION +#define MCOUNT_FUNCTION "*_mcount" |