OpenADFortTk (including Open64 and OpenAnalysis references)
Main Page
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
events.h
Go to the documentation of this file.
1
/*
2
3
Copyright (C) 2000, 2001 Silicon Graphics, Inc. All Rights Reserved.
4
5
This program is free software; you can redistribute it and/or modify it
6
under the terms of version 2 of the GNU General Public License as
7
published by the Free Software Foundation.
8
9
This program is distributed in the hope that it would be useful, but
10
WITHOUT ANY WARRANTY; without even the implied warranty of
11
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
12
13
Further, this software is distributed without any warranty that it is
14
free of the rightful claim of any third person regarding infringement
15
or the like. Any license provided herein, whether implied or
16
otherwise, applies only to this software file. Patent licenses, if
17
any, provided herein do not apply to combinations of this program with
18
other software, or any other product whatsoever.
19
20
You should have received a copy of the GNU General Public License along
21
with this program; if not, write the Free Software Foundation, Inc., 59
22
Temple Place - Suite 330, Boston MA 02111-1307, USA.
23
24
Contact information: Silicon Graphics, Inc., 1600 Amphitheatre Pky,
25
Mountain View, CA 94043, or:
26
27
http://www.sgi.com
28
29
For further information regarding this notice, see:
30
31
http://oss.sgi.com/projects/GenInfo/NoticeExplan
32
33
*/
34
35
36
/*
37
38
EVENTS.H
39
40
*/
41
/*
42
* This structure is used to gather
43
* information from an events section
44
* record. Since each record is variable
45
* length and is context dependent based
46
* on it's type, the fields for arg[1-3]
47
* are large.
48
*
49
* It is not expected that this structure
50
* would be used in a table or linked list
51
* thus size is less of a concern.
52
*/
53
typedef
struct
{
54
__uint64_t
fevnt_arg1
;
/* First argument
55
(Zero if no arguments
56
for this event)
57
*/
58
__uint64_t
fevnt_pre_arg1
;
/* Raw arg1 value.
59
Zero for leb128 values.
60
For other values, same
61
as the fevent_arg1 value
62
*/
63
__uint64_t
fevnt_arg2
;
/* Second argument
64
(Zero if one or 0 arguments).
65
*/
66
__uint64_t
fevnt_pre_arg2
;
/* Raw arg2 value.
67
Like fevnt_pre_arg1.
68
*/
69
__uint64_t
fevnt_arg3
;
/* Third argument
70
(zero if less than 3
71
arguments).
72
*/
73
__uint64_t
fevnt_pre_arg3
;
/* Raw arg3 value .
74
Like fevnt_pre_arg1.
75
*/
76
__uint64_t
fevnt_base
;
/* Section base address?
77
Not filled in or used
78
by
79
event_find_record() or
80
event_get_next_rec().
81
*/
82
__uint32_t
fevnt_type
;
/* Record type.
83
the EK_* value of this
84
event.
85
*/
86
__uint32_t
fevnt_offset
;
/* Section offset.
87
incremented by
88
event_get_next_rec()
89
by the length of the encoding
90
of the event described
91
by this Full_Events
92
record.
93
(for event_find_record() is
94
incremented by the net number
95
of events bytes.)
96
*/
97
__uint32_t
fevnt_index
;
/* text section index, not
98
filled in or used by
99
event_find_record() or
100
event_get_next_rec().
101
*/
102
}
Full_Events
;
103
104
/*******************************************************/
105
/*******************************************************/
106
/*
107
* Get information from the events section record
108
* pointed to by p_event and return a pointer
109
* to the next record.
110
*/
111
char
*
event_get_next_rec
(
112
char
*,
/* pointer into section */
113
__uint32_t ,
/* current offset into text section */
114
Full_Events
*);
/* information from record */
115
116
/*******************************************************/
117
/*******************************************************/
118
/*
119
* starting at the given point in the section
120
* pointed to by p_event, find the next events
121
* section record of the given type.
122
*
123
* It is assumed that the current offset coming
124
* into this routine will be stored in p_full.
125
*
126
* Returns EK_NULL if type not found.
127
*/
128
__uint32_t
event_find_record
(
129
char
*,
/* pointer into the events section */
130
Full_Events
*,
/* structure for events record info */
131
__uint32_t,
/* event section type */
132
char
*);
/* end of the current events section */
133
134
/*******************************************************/
135
/*******************************************************/
136
/*
137
* Return the name of the the kind based on the
138
* kind number. If I don't reccognize the the kind
139
* return the hex string for the number.
140
*
141
* The buffer for the string is statically allocated
142
* at compile time. If you want to manipulate the string
143
* or keep it around while making multiple calls to
144
* event_kind_string(), you need to copy it to another
145
* buffer.
146
*
147
*/
148
char
*
event_kind_string
(__uint32_t );
149
150
/*******************************************************/
151
/*******************************************************/
Open64
osprey1.0
include
cmplrs
events.h
Generated on Fri Mar 14 2014 04:23:05 for OpenADFortTk (including Open64 and OpenAnalysis references) by
1.8.4