summaryrefslogtreecommitdiff
path: root/gmon
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>1996-02-19 23:14:44 +0000
committerRoland McGrath <roland@gnu.org>1996-02-19 23:14:44 +0000
commitbfc04a9ff126ea5fdbe08e281bfc61b93f31429b (patch)
tree350c306d5a798a6adde89056a09d53a287f88dcd /gmon
parentbe10a86854716071a64f559e1f5bc94e145d0fdb (diff)
Sun Feb 18 15:08:10 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/posix/utimes.c (__utimes): There are 1000000 usecs in a sec. Sun Feb 18 13:56:00 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * elf/Makefile, time/Makefile: Make `all' the default target. Mon Feb 19 18:09:04 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu> * misc/sys/ptrace.h: Moved to ... * sysdeps/generic/sys/ptrace.h: ... here. * sys/ptrace.h: File removed. Sun Feb 18 12:13:07 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/unix/sysv/linux/Makefile (headers): Add fpu_control.h. * sysdeps/unix/sysv/linux/i386/sysdep.S (errno): Put it into .bss so that the symbol alias works. * sysdeps/unix/sysv/linux/m68k/fpu_control.h (_FPU_SETCW): Corrected. * sysdeps/unix/sysv/linux/resourcebits.h: New file. * sysdeps/unix/sysv/linux/sys/ptrace.h: New file. * sysdeps/unix/sysv/linux/syscalls.list: Add getegid, geteuid, getppid and reboot. * sysdeps/unix/sysv/linux/sysconf.c: Special version that does not use getdtablesize. Sat Feb 17 10:30:21 1996 David Mosberger-Tang <davidm@AZStarNet.com> * stdio-common/printf_fp.c, stdlib/strtod.c, sysdeps/ieee754/dbl2mpn.c, sysdeps/ieee754/ldbl2mpn.c, sysdeps/ieee754/mpn2dbl.c, sysdeps/ieee754/mpn2ldbl.c: Cast left operands of shift instructions to `long' where necessary. Thu Feb 15 20:04:50 1996 Ulrich Drepper <drepper@gnu.ai.mit.edu> * stdlib/fpioconst.h: Introduce new constant _FPIO_CONST_OFFSET. * stdio-common/printf_fp.c, stdlib/strtod.c: Use _FPIO_CONST_OFFSET to correctly access MPN array depending on architecture.
Diffstat (limited to 'gmon')
-rw-r--r--gmon/Makefile2
-rw-r--r--gmon/mcount.c30
2 files changed, 5 insertions, 27 deletions
diff --git a/gmon/Makefile b/gmon/Makefile
index 8fd25c6258..2a5bb5f16b 100644
--- a/gmon/Makefile
+++ b/gmon/Makefile
@@ -22,7 +22,7 @@
subdir := gmon
headers := sys/gmon.h
-
+distribute := machine-gmon.h
routines := gmon mcount profil
include ../Rules
diff --git a/gmon/mcount.c b/gmon/mcount.c
index ac3584d4a5..ea60afcfb2 100644
--- a/gmon/mcount.c
+++ b/gmon/mcount.c
@@ -38,6 +38,10 @@ static char sccsid[] = "@(#)mcount.c 8.1 (Berkeley) 6/4/93";
#include <sys/param.h>
#include <sys/gmon.h>
+/* This file provides the machine-dependent definitions of the _MCOUNT_DECL
+ and MCOUNT macros. */
+#include "machine-gmon.h"
+
/*
* mcount is called on entry to each function compiled with the profiling
* switch set. _mcount(), which is declared in a machine-dependent way
@@ -53,33 +57,9 @@ static char sccsid[] = "@(#)mcount.c 8.1 (Berkeley) 6/4/93";
* both frompcindex and frompc. Any reasonable, modern compiler will
* perform this optimization.
*/
-#if 0
_MCOUNT_DECL(frompc, selfpc) /* _mcount; may be static, inline, etc */
register u_long frompc, selfpc;
-#endif
-
-/* GCC version 2 gives us a perfect magical function to get
- just the information we need:
- void *__builtin_return_address (unsigned int N)
- returns the return address of the frame N frames up. */
-
-#if __GNUC__ < 2
- #error "This file uses __builtin_return_address, a GCC 2 extension."
-#endif
-
-#include <sysdep.h>
-#ifndef NO_UNDERSCORES
-/* The asm symbols for C functions are `_function'.
- The canonical name for the counter function is `mcount', no _. */
-void _mcount (void) asm ("mcount");
-#endif
-
-void
-_mcount (void)
{
- register u_long selfpc = (u_long) __builtin_return_address (0);
- register u_long frompc = (u_long) __builtin_return_address (1);
-
register u_short *frompcindex;
register struct tostruct *top, *prevtop;
register struct gmonparam *p;
@@ -195,10 +175,8 @@ overflow:
return;
}
-#if 0 /* Obsolete with __builtin_return_address. */
/*
* Actual definition of mcount function. Defined in <machine/profile.h>,
* which is included by <sys/gmon.h>.
*/
MCOUNT
-#endif