| 6 | 
  
  
    | 
64-bit addressing
     | 
  
  
    | A | 
  
  
    | 
ADAWI instruction
     | 
  
  
    | 
    synchronization guarantees
     | 
  
  
    | 
Address loading optimization
     | 
  
  
    | 
    enabling #1
     | 
  
  
    | 
    enabling #2
     | 
  
  
    | 
ADDRESSBITS symbol
     | 
  
  
    | 
Addresses
     | 
  
  
    | 
    passing 64-bit values #1
     | 
  
  
    | 
    passing 64-bit values #2
     | 
  
  
    | 
    specifying 64-bit computing
     | 
  
  
    | 
Addressing
     | 
  
  
    | 
    64-bit
     | 
  
  
    | 
    macros for 64-bit
     | 
  
  
    | 
    support for 64-bit
     | 
  
  
    | 
.ALIGN directive
     | 
  
  
    | 
Aligning data #1
     | 
  
  
    | 
Aligning data #2
     | 
  
  
    | 
    atomicity considerations
     | 
  
  
    | 
    compiler alignment assumptions
     | 
  
  
    | 
    precedence of alignment controls
     | 
  
  
    | 
    recommendations
     | 
  
  
    | 
Alignment assumptions
     | 
  
  
    | 
    quadword memory references
     | 
  
  
    | 
Alpha assembly language code
     | 
  
  
    | 
    See Alpha instructions,  Alpha assembly language object code, and Code
     | 
  
  
    | 
Alpha assembly language object code
     | 
  
  
    | 
    obtaining from compiler
     | 
  
  
    | 
Alpha instructions
     | 
  
  
    | 
    generated for atomicity #1
     | 
  
  
    | 
    generated for atomicity #2
     | 
  
  
    | 
    generated for granularity
     | 
  
  
    | 
    See also Alpha assembly language object  code and Code
     | 
  
  
    | 
    using #1
     | 
  
  
    | 
    using #2
     | 
  
  
    | 
Alpha MACRO compiler
     | 
  
  
    | 
    See MACRO compiler
     | 
  
  
    | 
ALPHA symbol
     | 
  
  
    | 
AP
     | 
  
  
    | 
    modifying
     | 
  
  
    | 
    offsets from
     | 
  
  
    | 
    references from
     | 
  
  
    | 
    references from .JSB_ENTRY routines
     | 
  
  
    | 
ARCH_DEFS.MAR
     | 
  
  
    | 
$ARGn symbols #1
     | 
  
  
    | 
$ARGn symbols #2
     | 
  
  
    | 
Argument list
     | 
  
  
    | 
    determining when homed
     | 
  
  
    | 
    forcing the homing of #1
     | 
  
  
    | 
    forcing the homing of #2
     | 
  
  
    | 
    FP-based references to #1
     | 
  
  
    | 
    FP-based references to #2
     | 
  
  
    | 
    homed
     | 
  
  
    | 
    indicating quadword references
     | 
  
  
    | 
Argument lists
     | 
  
  
    | 
    fixed-size
     | 
  
  
    | 
    suppressing homing
     | 
  
  
    | 
    variable-size
     | 
  
  
    | 
Argument pointer (AP)
     | 
  
  
    | 
    See AP
     | 
  
  
    | 
Argument register #1
     | 
  
  
    | 
Argument register #2
     | 
  
  
    | 
Arguments
     | 
  
  
    | 
    declaring quadword
     | 
  
  
    | 
    maximum number of #1
     | 
  
  
    | 
    maximum number of #2
     | 
  
  
    | 
    symbolic variables
     | 
  
  
    | 
Arithmetic traps #1
     | 
  
  
    | 
Arithmetic traps #2
     | 
  
  
    | 
.ASCIC
     | 
  
  
    | 
.ASCID directive
     | 
  
  
    | 
.ASCII data
     | 
  
  
    | 
.ASCIZ
     | 
  
  
    | 
Assembler directives
     | 
  
  
    | 
    VAX MACRO
     | 
  
  
    | 
Assembly language code
     | 
  
  
    | 
    See Alpha instructions, Alpha  assembly language object code, Code, VAX MACRO instructions, and VAX MACRO  source code
     | 
  
  
    | 
Assembly language instructions
     | 
  
  
    | 
    Alpha built-ins
     | 
  
  
    | 
ASTs (asynchronous system traps)
     | 
  
  
    | 
    preserving atomicity
     | 
  
  
    | 
Atomicity
     | 
  
  
    | 
    alignment considerations
     | 
  
  
    | 
    byte and word-write operations #1
     | 
  
  
    | 
    byte and word-write operations #2
     | 
  
  
    | 
    byte and word-write operations #3
     | 
  
  
    | 
    interlocked instructions
     | 
  
  
    | 
    preserving #1
     | 
  
  
    | 
    preserving #2
     | 
  
  
    | 
    preserving #3
     | 
  
  
    | 
    read-modify-write operations #1
     | 
  
  
    | 
    read-modify-write operations #2
     | 
  
  
    | 
    read-modify-write operations #3
     | 
  
  
    | 
    See also Synchronization
     | 
  
  
    | 
    when cannot be guaranteed
     | 
  
  
    | 
Atomicity controls
     | 
  
  
    | 
    precedence over granularity
     | 
  
  
    | B | 
  
  
    | 
Base address
     | 
  
  
    | 
    See Common-based referencing
     | 
  
  
    | 
BBCCI instruction
     | 
  
  
    | 
    synchronization guarantees
     | 
  
  
    | 
BBSSI instruction
     | 
  
  
    | 
    synchronization guarantees
     | 
  
  
    | 
BICPSW
     | 
  
  
    | 
    restriction on Z and N condition codes
     | 
  
  
    | 
BIGPAGE symbol
     | 
  
  
    | 
Branch
     | 
  
  
    | 
    between local routines
     | 
  
  
    | 
    detecting between routines
     | 
  
  
    | 
    from JSB routine to CALL routine
     | 
  
  
    | 
    into a loop
     | 
  
  
    | 
    target of indeterminate
     | 
  
  
    | 
    to label plus offset #1
     | 
  
  
    | 
    to label plus offset #2
     | 
  
  
    | 
Branch prediction #1
     | 
  
  
    | 
Branch prediction #2
     | 
  
  
    | 
Branch prediction #3
     | 
  
  
    | 
    .BRANCH_LIKELY directive
     | 
  
  
    | 
    .BRANCH_UNLIKELY directive
     | 
  
  
    | 
    changing the compiler's
     | 
  
  
    | 
.BRANCH_LIKELY directive #1
     | 
  
  
    | 
.BRANCH_LIKELY directive #2
     | 
  
  
    | 
    how to use
     | 
  
  
    | 
.BRANCH_UNLIKELY directive #1
     | 
  
  
    | 
.BRANCH_UNLIKELY directive #2
     | 
  
  
    | 
    how to use
     | 
  
  
    | 
BRNDIRLOC warning message
     | 
  
  
    | 
BRNTRGLOC warning message
     | 
  
  
    | 
BSBW instruction
     | 
  
  
    | 
    in porting from OpenVMS Alpha to  OpenVMS I64
     | 
  
  
    | 
BUGx
     | 
  
  
    | 
Built-ins
     | 
  
  
    | 
    Alpha assembly language instructions #1
     | 
  
  
    | 
    Alpha assembly language instructions #2
     | 
  
  
    | 
    Alpha instruction
     | 
  
  
    | 
    Alpha PALcode
     | 
  
  
    | 
    Alpha PALcode routines #1
     | 
  
  
    | 
    Alpha PALcode routines #2
     | 
  
  
    | 
    defining PALcode
     | 
  
  
    | 
    EVAX_*
     | 
  
  
    | 
    EVAX_LQxL
     | 
  
  
    | 
    EVAX_STxC
     | 
  
  
    | 
    Itanium instruction
     | 
  
  
    | 
Byte count
     | 
  
  
    | 
    converting to page count
     | 
  
  
    | 
.BYTE directive
     | 
  
  
    | 
Byte granularity
     | 
  
  
    | 
    preserving #1
     | 
  
  
    | 
    preserving #2
     | 
  
  
    | 
    preserving #3
     | 
  
  
    | 
$BYTES_TO_PAGES macro #1
     | 
  
  
    | 
$BYTES_TO_PAGES macro #2
     | 
  
  
    | C | 
  
  
    | 
CALL entry point
     | 
  
  
    | 
    declaring #1
     | 
  
  
    | 
    declaring #2
     | 
  
  
    | 
Call frame
     | 
  
  
    | 
    manually assembling
     | 
  
  
    | 
$CALL64 macro #1
     | 
  
  
    | 
$CALL64 macro #2
     | 
  
  
    | 
    passing 64-bit values
     | 
  
  
    | 
CALLG instruction
     | 
  
  
    | 
    argument count exceeds 255
     | 
  
  
    | 
    in porting from OpenVMS Alpha to  OpenVMS I64
     | 
  
  
    | 
CALLS instruction
     | 
  
  
    | 
    in porting from OpenVMS Alpha to  OpenVMS I64
     | 
  
  
    | 
.CALL_ENTRY directive #1
     | 
  
  
    | 
.CALL_ENTRY directive #2
     | 
  
  
    | 
.CALL_ENTRY directive #3
     | 
  
  
    | 
.CALL_ENTRY directive #4
     | 
  
  
    | 
    $ARGn symbols
     | 
  
  
    | 
    compiler's temporary register usage
     | 
  
  
    | 
    homing arguments
     | 
  
  
    | 
    QUAD_ARGS parameter
     | 
  
  
    | 
        declaring 64-bit values #1
     | 
  
  
    | 
        declaring 64-bit values #2
     | 
  
  
    | 
.CALL_LINKAGE directive #1
     | 
  
  
    | 
.CALL_LINKAGE directive #2
     | 
  
  
    | 
    in porting from OpenVMS Alpha to  OpenVMS I64
     | 
  
  
    | 
CASE instructions
     | 
  
  
    | 
    required changes
     | 
  
  
    | 
Code
     | 
  
  
    | 
    common for VAX, Alpha, and I64 #1
     | 
  
  
    | 
    common for VAX, Alpha, and I64 #2
     | 
  
  
    | 
    debugging
     | 
  
  
    | 
    instruction scheduling
     | 
  
  
    | 
    interleaved instructions
     | 
  
  
    | 
    moved
     | 
  
  
    | 
    moving #1
     | 
  
  
    | 
    moving #2
     | 
  
  
    | 
    optimization #1
     | 
  
  
    | 
    optimization #2
     | 
  
  
    | 
    relocation #1
     | 
  
  
    | 
    relocation #2
     | 
  
  
    | 
    removing
     | 
  
  
    | 
    replicating
     | 
  
  
    | 
    run-time generation
     | 
  
  
    | 
    self-modifying #1
     | 
  
  
    | 
    self-modifying #2
     | 
  
  
    | 
Code scheduling optimization
     | 
  
  
    | 
    enabling
     | 
  
  
    | 
Coding conventions
     | 
  
  
    | 
Coding practices
     | 
  
  
    | 
    fixing nonportable
     | 
  
  
    | 
    nonportable
     | 
  
  
    | 
Common base address
     | 
  
  
    | 
Common-based referencing
     | 
  
  
    | 
    external
     | 
  
  
    | 
    local
     | 
  
  
    | 
    See also /OPTIMIZE qualifier
     | 
  
  
    | 
Common code #1
     | 
  
  
    | 
Common code #2
     | 
  
  
    | 
Compiler
     | 
  
  
    | 
    See MACRO compiler
     | 
  
  
    | 
Compiler messages
     | 
  
  
    | 
Compiling
     | 
  
  
    | 
    files required
     | 
  
  
    | 
Concurrent threads
     | 
  
  
    | 
    preserving atomicity
     | 
  
  
    | 
Condition codes
     | 
  
  
    | 
    interroutine communication
     | 
  
  
    | 
    restriction on Z and N
     | 
  
  
    | 
Condition handlers #1
     | 
  
  
    | 
Condition handlers #2
     | 
  
  
    | 
    establishing within .CALL_ENTRY routine
     | 
  
  
    | 
    modifying
     | 
  
  
    | 
Conditionalized code
     | 
  
  
    | 
Conventions
     | 
  
  
    | 
    coding
     | 
  
  
    | 
    consistent register declarations
     | 
  
  
    | 
    maintaining common MACRO sources
     | 
  
  
    | 
Coroutines
     |