User`s guide

$PAGES_TO_BYTES macro, 5–7, D–4
PALcode, 3–23
See Built-ins
Pass-through input technique, 2–13
Pass-through output technique, 2–14
PD_DEC_OVF symbol, 2–18
PD_INT_OVF symbol, 2–18
Peephole optimization
enabling, A–8
Performance
See Optimization
PIC
See Position independent code
Pointer-type declarations, 5–5
POLYx floating-point instruction, 2–19
Poor programmer’s lockdown, 3–18 to 3–23
$POP64 macro, D–6
POPR instruction, 2–12
Porting, 1–1 to 1–11
from OpenVMS Alpha to OpenVMS I64, 1–6
from OpenVMS VAX to OpenVMS Alpha or
OpenVMS I64, 1–4
Position independent code (PIC), 3–15
Precedence
alignment controls, 4–2
atomicity, 2–26
granularity, 2–26
Prefix file, 1–10
.PRESERVE directive, B–17
ATOMICITY option, 2–22, 3–24, B–17
GRANULARITY option, 2–24, 3–23, B–17,
B–18
/PRESERVE qualifier, A–2
ATOMICITY option, 2–22, 3–24, A–8
GRANULARITY option, 2–24, 3–23, A–8
Preserve register set, B–5, B–10, B–13, B–15
$PREVIOUS_PAGE, D–4
$PREVIOUS_PAGE macro, 5–7
Procedure descriptor, 2–6
Procedure descriptor, Alpha systems, 2–5
Program section (psect)
to delineate code, 3–19
Program Status Word (PSW), 2–18
Prologue code
preserving register contents, 2–12
preserving registers, 2–5
PSL (processor status longword), 3–7
$PUSH64 macro, D–7
PUSHR instruction, 2–12
$PUSH_ARG64 macro, 5–1, E–2
passing 64-bit values, 5–2
Q
Quad parameter, D–2, D–3, D–4, D–5, D–6
QUAD parameter for page macros, 5–2
Quadword addresses
computing, 5–5
Quadword arguments
declaring, 5–4
passing, 5–2
Quadword literal mode
disabling, A–3, A–4, B–9
enabling, A–4, B–9
Quadword moves into the VAX SP and PC, 3–3
Quadword operations
aligned quadwords, 3–23
QUAD_ARGS parameter, 5–4
Qualifiers, A–1 to A–10
Queue instructions
synchronization guarantees, 3–24
R
$RAB64 macro, 5–2, 5–7
$RAB64_STORE macro, 5–2, 5–7
$RAB macro, 5–7
$RAB_STORE macro, 5–7
.REFn directive, B–1
Register declaration
input argument, 2–13
output argument, 2–14
preserve argument, 2–15
scratch argument, 2–14
Register mapping
on Itanium, 2–2
Registers
available for use by Macro-32 code, 2–1 to 2–2
declaring at routine entry points, 1–8, 2–12 to
2–16
differences between Alpha and Itanium and
VAX, 2–1
entry-point
help for specifying, 2–15
preserving contents, 2–10, 2–11, 2–12
preserving in prologue and epilogue code, 2–5,
2–12
restoring contents, 2–10, 2–11, 2–12
restrictions, 2–2
saving and restoring on stack, D–6 to D–7
saving contents, 2–10, 2–11, 2–12
REI instruction
modifying the instruction stream, 3–24
using to change mode, 3–13
REI target
constructing, 1–7
Reserved operand faults, 1–4
Index–7