1/* 2 * CDDL HEADER START 3 * 4 * The contents of this file are subject to the terms of the 5 * Common Development and Distribution License, Version 1.0 only 6 * (the "License"). You may not use this file except in compliance 7 * with the License. 8 * 9 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 10 * or http://www.opensolaris.org/os/licensing. 11 * See the License for the specific language governing permissions 12 * and limitations under the License. 13 * 14 * When distributing Covered Code, include this CDDL HEADER in each 15 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 16 * If applicable, add the following below this CDDL HEADER, with the 17 * fields enclosed by brackets "[]" replaced with your own identifying 18 * information: Portions Copyright [yyyy] [name of copyright owner] 19 * 20 * CDDL HEADER END 21 */ 22/* Copyright (c) 1988 AT&T */ 23/* All Rights Reserved */ 24 25 26/* 27 * Copyright 1997-2003 Sun Microsystems, Inc. All rights reserved. 28 * Use is subject to license terms. 29 */ 30 31#ifndef _MON_H 32#define _MON_H 33 34#pragma ident "%Z%%M% %I% %E% SMI" 35 36#ifdef __cplusplus 37extern "C" { 38#endif 39 40/* 41 * Inclusion of <sys/types.h> will break SVID namespace, hence only 42 * the size_t type is defined in this header. 43 */ 44#if !defined(_SIZE_T) || __cplusplus >= 199711L 45#define _SIZE_T 46#if defined(_LP64) || defined(_I32LPx) 47typedef unsigned long size_t; /* size of something in bytes */ 48#else 49typedef unsigned int size_t; /* (historical version) */ 50#endif 51#endif /* _SIZE_T */ 52 53struct hdr { 54 char *lpc; 55 char *hpc; 56 size_t nfns; 57}; 58 59struct cnt { 60 char *fnpc; 61 long mcnt; 62}; 63 64typedef unsigned short WORD; 65 66#define MON_OUT "mon.out" 67#define MPROGS0 (150 * sizeof (WORD)) /* 300 for pdp11, 600 for 32-bits */ 68#define MSCALE0 4 69 70#ifndef NULL 71#if defined(_LP64) 72#define NULL 0L 73#else 74#define NULL 0 75#endif 76#endif 77 78#if defined(__STDC__) 79extern void monitor(int (*)(void), int (*)(void), WORD *, size_t, size_t); 80#else 81extern void monitor(); 82#endif 83 84#ifdef __cplusplus 85} 86#endif 87 88#endif /* _MON_H */ 89