VMS Help
System Services, $SET UNWIND TABLE (Integrity servers Only)
*Conan The Librarian
|
Registers or extends unwind table (UT) information.
Format
SYS$SET_UNWIND_TABLE code_base_va, code_size, ut_base_va,
ut_size, gp_value, unwind_info_base, name
C Prototype
ind SYS$SET_UNWIND_TABLE (unsigned __int64 code_base_va,
unsigned __int64 code_size, unsigned
__int64 ut_base_va, unsigned __int64
ut_size, unsigned __int64 gp_value,
unsigned __int64 unwind_info_base,
void *name);
code_base_va
OpenVMS usage: address
type: quadword (unsigned)
access: read only
mechanism: by value
With code_size, defines the potential code range. code_base_va
is required for both creation and extension calls. code_base_va
is the process virtual address of the start of the code region.
code_size is the size of the code region in bytes. An error is
returned if this overlaps any existing range.
code_size
OpenVMS usage: address
type: quadword (unsigned)
access: read only
mechanism: by value
With code_base_va, defines the potential code range. code_base_va
is required for both creation and extension calls. code_base_va
is the process virtual address of the start of the code region.
code_size is the size of the code region in bytes. An error is
returned if this overlaps any existing range.
ut_base_va
OpenVMS usage: address
type: quadword (unsigned)
access: read only
mechanism: by value
With ut_size, describes the unwind table (UT). ut_base_va is the
process virtual address of the UT and must be quadword aligned.
ut_size is the size of the UT in bytes and must be a multiple of
the size (24 bytes: 3 quadwords) of an unwind table entry (UTE).
The UTEs must describe nonoverlapping code subregions within the
overall code region.
ut_size
OpenVMS usage: address
type: quadword (unsigned)
access: read only
mechanism: by value
With ut_base_va, describes the unwind table (UT). ut_base_va
is the process virtual address of the UT and must be quadword
aligned. ut_size is the size of the UT in bytes and must be
a multiple of the size (24 bytes: 3 quadwords) of an unwind
table entry (UTE). The UTEs must describe nonoverlapping code
sub regions within the overall code region.
gp_value
OpenVMS usage: address
type: quadword (unsigned)
access: read only
mechanism: by value
Ignored on extension calls, required on create calls. The Global
Data Pointer (GP) value for the routines described by these
unwind tables.
unwind_info_base
OpenVMS usage: address
type: quadword (unsigned)
access: read only
mechanism: by value
Ignored on extension calls; required on create calls. The unwind_
info_base plus a particular UTE UIB offset must add up to the
process virtual address of that UIB. Typically for static
code (activated images from disk), this specifies the process
virtual base address of the segment containing the UIBs. However,
dynamically generated code, for example, can pass a zero for the
unwind_info_base and have the full process virtual addresses of
the UIBs in their UTEs.
name
OpenVMS usage: pseudo-image-name
type: character-code-text-string
access: read only
mechanism: by descriptor-fixed-length string descriptor
Passed by descriptor (ignored on extension calls). May be used
for traceback. Need not be unique. Should be less than 255
characters (will be truncated, otherwise).