stxsspx

Store VSX Scalar Single-Precision Indexed X-form

stxsspx XS,RA,RB

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

Details

Converts the value in the right doubleword of VSX register XS from double-precision to single-precision floating-point format and stores it to memory at address (RA) + (RB). This is a VSX instruction and does not affect condition registers or status fields.

Pseudocode Operation

ea ← (RA) + (RB)
dp_value ← XS.doubleword[1]
sp_value ← convert_dp_to_sp(dp_value)
[ea] ← sp_value

Programming Note

The stxsspx instruction is used to store a single-precision floating-point value from the VSX register into memory. Ensure that the VSX facility is enabled by checking and setting the MSR.VSX bit. Be cautious of alignment requirements; the EA must be 4-byte aligned for optimal performance. If RA is zero, the effective address (EA) will be set to zero, which might lead to unexpected behavior if not intended.

Example

stxsspx vs1, r4, r5

Encoding

Binary Layout
0
0
S
1
RA
6
RB
11
18
16
SX
21
 
Format X-form
Opcode 0x7C000518
Extension VSX
Registers Altered MSR

Operands

  • XS
    VSX Scalar Register Index
  • RA
    Source General Purpose Register (Base Address)
  • RB
    Source General Purpose Register (Index)