2-72
MPC7400 RISC Microprocessor Users Manual
AltiVec Instructions
2.4 AltiVec Instructions
The following sections provide a general summary of the instructions and addressing
modes deTned by the AltiVec Instruction Set Architecture (ISA). For speciTc details on the
AltiVec instructions see
The AltiVec Technology Programming Environments Manual
for
more information. AltiVec instructions belong primarily to the UISA, unless otherwise
noted. AltiVec instructions are divided into the following categories:
¥
Vector integer arithmetic instructionsThese include arithmetic, logical, compare,
rotate and shift instructions, described in Section 2.3.4.1, òInteger Instructions.ó
Vector oating-point arithmetic instructionsThese oating-point arithmetic
instructions and oating-point modes are described in Section 2.3.4.2,
òFloating-Point Instructions.ó
Vector load and store instructionsThese load and store instructions for vector
registers are described in Section 2.3.4.3, òLoad and Store Instructions.ó
Vector permutation and formatting instructionsThese include pack, unpack,
merge, splat, permute, select and shift instructions, and are described in
Section 2.5.5, òVector Permutation and Formatting Instructions.ó
Processor control instructionsThese instructions are used to read and write from
the AltiVec Status and Control Register, and are described in Section 2.3.4.6,
òProcessor Control InstructionsUISA.ó
Memory control instructionsThese instructions are used for managing caches
(user level and supervisor level), and are described in Section 2.6.1, òAltiVec Vector
Memory Control InstructionsVEA.ó
¥
¥
¥
¥
¥
This grouping of instructions does not necessarily indicate the execution unit that processes
a particular instruction or group of instructions within a processor implementation.
Integer instructions operate on byte, half-word, and word operands. Floating-point
instructions operate on single-precision operands. The AltiVec ISA uses instructions that
are four bytes long and word-aligned. It provides for byte, half-word, word, and quad-word
operand fetches and stores between memory and the vector registers (VRs).
Arithmetic and logical instructions do not read or modify memory. To use the contents of a
memory location in a computation and then modify the same or another memory location,
the memory contents must be loaded into a register, modiTed, and then written to the target
location using load and store instructions.
Memory operands can be bytes, half words, words, or quad words for AltiVec instructions.
The AltiVec ISA supports both big-endian and little-endian byte ordering. The default byte
and bit ordering is big-endian; see òByte Ordering,ó in Chapter 3, òOperand Conventions,ó
of
The AltiVec Technology Programming Environments Manual
for more information.