Chapter 5 |
5
|
Signature Information and Translated Images (Alpha and I64 Systems Only)
|
5.1
|
Overview
|
5.1.1
|
Translated VAX Images on Alpha Systems
|
5.1.1.1
|
Direct Calls From Translated to Native Code
|
5.1.1.2
|
Direct Calls From Native to Translated Code
|
5.1.1.3
|
Indirect Calls From Native to Translated Code
|
5.1.2
|
Translated Images on I64 Systems
|
5.1.2.1
|
Calls From Translated to Native I64 Code
|
5.1.2.2
|
Direct Calls From Native I64 Code to Translated Code
|
5.1.2.3
|
Indirect Calls From Native to Translated Code
|
5.1.3
|
Signature Information Fields in Function Descriptors
|
5.2
|
Signature Information Blocks
|
5.2.1
|
Signature Information on Alpha Systems
|
5.2.2
|
Signature Information on I64 Systems
|
5.2.3
|
Signature Information Block Content
|
5.2.4
|
Call Parameter PSIG Conversions
|
5.2.4.1
|
Native-Alpha-to-Translated-VAX PSIG Conversions
|
5.2.4.2
|
Translated-VAX-to-Native-Alpha PSIG Conversions
|
5.2.4.3
|
Native-I64-to-Translated-Alpha PSIG Conversions
|
5.2.4.4
|
Translated-Alpha-to-Native-I64 PSIG Conversions
|
5.2.5
|
Default Signature Information
|
Chapter 6 |
6
|
OpenVMS Argument Data Types
|
6.1
|
Atomic Data Types
|
6.2
|
String Data Types
|
6.3
|
Miscellaneous Data Types
|
6.4
|
Reserved Data-Type Codes
|
6.4.1
|
Facility-Specific Data-Type Codes
|
6.5
|
Varying Character String Data Type (DSC$K_DTYPE_VT)
|
Chapter 7 |
7
|
OpenVMS Argument Descriptors
|
7.1
|
Descriptor Prototype
|
7.2
|
Fixed-Length Descriptor (CLASS_S)
|
7.3
|
Dynamic String Descriptor (CLASS_D)
|
7.4
|
Array Descriptor (CLASS_A)
|
7.5
|
Procedure Argument Descriptor (CLASS_P)
|
7.6
|
Decimal String Descriptor (CLASS_SD)
|
7.7
|
Noncontiguous Array Descriptor (CLASS_NCA)
|
7.8
|
Varying String Descriptor (CLASS_VS)
|
7.9
|
Varying String Array Descriptor (CLASS_VSA)
|
7.10
|
Unaligned Bit String Descriptor (CLASS_UBS)
|
7.11
|
Unaligned Bit Array Descriptor (CLASS_UBA)
|
7.12
|
String with Bounds Descriptor (CLASS_SB)
|
7.13
|
Unaligned Bit String with Bounds Descriptor (CLASS_UBSB)
|
7.14
|
Reserved Descriptor Class Codes
|
7.14.1
|
Facility-Specific Descriptor Class Codes
|
Chapter 8 |
8
|
OpenVMS Conditions
|
8.1
|
Condition Values
|
8.1.1
|
Interpretation of Severity Codes
|
8.1.2
|
Use of Condition Values
|
8.2
|
Condition Handlers
|
8.3
|
Condition Handler Options
|
8.4
|
Operations Involving Condition Handlers
|
8.4.1
|
Establishing a Condition Handler
|
8.4.2
|
Reverting to the Caller's Handling
|
8.4.3
|
Signaling a Condition
|
8.4.4
|
Signaling a Condition Using GENTRAP (Alpha and I64 Systems Only)
|
8.4.5
|
Signaling a Condition Using BREAK (I64 Only)
|
8.4.6
|
Condition Handler Search
|
8.5
|
Properties of Condition Handlers
|
8.5.1
|
Condition Handler Parameters and Invocation
|
8.5.1.1
|
Signal Argument Vector
|
8.5.1.2
|
Mechanism Argument Vector
|
8.5.1.2.1
|
VAX Mechanism Vector Format
|
8.5.1.2.2
|
Alpha Mechanism Vector Format
|
8.5.1.2.3
|
I64 Mechanism Vector Format
|
8.5.1.3
|
Mechanism Depth
|
8.5.2
|
System Default Condition Handlers
|
8.5.3
|
Coordinating the Handler and Establisher
|
8.5.3.1
|
Use of Memory
|
8.5.3.2
|
Exception Synchronization (Alpha Only)
|
8.5.3.3
|
Continuation from Exceptions (Alpha Only)
|
8.5.3.4
|
Floating-Point Control Status (I64 Only)
|
8.6
|
Returning from a Condition Handler
|
8.7
|
Request to Unwind from a Signal
|
8.7.1
|
Signaler's Registers
|
8.7.2
|
Unwind Completion
|
8.8
|
GOTO Unwind Operations (Alpha and I64 Systems Only)
|
8.8.1
|
Handler Invocation During a GOTO Unwind
|
8.8.2
|
Unwind Completion
|
8.9
|
Multiple Active Signals
|
8.10
|
Multiple Active Unwind Operations
|
Appendix A |
Appendix A
|
Stack Unwinding and Exception Handling on OpenVMS I64
|
A.1
|
Unwinding the Stack
|
A.1.1
|
Initial Context
|
A.1.2
|
Step to Previous Frame
|
A.2
|
Exception Handling Framework
|
A.3
|
Coding Conventions for Reliable Unwinding
|
A.3.1
|
Requirements for Unwinding the Stack
|
A.3.2
|
Conventions for Prologue Regions
|
A.3.3
|
Conventions for Body Regions
|
A.3.4
|
Conventions for Epilogues
|
A.3.5
|
Conventions for the Spill Area in the Memory Stack Frame
|
A.4
|
Data Structures
|
A.4.1
|
Unwind Table and Unwind Information Block
|
A.4.1.1
|
Unwind Descriptor Area
|
A.4.1.2
|
Region Header Records
|
A.4.1.3
|
Descriptor Records for Prologue Regions
|
A.4.1.4
|
Descriptor Records for Body Regions
|
A.4.1.5
|
Descriptor Records for Body or Prologue Regions
|
A.4.1.6
|
Rules for Using Unwind Descriptors
|
A.4.1.7
|
Processing Unwind Descriptors
|
A.4.2
|
Condition Handler
|
A.4.3
|
Operating System-Specific Data Area
|
A.4.3.1
|
General Information Segment
|
A.4.3.2
|
Caller Spill Register Information
|
A.4.4
|
Language-Specific Data Area
|
A.5
|
Default Unwind Information
|
A.6
|
System Unwind Routines
|