Path: blob/main/cddl/contrib/opensolaris/lib/libdtrace/common/dt_program.h
39562 views
/*1* CDDL HEADER START2*3* The contents of this file are subject to the terms of the4* Common Development and Distribution License (the "License").5* You may not use this file except in compliance with the License.6*7* You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE8* or http://www.opensolaris.org/os/licensing.9* See the License for the specific language governing permissions10* and limitations under the License.11*12* When distributing Covered Code, include this CDDL HEADER in each13* file and include the License file at usr/src/OPENSOLARIS.LICENSE.14* If applicable, add the following below this CDDL HEADER, with the15* fields enclosed by brackets "[]" replaced with your own identifying16* information: Portions Copyright [yyyy] [name of copyright owner]17*18* CDDL HEADER END19*/2021/*22* Copyright 2006 Sun Microsystems, Inc. All rights reserved.23* Use is subject to license terms.24*/2526#ifndef _DT_PROGRAM_H27#define _DT_PROGRAM_H2829#pragma ident "%Z%%M% %I% %E% SMI"3031#ifdef __cplusplus32extern "C" {33#endif3435#include <dtrace.h>36#include <dt_list.h>3738typedef struct dt_stmt {39dt_list_t ds_list; /* list forward/back pointers */40dtrace_stmtdesc_t *ds_desc; /* pointer to statement description */41} dt_stmt_t;4243struct dtrace_prog {44dt_list_t dp_list; /* list forward/back pointers */45dt_list_t dp_stmts; /* linked list of dt_stmt_t's */46ulong_t **dp_xrefs; /* array of translator reference bitmaps */47uint_t dp_xrefslen; /* length of dp_xrefs array */48uint8_t dp_dofversion; /* DOF version this program requires */49};5051extern dtrace_prog_t *dt_program_create(dtrace_hdl_t *);52extern void dt_program_destroy(dtrace_hdl_t *, dtrace_prog_t *);5354extern dtrace_ecbdesc_t *dt_ecbdesc_create(dtrace_hdl_t *,55const dtrace_probedesc_t *);56extern void dt_ecbdesc_release(dtrace_hdl_t *, dtrace_ecbdesc_t *);5758#ifdef __cplusplus59}60#endif6162#endif /* _DT_PROGRAM_H */636465