17.01.2013 Views

MIPS R10000 Microprocessor User's Manual - SGI TechPubs Library

MIPS R10000 Microprocessor User's Manual - SGI TechPubs Library

MIPS R10000 Microprocessor User's Manual - SGI TechPubs Library

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Floating-Point Unit 305<br />

Load and Store Operations<br />

31<br />

0<br />

Memory †<br />

Singleword Load/Store when Register is Even<br />

LWC1 ft,address (MTC1 ft,rs)<br />

When FR = 0, floating-point load and stores operate as follows:<br />

• A doubleword load or store is handled the same as if the FR bit was<br />

set to 1, as long as the register selected is even (0, 2, 4, etc.).<br />

• If the register selected is odd, the load/store is invalid.<br />

These operations are shown in Figure 15-3. Singleword loads/stores to even and<br />

odd registers are also shown.<br />

63 32 31<br />

0<br />

Unchanged Load 32-bit<br />

SWC1 ft,address (MFC1 rt,fs)<br />

63<br />

32<br />

Sign extend reg.<br />

31<br />

Memory †<br />

†<br />

Move to/from selects an integer register instead.<br />

Moved 32-bit data is sign-extended in 64-bit register.<br />

FR=0 16-Register Mode<br />

Doubleword Load/Store<br />

Same as FR=1 if register is even, else invalid.<br />

31<br />

0<br />

Memory †<br />

Singleword Load/Store when Register is Odd<br />

LWC1 ft,address<br />

63 32 31<br />

0<br />

Load 32-bit Unchanged<br />

SWC1 ft,address<br />

63<br />

32<br />

Sign extend reg.<br />

Figure 15-3 Loading and Storing Floating-Point Registers in 16-Register Mode<br />

NOTE: Move (MOV) and conditional move (MOVC, MOVN, MOVZ are<br />

included in these arithmetic operations, although no arithmetic is actually<br />

performed.<br />

<strong>MIPS</strong> <strong>R10000</strong> <strong>Microprocessor</strong> <strong>User's</strong> <strong>Manual</strong> Version 2.0 of January 29, 1997<br />

0<br />

31<br />

(MTC1 ft,rs)<br />

(MFC1 rt,fs)<br />

Memory †<br />

†<br />

Move to/from selects an integer register instead.<br />

Moved 32-bit data is sign-extended in 64-bit register.<br />

0

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!