Chapter 2. Programming Model
2-49
Instruction Set Summary
2.3.4.3 Load and Store Instructions
Load and store instructions are issued and translated in program order; however, the
accesses can occur out of order. Synchronizing instructions are provided to enforce strict
ordering. This section describes the load and store instructions, which consist of the
following:
¥
¥
¥
¥
¥
¥
¥
Integer load instructions
Integer store instructions
Integer load and store with byte-reverse instructions
Integer load and store multiple instructions
Floating-point load instructions
Floating-point store instructions
Memory synchronization instructions
Implementation Notes
The following describes how the MPC7400 handles
misalignment:
The MPC7400 provides hardware support for misaligned memory accesses. It performs
those accesses within a single cycle if the operand lies within a double-word boundary.
Misaligned memory accesses that cross a double-word boundary degrade performance.
For string operations, the hardware makes no attempt to combine register values to reduce
the number of discrete accesses. Combining stores enhances performance if store gathering
is enabled and the accesses meet the criteria described in Section 6.4.5.2, òInteger Store
Gathering.ó Note that the PowerPC architecture requires load/store multiple instruction
accesses to be aligned. At a minimum, additional cache access cycles are required.
Although many misaligned memory accesses are supported in hardware, the frequent use
of them is discouraged because they can compromise the overall performance of the
processor.
Accesses that cross a translation boundary can be restarted. That is, a misaligned access that
crosses a page boundary is completely restarted if the second portion of the access causes
a page fault. This can cause the Trst access to be repeated.
Table 2-29. Floating-Point Move Instructions
Name
Mnemonic
Syntax
Floating Move Register
fmr
(
fmr.
)
fr
D
,fr
B
Floating Negate
fneg
(
fneg.
)
fr
D
,fr
B
Floating Absolute Value
fabs
(
fabs.
)
fr
D
,fr
B
Floating Negative Absolute Value
fnabs
(
fnabs.
)
fr
D
,fr
B