diff options
Diffstat (limited to 'gprof/gmon.h')
-rw-r--r-- | gprof/gmon.h | 156 |
1 files changed, 0 insertions, 156 deletions
diff --git a/gprof/gmon.h b/gprof/gmon.h deleted file mode 100644 index 541fa4dbdf9..00000000000 --- a/gprof/gmon.h +++ /dev/null @@ -1,156 +0,0 @@ -/*- - * Copyright (c) 1991 The Regents of the University of California. - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * @(#)gmon.h 5.2 (Berkeley) 5/6/91 - */ -#ifndef gmon_h -#define gmon_h - -struct raw_phdr - { - /* FIXME: Checking a host compiler define means that we can't use - a cross gprof to the alpha. */ -#ifdef __alpha__ - char low_pc[8]; /* base pc address of sample buffer */ - char high_pc[8]; /* max pc address of sampled buffer */ -#else - char low_pc[4]; /* base pc address of sample buffer */ - char high_pc[4]; /* max pc address of sampled buffer */ -#endif - char ncnt[4]; /* size of sample buffer (plus this header) */ - - char version[4]; /* version number */ - char profrate[4]; /* profiling clock rate */ - char spare[3*4]; /* reserved */ - }; - -#define GMONVERSION 0x00051879 - -struct old_raw_phdr - { - /* FIXME: Checking a host compiler define means that we can't use - a cross gprof to the alpha. */ -#ifdef __alpha__ - char low_pc[8]; /* base pc address of sample buffer */ - char high_pc[8]; /* max pc address of sampled buffer */ -#else - char low_pc[4]; /* base pc address of sample buffer */ - char high_pc[4]; /* max pc address of sampled buffer */ -#endif - char ncnt[4]; /* size of sample buffer (plus this header) */ - - /* FIXME: Checking host compiler defines here means that we can't - use a cross gprof alpha OSF. */ -#if defined (__alpha__) && defined (__osf__) - /* - * DEC's OSF v3.0 uses 4 bytes of padding to bring the header to - * a size that is a multiple of 8. - */ - char pad[4]; -#endif - }; - -/* - * Histogram counters are unsigned shorts: - */ -#define HISTCOUNTER unsigned short - -/* - * Fraction of text space to allocate for histogram counters here, 1/2: - */ -#define HISTFRACTION 2 - -/* - * Fraction of text space to allocate for from hash buckets. The - * value of HASHFRACTION is based on the minimum number of bytes of - * separation between two subroutine call points in the object code. - * Given MIN_SUBR_SEPARATION bytes of separation the value of - * HASHFRACTION is calculated as: - * - * HASHFRACTION = MIN_SUBR_SEPARATION / (2 * sizeof(short) - 1); - * - * For the VAX, the shortest two call sequence is: - * - * calls $0,(r0) - * calls $0,(r0) - * - * which is separated by only three bytes, thus HASHFRACTION is - * calculated as: - * - * HASHFRACTION = 3 / (2 * 2 - 1) = 1 - * - * Note that the division above rounds down, thus if MIN_SUBR_FRACTION - * is less than three, this algorithm will not work! - */ -#define HASHFRACTION 1 - -/* - * Percent of text space to allocate for tostructs with a minimum: - */ -#define ARCDENSITY 2 -#define MINARCS 50 - -struct tostruct - { - char *selfpc; - int count; - unsigned short link; - }; - -/* - * A raw arc, with pointers to the calling site and the called site - * and a count. Everything is defined in terms of characters so - * as to get a packed representation (otherwise, different compilers - * might introduce different padding): - */ -struct raw_arc - { - /* FIXME: Checking a host compiler define means that we can't use - a cross gprof to the alpha. */ -#ifdef __alpha__ - char from_pc[8]; - char self_pc[8]; - char count[8]; -#else - char from_pc[4]; - char self_pc[4]; - char count[4]; -#endif - }; - -/* - * General rounding functions: - */ -#define ROUNDDOWN(x,y) (((x)/(y))*(y)) -#define ROUNDUP(x,y) ((((x)+(y)-1)/(y))*(y)) - -#endif /* gmon_h */ |