NAME
uwx_step() — step one frame
SYNOPSIS
#include <uwx.h>
int uwx_step(struct uwx_env *env);
DESCRIPTION
uwx_step()
is part of the Unwind Express Library for Integrity systems; see
uwx(3X).
uwx_step()
steps back one frame from the current context and updates the context
to reflect the state of the new frame.
The return pointer becomes the new IP (instruction pointer),
the previous stack pointer becomes the new stack pointer,
the backing store pointer is adjusted to point to the previous frame's registers,
the previous frame state becomes the new current frame marker,
and all preserved registers are updated with the values they had in that frame.
(If
uwx_set_nofr()
has been used to disable floating-point register tracking, the preserved floating-point
registers will not be updated.)
Parameters
- env
A pointer to an unwind environment object.
RETURN VALUE
uwx_step()
returns
UWX_OK
on success.
If the current frame is at the bottom of the call stack, it returns
UWX_BOTTOM
and the current context is unchanged.
If the current frame is a signal frame
(or some other ABI-dependent context frame),
it returns
UWX_ABI_FRAME
and the current context is unchanged.
All other status codes indicate errors;
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_source_info(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_inline(3X).