diff options
author | Danny Smith <dannysmith@users.sourceforge.net> | 2002-01-25 03:29:55 +0000 |
---|---|---|
committer | Danny Smith <dannysmith@users.sourceforge.net> | 2002-01-25 03:29:55 +0000 |
commit | a3e23446e2969387efdd71a2e1b062af0bedfce7 (patch) | |
tree | 9e99aa01aa1c4721f64fa843689b8f9f8e658f9f /winsup/mingw/profile | |
parent | 628ef8b6bb7236e750cf51cc688ab39677f5c2ed (diff) | |
download | newlib-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.c | 2 | ||||
-rw-r--r-- | winsup/mingw/profile/gmon.c | 9 | ||||
-rw-r--r-- | winsup/mingw/profile/profil.c | 2 | ||||
-rw-r--r-- | winsup/mingw/profile/profil.h | 8 |
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)) |