pstfd

Prefixed Store Floating-Point Double MLS:D-form

pstfd FRT,RA,RB

Stores a double-precision floating-point value from a register to memory.

Details

The prefixed store floating-point double instruction stores the contents of floating-point register FRS into the doubleword in memory addressed by the effective address (EA). The EA is the sum of the content of general-purpose register RA (or 0 if RA=0) and the sign-extended 34-bit immediate value D formed from the prefix and suffix fields. This is a prefixed instruction using the MLS:D-form encoding, introduced in PowerISA v3.1.

Pseudocode Operation

EA ← (if RA=0 then 0 else (RA)) + EXTS(D)
MEM(EA, 8) ← (FRS)

Programming Note

The pstfd instruction is used to store a double-precision floating-point value from a register into memory. Ensure that the effective address calculation does not result in an overflow or underflow. This instruction requires the EA to be aligned on an 8-byte boundary for optimal performance and correctness.

Example

pstfd f1, r4, r5

Encoding

Binary Layout
01
0
100
6
Rc
11
.//..
12
FRT
13
RA
18
RB
23
 
Format MLS:D-form
Opcode 0x7C000000
Extension Prefixed

Operands

  • FRT
    Target Floating-Point Register
  • RA
    Base General Purpose Register
  • RB
    Offset General Purpose Register