aboutsummaryrefslogtreecommitdiff
path: root/winsup/mingw/profile
diff options
context:
space:
mode:
authorDanny Smith <dannysmith@users.sourceforge.net>2002-01-25 03:29:55 +0000
committerDanny Smith <dannysmith@users.sourceforge.net>2002-01-25 03:29:55 +0000
commita3e23446e2969387efdd71a2e1b062af0bedfce7 (patch)
tree9e99aa01aa1c4721f64fa843689b8f9f8e658f9f /winsup/mingw/profile
parent628ef8b6bb7236e750cf51cc688ab39677f5c2ed (diff)
downloadnewlib-a3e23446e2969387efdd71a2e1b062af0bedfce7.zip
newlib-a3e23446e2969387efdd71a2e1b062af0bedfce7.tar.gz
newlib-a3e23446e2969387efdd71a2e1b062af0bedfce7.tar.bz2
* profile/profil.c: Update copyright info.
* profile/profil.h: Likewise. * profile/gcrt0.c: Likewise. * profile/profil.h (PROFADDR): Cast idx to unsigned long long to avoid overflow. * profile/gmon.c: Define bzero as memset if mingw32. (monstartup): Use it.
Diffstat (limited to 'winsup/mingw/profile')
-rw-r--r--winsup/mingw/profile/gcrt0.c2
-rw-r--r--winsup/mingw/profile/gmon.c9
-rw-r--r--winsup/mingw/profile/profil.c2
-rw-r--r--winsup/mingw/profile/profil.h8
4 files changed, 14 insertions, 7 deletions
diff --git a/winsup/mingw/profile/gcrt0.c b/winsup/mingw/profile/gcrt0.c
index 601b275..20f3c7c 100644
--- a/winsup/mingw/profile/gcrt0.c
+++ b/winsup/mingw/profile/gcrt0.c
@@ -1,6 +1,6 @@
/* gcrt0.c
- Copyright 1998 Cygnus Solutions.
+ Copyright 1998, 1999, 2000, 2001, 2002 Red Hat, Inc.
This file is part of Cygwin.
diff --git a/winsup/mingw/profile/gmon.c b/winsup/mingw/profile/gmon.c
index 17398b8..b68f318 100644
--- a/winsup/mingw/profile/gmon.c
+++ b/winsup/mingw/profile/gmon.c
@@ -55,6 +55,10 @@ static char rcsid[] = "$OpenBSD: gmon.c,v 1.8 1997/07/23 21:11:27 kstailey Exp $
/* XXX needed? */
//extern char *minbrk __asm ("minbrk");
+#ifdef __MINGW32__
+#define bzero(ptr,size) memset (ptr, 0, size);
+#endif
+
struct gmonparam _gmonparam = { GMON_PROF_OFF };
static int s_scale;
@@ -102,9 +106,10 @@ monstartup(lowpc, highpc)
ERR("monstartup: out of memory\n");
return;
}
-#ifdef notdef
+
+ /* zero out cp as value will be added there */
bzero(cp, p->kcountsize + p->fromssize + p->tossize);
-#endif
+
p->tos = (struct tostruct *)cp;
cp += p->tossize;
p->kcount = (u_short *)cp;
diff --git a/winsup/mingw/profile/profil.c b/winsup/mingw/profile/profil.c
index d294621..dae59d7 100644
--- a/winsup/mingw/profile/profil.c
+++ b/winsup/mingw/profile/profil.c
@@ -1,6 +1,6 @@
/* profil.c -- win32 profil.c equivalent
- Copyright 1998 Cygnus Solutions.
+ Copyright 1998, 1999, 2000, 2001, 2002 Red Hat, Inc.
This file is part of Cygwin.
diff --git a/winsup/mingw/profile/profil.h b/winsup/mingw/profile/profil.h
index 1e3ef47..9245dd2 100644
--- a/winsup/mingw/profile/profil.h
+++ b/winsup/mingw/profile/profil.h
@@ -1,6 +1,6 @@
/* profil.h: gprof profiling header file
- Copyright 1998 Cygnus Solutions.
+ Copyright 1998, 1999, 2000, 2001, 2002 Red Hat, Inc.
This file is part of Cygwin.
@@ -28,8 +28,10 @@ details. */
})
/* convert an index into an address */
-#define PROFADDR(idx, base, scale) \
- ((base) + ((((idx) << 16) / (scale)) << 1))
+#define PROFADDR(idx, base, scale) \
+ ((base) \
+ + ((((unsigned long long)(idx) << 16) \
+ / (unsigned long long)(scale)) << 1))
/* convert a bin size into a scale */
#define PROFSCALE(range, bins) (((bins) << 16) / ((range) >> 1))