| 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
|