Guardian Procedure Calls Reference Manual
The address of this workspace area is passed to subsequent calls to the HIST_FORMAT_ and
HIST_GETPRIOR_ procedures.
version
input
INT(32):value
HistVersion1 is a literal value defined in HHISTRY to identify the initial 32-bit version of the
workspace. HistVersion3 is a literal value defined in HHISTRY to identify the 64-bit version of
the workspace. 32-bit processes might specify either version. 64-bit processes must specify
HistVersion3. Failure to do so will result in a HIST_BAD_VERSION error being returned.
options
input
INT:value
controls the initialization process and subsequent trace.
The type of context must be specified as one of these:
HO_Init_Here0<13:15>
starts a trace of the current stack with the context of this call to HIST_INIT_. The context
parameter is ignored in this case.
HO_Init_uContext1
uses the uContext structure whose address is passed in the context parameter. A uContext
structure is a structure of type UCONTEXT_T that is passed to a signal handler installed by the
SIGACTION_INIT_ or SIGACTION_SUPPLANT_ procedure. HIST_INIT_ initializes the trace
at the point where the signal was generated. See "Protected contexts" under Considerations
for more information.
HO_Init_JmpBuf2
uses the context saved in a native jump buffer to start tracing at the point of a call to the
SETJMP_ or SIGSETJMP_ procedure that filled the jump buffer. The address of the buffer is
passed to HIST_INIT_ in the context parameter.
HO_Init_31Regs3
is reserved for HP use.
HO_Init_Address4
uses a 32-bit native address for the context. This address is passed to the HIST_INIT_ procedure
in the context parameter. A subsequent call to HIST_FORMAT_ returns context for that
location. The address must point to a code location, but that location can contain TNS
instructions or RISC instructions. To find out what is at a TNS address, you must first convert
the TNS address into a RISC address. For details on address translation, see the System
Description Manual.
HO_Init_FuncPtr10
uses a 32-bit function pointer for the context. In the TNS/E environment, the function pointer
is an Official Function Descriptor (OFD); a two-element array consisting of a 64-bit code
address and a 64-bit GP address. The OFD is passed to the HIST_INIT_ procedure in the
context parameter. A subsequent call to HIST_FORMAT_ returns the context for the code
address that was passed through the OFD. In the TNS/R environment, the function pointer is
a 32-bit native address that is also passed to the HIST_INIT_ procedure in the context
parameter. When you specify the HO_Init_FuncPtr option in the TNS/R environment, it is
equivalent to specifying the HO_Init_Address option. For more information on the
HO_Init_Address option, see the description above. Note that a subsequent call to
HIST_FORMAT_ always returns the correct context for the code location. This is true regardless
of whether an OFD (TNS/E environment) or a 32-bit native address (TNS/R environment) is
passed to the HIST_INIT_ procedure in the context parameter specified with the HO_Init_FuncPtr
option. The HO_Init_FuncPtr option is not supported from the TNS environment.
HIST_INIT_ Procedure 717