Annotation of coherent/c/usr/include/mon.h, revision 1.1.1.1

1.1       root        1: /* (-lgl
                      2:  *     COHERENT Version 3.2
                      3:  *     Copyright (c) 1982, 1991 by Mark Williams Company.
                      4:  *     All rights reserved. May not be copied without permission.
                      5:  -lgl) */
                      6: /*
                      7:  * mon.h
                      8:  * Program profiling (monitor) header.
                      9:  *
                     10:  * The layout of the mon.out file created by a call to monitor is
                     11:  * as follows:
                     12:  *     header (m_hdr)
                     13:  *     function count buffer (array of m_funcs)
                     14:  *     profil buffer (array of shorts)
                     15:  * The profil data scales the pc as follows:
                     16:  *     bin number = (pc - low pc) * (scale/2) / (1<<16)
                     17:  */
                     18: 
                     19: #ifndef        MON_H
                     20: #define        MON_H   MON_H
                     21: 
                     22: #include <sys/types.h>
                     23: 
                     24: #ifndef NULL
                     25: #define        NULL    ((char *)0)
                     26: #endif
                     27: 
                     28: struct m_hdr {
                     29:        unsigned        m_nbins,        /* number of bins */
                     30:                        m_scale,        /* scale factor */
                     31:                        m_nfuncs;       /* number of function counts */
                     32:        vaddr_t         m_lowpc;        /* lowest pc to monitor */
                     33:        vaddr_t         m_lowsp;        /* lowest sp in scount */
                     34:        vaddr_t         m_hisp;         /* highest sp in scount */
                     35: };
                     36: 
                     37: struct m_func {
                     38:        vaddr_t         m_addr;         /* address in function */
                     39:        long            m_ncalls;       /* number of times function called */
                     40: };
                     41: 
                     42: /*
                     43:  * The m_flst structure is allocated (by the C compiler) for every routine
                     44:  * compiled with the -p option.
                     45:  */
                     46: struct m_flst {
                     47:        struct m_func   m_data;         /* data on this function */
                     48:        struct m_flst   *m_link;        /* link to next function in list */
                     49: };
                     50: 
                     51: #endif
                     52: 
                     53: /* end of mon.h */

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.