This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Merged ARM-Thumb branch...
- To: pb at labs dot futuretv dot com, scottb at netwinder dot org
- Subject: Re: Merged ARM-Thumb branch...
- From: Nick Clifton <nickc at cygnus dot com>
- Date: Wed, 9 Feb 2000 10:49:08 -0800
- CC: richard dot earnshaw at arm dot com, gcc at gcc dot gnu dot org
Hi Paul, Hi Scott,
: >3) FUNCTION_PROFILER is defined in arm.h. It uses two other
: > defines (ARM_FUNCTION_PROFILER, THUMB_FUNCTION_PROFILER). In
: > linux-elf.h FUNCTION_PROFILER is undefined, then redefined. I
: > need to test this again, but the definition in linux-elf.h is the
: > one I have been using since 2.8.1 with glibc 2.x. I think it
: > should probably undefine ARM_FUNCTION_PROFILER then redefine it,
: > rather than FUNCTION_PROFILER. The other alternative is the
: > current definition of ARM_PROFILER is broken, or needed for other
: > platforms.
: > Comments?
:
: The ARM_/THUMB_FUNCTION_PROFILER macros are new in the branch.
: You're right that linux-elf should probably override them instead of
: FUNCTION_PROFILER. I imagine the existing ARM_PROFILER in arm.h is
: suitable for RISC iX and NetBSD.
OK, I have applied the patch below to correct this. I took the
liberty of assuming that the same fix for linux-elf.h is needed for
netbsd.h.
Cheers
Nick
2000-02-09 Nick Clifton <nickc@cygnus.com>
* config/arm/linux-elf.h (FUNCTION_PROFILER): Rename to
ARM_FUNCTION_PROFILER.
* config/arm/netbsd.h (FUNCTION_PROFILER): Rename to
ARM_FUNCTION_PROFILER.
Index: config/arm/linux-elf.h
===================================================================
RCS file: /cvs/gcc/egcs/gcc/config/arm/linux-elf.h,v
retrieving revision 1.12.2.3
diff -p -r1.12.2.3 linux-elf.h
*** linux-elf.h 1999/12/18 13:33:29 1.12.2.3
--- linux-elf.h 2000/02/09 18:42:04
*************** const_section () \
*** 304,311 ****
#define FP_DEFAULT FP_SOFT3
/* Call the function profiler with a given profile label. */
! #undef FUNCTION_PROFILER
! #define FUNCTION_PROFILER(STREAM, LABELNO) \
{ \
fprintf (STREAM, "\tbl\tmcount%s\n", NEED_PLT_RELOC ? "(PLT)" : ""); \
}
--- 304,311 ----
#define FP_DEFAULT FP_SOFT3
/* Call the function profiler with a given profile label. */
! #undef ARM_FUNCTION_PROFILER
! #define ARM_FUNCTION_PROFILER(STREAM, LABELNO) \
{ \
fprintf (STREAM, "\tbl\tmcount%s\n", NEED_PLT_RELOC ? "(PLT)" : ""); \
}
Index: config/arm/netbsd.h
===================================================================
RCS file: /cvs/gcc/egcs/gcc/config/arm/netbsd.h,v
retrieving revision 1.8.8.2
diff -p -r1.8.8.2 netbsd.h
*** netbsd.h 1999/10/28 09:29:59 1.8.8.2
--- netbsd.h 2000/02/09 18:44:36
*************** Boston, MA 02111-1307, USA. */
*** 105,112 ****
compiling the profiling functions. Since we break Acorn CC
compatibility below a little more won't hurt. */
! #undef FUNCTION_PROFILER
! #define FUNCTION_PROFILER(STREAM,LABELNO) \
{ \
fprintf(STREAM, "\tmov\t%sip, %slr\n", REGISTER_PREFIX, REGISTER_PREFIX); \
fprintf(STREAM, "\tbl\tmcount\n"); \
--- 105,112 ----
compiling the profiling functions. Since we break Acorn CC
compatibility below a little more won't hurt. */
! #undef ARM_FUNCTION_PROFILER
! #define ARM_FUNCTION_PROFILER(STREAM,LABELNO) \
{ \
fprintf(STREAM, "\tmov\t%sip, %slr\n", REGISTER_PREFIX, REGISTER_PREFIX); \
fprintf(STREAM, "\tbl\tmcount\n"); \