VAX Macro

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

VAX Macro is the computer assembly language implementing the instruction set for the line of CPUs designed to run the OpenVMS operating system created by Digital Equipment Corporation in 1977. OpenVMS now belongs to Hewlett-Packard.

The syntax, directives, macro language, and lexical substitution operators of VAX Macro previously appeared in Macro-11, the assembler for the PDP-11 series of computers. VAX Macro or, as it was also known, Macro-32, supported the VAX processors developed and manufactured by Digital Equipment Corporation. It ran under the VAX/VMS operating system and produced object files suitable for the VAX/VMS linker. The Macro-32 assembler (and the linker) were bundled with the operating system.

With the advent of the 64-bit Alpha AXP chip, VAX Macro essentially became VMS Macro. Macro-32 was supported on the Alpha architecture, but because the Alpha used a different instruction set, the Macro-32 assembly language no longer mapped to the native instruction set. Macro-32 under the Alpha architecture was actually implemented then as a compiler, compiling VAX assembly language into Alpha instructions. Unlike most compilers, however, Macro-32 for Alpha performed no optimization, retaining as much as possible the programmer's direct control over the generated code.

The Alpha AXP chips introduced to the VMS world then the latest progression of the VMS Macro language, supporting the underlying RISC instruction set, and was called Macro-64.

A compiler from Macro-32 is available for Intel Itanium architecture [1] A significant part of OpenVMS is written with Macro-32.