OpenVMS Calling Standard

Order Number: AA-QSBBA-TE

This document defines the OpenVMS Calling Standard, which specifies the requirements, mechanisms, and conventions for procedure-to-procedure calls in both Alpha and VAX user-mode environments. It details run-time data structures, constants, algorithms, and functional interfaces that ensure correct operation in multilanguage and multithreaded systems.

The standard covers:

  • Register and Stack Usage: Rules for scalar and vector register usage, stack frame formats, and stack pointer conventions for VAX and Alpha processors.
  • Calling Sequences and Argument Lists: Mechanisms for invoking procedures, including argument list formats (immediate value, reference, descriptor), and how function values are returned.
  • Procedure Descriptors and Signatures: Information about procedures, including different types (stack frame, register frame, null frame), and how signature information facilitates interoperation between native Alpha and translated VAX code.
  • Data Passing: Defines argument data types, data alignment, record layout conventions (aligned and VAX compatible), and handling of unused bits in passed data.
  • Condition Handling: Describes the system's exception and condition handling facility, including condition values, condition handlers, and operations like stack unwinding and GOTO unwinds.
  • Multithreaded Environments: Addresses conventions for stack limit checking and stack overflow handling in multithreaded execution.

The standard aims to ensure high performance, portability, efficiency, and consistency for developers of compilers, debuggers, run-time libraries, and operating systems.

AA-QSBBA-TE
1995
169 pages
Quality

Original
7.5MB

Site structure and layout ©2025 Majenko Technologies