HP-UX Reference (11i v3 07/02) - 3 Library Functions N-Z (vol 7)
u
uwx_get_source_info(3X) uwx_get_source_info(3X)
(Integrity Systems Only)
NAME
uwx_get_source_info() - return source information for current frame
SYNOPSIS
#include <uwx.h>
int uwx_get_source_info(
struct uwx_env *
env,
char **
ifuncp,
char **
srcfilep,
int *
linenump,
int *
inline_contextp
);
DESCRIPTION
uwx_get_source_info()
is part of the Unwind Express Library for Integrity systems; see uwx(3X).
uwx_get_source_info()
obtains source file and line number information for the current frame from
the symbolic information stored in the ELF object file, if available.
This entry point is provided for use immediately following a call to
uwx_step() or
uwx_step_inline()
. For other situations, see uwx_find_source_info(3X).
Parameters
env A pointer to an unwind environment object.
ifuncp Pointer to a variable of type char * where the inlined function name will be returned. If
NULL, the inlined function name will not be returned. If the IP (instruction pointer) of the
current context is not in an inlined call or if symbolic debug information is not available, a
NULL pointer will be returned.
srcfilep Pointer to a variable of type char * where the source file name will be returned. If NULL,
the source file name will not be returned. If symbolic debug information is not available, a
NULL pointer will be returned.
linenump Pointer to a variable of type int where the source line number will be returned. If NULL,
the source line number will not be returned. If symbolic debug information is not available,
0 will be returned.
inline_contextp Pointer to a variable of type int where the inline context identifier will be returned. If
NULL, the inline context identifier will not be returned. If the IP of the current context is
not in an inlined call or if symbolic debug information is not available, 0 will be returned.
In all cases where a pointer to a string is returned, the string is allocated within the unwind environment,
and the pointer is valid only until the next call to either
uwx_step() or uwx_free() .
Stepping through inlined calls
If
uwx_get_source_info()
returns a non-zero inline context identifier, it indicates that the IP is
located within an inline call. If the application wishes to step through the chain of inlined calls, it can find
the name of the inlined function through the ifuncp pointer, then call
uwx_step_inline()
to move one
step up the chain of inlined calls. The application may then call
uwx_get_source_info() again to
obtain the updated information. This process should be repeated until the returned identifier is 0.
RETURN VALUE
uwx_get_source_info() returns [UWX_OK] on success. See uwx(3X) for error codes.
AUTHOR
The Unwind Express Library was developed by Hewlett-Packard.
SEE ALSO
uwx(3X), uwx_add_to_bsp(3X), uwx_find_source_info(3X), uwx_find_symbol(3X), uwx_free(3X),
uwx_get_abi_context_code(3X), uwx_get_funcstart(3X), uwx_get_module_info(3X), uwx_get_nat(3X),
uwx_get_reg(3X), uwx_get_sym_info(3X), uwx_init(3X), uwx_init_context(3X), uwx_register_alloc_cb(3X),
uwx_register_callbacks(3X), uwx_release_symbol_cache(3X), uwx_self_do_context_frame(3X),
uwx_self_free_info(3X), uwx_self_init_context(3X), uwx_self_init_info(3X), uwx_set_nofr(3X),
uwx_set_remote(3X), uwx_step(3X), uwx_step_inline(3X).
614 Hewlett-Packard Company − 1 − HP-UX 11i Version 3: February 2007