Loads a doubleword of data from a specified location in memory into a floating-point register.
The lfd instruction loads a doubleword in storage from a specified location in memory addressed by the effective address (EA) into the target floating-point register (FPR) FRT.
If general-purpose register (GPR) RA is not 0, the EA is the sum of the contents of GPR RA and D, a 16-bit, signed two's complement integer sign-extended to 32 bits. If GPR RA is 0, then the EA is D.
The lfd instruction has one syntax form and does not affect the Floating-Point Status and Control Register or Condition Register Field 0.
|FRT||Specifies target general-purpose register where result of the operation is stored.|
|D||16-bit, signed two's complement integer sign-extended to 32 bits for the EA calculation.|
|RA||Specifies source general-purpose register for the EA calculation.|
The following code loads a doubleword from memory into FPR 6:
.csect data[rw] storage: .double 0x1 # Assume GPR 5 contains the address of csect data[rw]. .csect text[pr] lfd 6,storage(5) # FPR 6 now contains 0x3FF0 0000 0000 0000.
Floating-Point Load and Store Instructions.