stxsibx

Store VSX Scalar as Integer Byte Indexed X-form

stxsibx XS,RA,RB

Stores a byte from a VSX scalar register into memory at an address formed by adding two general-purpose registers.

Details

The instruction stores the byte element 7 of VSR[XS] into the memory location specified by the effective address (EA), which is the sum of GPR[RA] and GPR[RB]. If RA is zero, EA is simply GPR[RB].

Pseudocode Operation

if SX=0 & MSR.VSX=0 then
    VSX_Unavailable()
if SX=1 & MSR.VEC=0 then
    Vector_Unavailable()
EA ←((RA=0) ? 0 : GPR[RA]) + GPR[RB]
MEM(EA,1) ←VSR[32×SX+S].byte[7]

Programming Note

This instruction is used to store a specific byte from a VSX register into memory. Ensure that the appropriate privilege level and MSR bits (VSX or VEC) are set before using this instruction, as it may raise exceptions if not. The effective address is calculated based on GPR[RA] and GPR[RB], with special handling if RA is zero. Be cautious of alignment requirements to avoid potential performance penalties or exceptions.

Example

stxsibx vs1, r4, r5

Encoding

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

Operands

  • XS
    VSX Scalar Register
  • RA
    Source General Purpose Register
  • RB
    Source General Purpose Register