
2-34
MPC603e & EC603e RISC Microprocessors User's Manual
MOTOROLA
2.3.4.3.8 Floating-Point Load and Store Address Generation
Floating-point load and store operations generate effective addresses using the register
indirect with immediate index addressing mode and register indirect with index addressing
mode, the details of which are described below. Floating-point loads and stores are not
supported for direct-store accesses. The use of the floating-point load and store operations
for direct-store accesses will result in a DSI exception. (Note that floating-point instructions
are not supported on the EC603e microprocessor.)
2.3.4.3.9 Floating-Point Load Instructions
There are two forms of the floating-point load instruction—single-precision and double-
precision operand formats. Because the FPRs support only the floating-point double-
precision format, single-precision floating-point load instructions convert single-precision
data to double-precision format before loading the operands into the target FPR. This
conversion is described fully in “Floating-Point Load Instructions” in Appendix D,
“Floating-Point Models,” in
The Programming Environments Manual
.
Implementation Note
—The PowerPC architecture defines load with update instructions
with
r
A = 0 as an invalid form; however, the 603e treats this case as a valid form.
On the EC603e microprocessor, floating-point instructions are trapped by the floating-point
unavailable exception vector and can be emulated in software.
Table 2-25 provides a list of the floating-point load instructions. (Floating-point
instructions are not supported on the EC603e microprocessor.)
2.3.4.3.10 Floating-Point Store Instructions
There are three basic forms of the store instruction—single-precision, double-precision,
and integer. The integer form is supported by the optional
stfiwx
instruction. Because the
FPRs support only floating-point, double-precision format for floating-point data single-
precision floating-point store instructions convert double-precision data to single-precision
format before storing the operands. The conversion steps are described fully in “Floating-
Table 2-25. Floating-Point Load Instructions
Name
Mnemonic
Operand Syntax
Load Floating-Point Single
lfs
fr
D
,
d(
r
A)
Load Floating-Point Single Indexed
lfsx
fr
D
,r
A
,r
B
Load Floating-Point Single with Update
lfsu
fr
D
,
d(
r
A)
Load Floating-Point Single with Update Indexed
lfsux
fr
D
,r
A
,r
B
Load Floating-Point Double
lfd
fr
D
,
d(
r
A)
Load Floating-Point Double Indexed
lfdx
fr
D
,r
A
,r
B
Load Floating-Point Double with Update
lfdu
fr
D
,
d(
r
A)
Load Floating-Point Double with Update Indexed
lfdux
fr
D
,r
A
,r
B