LWR
The contents of general register rt are internally bypassed within the processor so that no NOP is needed between
an immediately preceding load instruction which specifies register rt and a following LWR (or LWL) instruction
which also specifies register rt .
No address error exceptions due to alignment are possible.
Operation:
vAddr ← ((offset
32
T:
(pAddr, uncached) ← AddressTranslation (vAddr, DATA)
pAddr ← pAddr
if BigEndianMem = 1 then
pAddr ← pAddr
endif
byte ← vAddr
word ← vAddr
mem ← LoadMemory (uncached, 0 || byte, pAddr, vAddr, DATA)
temp ← GPR [rt]
GPR [rt] ← temp
vAddr ← ((offset
64
T:
(pAddr, uncached) ← AddressTranslation (vAddr, DATA)
pAddr ← pAddr
if BigEndianMem = 1 then
pAddr ← pAddr
endif
byte ← vAddr
word ← vAddr
mem ← LoadMemory (uncached, WORD-byte, pAddr, vAddr, DATA)
temp ← GPR [rt]
GPR [rt] ← (temp
APPENDIX A MIPS III INSTRUCTION SET DETAILS
Load Word Right (2/3)
16
)
|| offset
) + GPR [base]
15
15...0
|| (pAddr
xor ReverseEndian
PSIZE - 1...3
2...0
3
|| 0
PSIZE - 1...3
2
xor BigEndianCPU
1...0
xor BigEndianCPU
2
|| mem
31...32 – 8 * byte
31 + 32 * word...32 * word + 8 * byte
48
)
|| offset
) + GPR [base]
15
15...0
|| (pAddr
xor ReverseEndian
PSIZE - 1...3
2...0
3
|| 0
PSIZE - 1...3
2
xor BigEndianCPU
1...0
xor BigEndianCPU
2
|| mem
31...32 – 8 * byte
31 + 32 * word...32 * word + 8 * byte
32
)
|| temp
31
Preliminary User's Manual S15543EJ1V0UM
3
)
3
)
LWR
519