HP-UX Reference (11i v2 03/08) - 5 Miscellaneous Topics, 7 Device (Special) Files, 9 General Information, Index (vol 9)

u
unwind(5) unwind(5)
(Itanium(R)-based System Only)
scratch BR0 (return link)
Value valid only after
_UNW_step() across a user space interruption such as a signal
handler.
Do not attempt to figure out the predecessor’s instruction pointer from BR0. Call
_UNW_step() to obtain the _Unwind_Context
for the predecessor’s frame and use
_UNW_getIP.
preserved BR1-BR5
Value valid after successful return from
_UNW_step and _UNW_currentContext
.
scratch BR6-BR7
Value valid only while in state User_Interrupted_Frame after
_UNW_step() across a
user space interruption such as a signal handler.
application register FPSR
Value valid after successful return from
_UNW_step and _UNW_currentContext
.
automatic application register
_UNW_AR_RNAT
Value valid after successful return from
_UNW_step and _UNW_currentContext
.
preserved application register
_UNW_AR_UNAT
Value valid after successful return from
_UNW_step and _UNW_currentContext
.
special application register
_UNW_AR_PFS
Value valid after successful return from _UNW_step and _UNW_currentContext
.
read-only application register
_UNW_AR_BSP
Value valid after successful return from _UNW_step and _UNW_currentContext
.
special application register
_UNW_AR_BSPSTORE
Value valid after successful return from _UNW_step and _UNW_currentContext
.
application register
_UNW_AR_RSC
The _UNW_AR_RSC application register is a special case. It is marked valid but not
updated during _UNW_step(), because its values are only scratch and read-only.
preserved application register
_UNW_AR_LC
Value valid after successful return from _UNW_step and _UNW_currentContext
.
scratch application register
_UNW_AR_CCV
Value valid only after _UNW_step() across a user space interruption such as a signal
handler.
Convenience value CFM
Value valid after successful return from
_UNW_step and _UNW_currentContext
.
Reminder: CFM (current frame marker) is not architecturally visible. The stack unwind
library uses the same register layout as the application register
AR.PFS for this value.
Clearing for Re-Initialization
The client may call
_UNW_clear() from any states other than Bad, Start , and Stop. On successful
completion of _UNW_clear, the _Unwind_Context object appears to be in the ‘‘just constructed’’ con-
dition. All register values in the _Unwind_Context object are invalidated and it is placed in the Init
state.
ERROR CONDITIONS AND RECOVERY
In order to allow clients a convenient way of checking for range errors while initializing an
_Unwind_Context or for sanity checking for an error condition after several actions have been per-
formed on an _Unwind_Context object, two API functions are provided: _UNW_getAlertCode
and
_UNW_clearAlertCode.
_UNW_getAlertCode() allows the client to obtain the most recent ‘‘client needs to know’’
_UNW_ReturnCode returned (or ‘‘encountered’’ in the case of the query functions) by an interface func-
tion since the last clear of the Alert Code.
‘‘Client needs to know return codes are all of the enumerators in the enumeration
_UNW_ReturnCode
with the exception of _UNW_OK.
_UNW_clearAlertCode, _UNW_clear, _UNW_createContextForSelf(), and
_UNW_createContext() each reset the Alert Code to _UNW_OK although _UNW_clear,
_UNW_createContextForSelf(), and _UNW_createContext() can set the Alert Code to
Section 5336 Hewlett-Packard Company 8 HP-UX 11i Version 2: August 2003