fmr (Floating Move Register) instruction
Purpose
Copies the contents of one floating-point register into another floating-point register.
Syntax
| Bits | Value |
|---|---|
| 0-5 | 63 |
| 6-10 | FRT |
| 11-15 | /// |
| 16-20 | FRB |
| 21-30 | 72 |
| 31 | Rc |
Description
The fmr instruction places the contents of floating-point register (FPR) FRB into the target FPR FRT.
The fmr instruction has two syntax forms. Each syntax form has a different effect on Condition Register Field 1.
| Item | Description | ||
|---|---|---|---|
| Syntax Form | Floating-Point Status and Control Register | Record Bit (Rc) | Condition Register Field 1 |
| fmr | None | 0 | None |
| fmr. | None | 1 | FX,FEX,VX,OX |
The two syntax forms of the fmr instruction never affect the Floating-Point Status and Control Register. If the syntax form sets the Record (Rc) bit to 1, the instruction affects the Floating-Point Exception (FX), Floating-Point Enabled Exception (FEX), Floating-Point Invalid Operation Exception (VX), and Floating-Point Overflow Exception (OX) bits in Condition Register Field 1.
Parameters
| Item | Description |
|---|---|
| FRT | Specifies target floating-point register for operation. |
| FRB | Specifies source floating-point register for operation. |
Examples
- The following code copies the contents of FPR 4 into
FPR 6 and sets the Floating-Point Status and Control Register to reflect
the result of the operation:
# Assume FPR 4 contains 0xC053 4000 0000 0000. # Assume FPSCR = 0. fmr 6,4 # FPR 6 now contains 0xC053 4000 0000 0000. # FPSCR now contains 0x0000 0000. - The following code copies the contents of FPR 25
into FPR 6 and sets the Floating-Point Status and Control Register
and Condition Register Field 1 to reflect the result of the operation:
# Assume FPR 25 contains 0xFFFF FFFF FFFF FFFF. # Assume FPSCR = 0 and CR = 0. fmr. 6,25 # FPR 6 now contains 0xFFFF FFFF FFFF FFFF. # FPSCR now contains 0x0000 0000. # CR now contains 0x0000 0000.