stxsiwx

Store VSX Scalar as Integer Word Indexed

stxsiwx XS, RA, RB

Stores a single-precision floating-point value from a VSX register into memory, indexed by another register.

Details

Stores the low-order 32 bits from the left-most doubleword element of VSX register XS into memory at the address computed as RA+RB. The effective address is formed by adding RA (or 0 if RA=0) and RB. The 32-bit word from XS[32:63] is written to the memory location. This VSX extension instruction does not affect condition registers.

Pseudocode Operation

EA ← (RA = 0) ? RB : RA + RB
[EA:EA+3] ← XS[32:63]

Programming Note

The stxsiwx instruction stores the second word of a VSX register into memory. Ensure that the VSX facility is enabled in the MSR register to avoid exceptions. The effective address is calculated from two GPRs, so ensure proper alignment and bounds checking to prevent memory access errors.

Example

stxsiwx vs1, r4, r5

Encoding

Binary Layout
011111
6
RS
11
B
16
RB
21
00100
31
01100
 
Format XX1-form
Opcode 0x7C000118
Extension VSX
Registers Altered MSR

Operands

  • XS
    Source
  • RA
    Base
  • RB
    Index
  • RS
    Source VSX Register
  • B
    Base General Purpose Register