pstfd
Prefixed Store Floating-Point Double MLS:D-form
Stores a double-precision floating-point value from a register to memory.
Details
Stores a double-precision floating-point value from a floating-point register to memory using a prefixed instruction format (64 bits total: 32-bit prefix + 32-bit instruction). The addressing mode uses a base register and a displacement that can be formed from the prefix and suffix portions, allowing for a wider displacement range than non-prefixed forms. This instruction does not update condition registers.
Pseudocode Operation
displacement ← (prefix_immediate || suffix_immediate) [sign-extended to 64 bits]
EA ← RA + displacement
[EA:EA+7] ← FRT[0:63]
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
Encoding
Operands
-
FRT
Target Floating-Point Register -
RA
Base General Purpose Register -
RB
Offset General Purpose Register