2 .\" Manual page created with latex2man on Thu Aug 16 09:44:44 MDT 2007
3 .\" NOTE: This file is generated, DO NOT EDIT.
13 .TH "UNW\\_GET\\_PROC\\_INFO" "3" "16 August 2007" "Programming Library " "Programming Library "
16 \-\- get info on current procedure
21 #include <libunwind.h>
25 unw_get_proc_info(unw_cursor_t *cp,
26 unw_proc_info_t *pip);
32 The unw_get_proc_info()
33 routine returns auxiliary
34 information about the procedure that created the stack frame
35 identified by argument cp\&.
38 to a structure of type unw_proc_info_t
40 return the information. The unw_proc_info_t
45 The address of the first
46 instruction of the procedure. If this address cannot be determined
47 (e.g., due to lack of unwind information), the start_ip
48 member is cleared to 0.
52 The address of the first
53 instruction \fIbeyond\fP
54 the end of the procedure. If this address
55 cannot be determined (e.g., due to lack of unwind information),
57 member is cleared to 0.
62 language\-specific data\-area (LSDA). This area normally contains
63 language\-specific information needed during exception handling. If
64 the procedure has no such area, this member is cleared to 0.
68 The address of the exception
69 handler routine. This is sometimes called the \fIpersonality\fP
70 routine. If the procedure does not define
71 a personality routine, the handler
72 member is cleared to 0.
76 The global\-pointer of the
77 procedure. On platforms that do not use a global pointer, this
78 member may contain an undefined value. On all other platforms, it
79 must be set either to the correct global\-pointer value of the
80 procedure or to 0 if the proper global\-pointer cannot be
81 obtained for some reason.
85 A set of flags. There are
86 currently no target\-independent flags. For the IA\-64 target, the
87 flag UNW_PI_FLAG_IA64_RBS_SWITCH
89 procedure may switch the register\-backing store.
93 The format of the unwind\-info for this
94 procedure. If the unwind\-info consists of dynamic procedure info,
96 is equal to UNW_INFO_FORMAT_DYNAMIC\&.
98 unwind\-info consists of a (target\-specific) unwind table, it is
99 equal to to UNW_INFO_FORMAT_TABLE\&.
101 reserved for future use by libunwind\&.
103 for use by the find_proc_info()
105 unw_create_addr_space(3)).
109 may return an undefined value in this member.
113 The size of the unwind\-info
114 in bytes. This member exists for use by the
117 unw_create_addr_space(3)).
121 may return an undefined value in this member.
125 The pointer to the unwind\-info.
126 If no unwind info is available, this member must be set to
128 This member exists for use by the
131 unw_create_addr_space(3)).
135 may return an undefined value in this member.
138 Note that for the purposes of libunwind,
140 procedure is assumed to occupy a single, contiguous range of
141 addresses. For this reason, it is alwas possible to describe the
142 extent of a procedure with the start_ip
144 members. If a single function/routine is split into multiple,
145 discontiguous pieces, libunwind
146 will treat each piece as a
152 On successful completion, unw_get_proc_info()
154 Otherwise the negative value of one of the error\-codes below is
157 .SH THREAD AND SIGNAL SAFETY
161 is thread\-safe. If cursor cp
163 in the local address\-space, this routine is also safe to use from a
171 An unspecified error occurred.
176 unwind\-info for the procedure.
179 The unwind\-info for the procedure has
180 version or format that is not understood by libunwind\&.
182 In addition, unw_get_proc_info()
184 returned by the access_mem()
186 unw_create_addr_space(3)).
192 unw_create_addr_space(3),
198 David Mosberger\-Tang
200 Email: \fBdmosberger@gmail.com\fP
202 WWW: \fBhttp://www.nongnu.org/libunwind/\fP\&.
203 .\" NOTE: This file is generated, DO NOT EDIT.