lxvrbx

Load VSX Vector Rightmost Byte Indexed X-form

lxvrbx XT,RA,RB

Loads a byte from memory into the rightmost byte of a VSX vector register.

Details

The lxvrbx instruction loads a byte from memory into the rightmost byte of a VSX vector register. The address is calculated by adding the contents of two general-purpose registers, RA and RB. If RA is zero, it is treated as zero. The loaded byte is placed in the rightmost byte (byte 15) of the target VSX vector register VSR[XT], with all other bytes set to zero.

Pseudocode Operation

if MSR.VSX=0 then
    VSX_Unavailable()
EA = ((RA=0) ? 0 : GPR[RA]) + GPR[RB]
VSR[32×TX+T] = EXTZ128(MEM(EA,1))

Programming Note

The lxvrbx instruction is used to load a single byte from memory into the rightmost byte of a VSX vector register. Ensure that the VSX facility is enabled in the MSR register; otherwise, an exception will be raised. The address calculation involves adding two general-purpose registers, RA and RB, where RA can be zero. This instruction zeroes out all other bytes in the target vector register except for the rightmost byte.

Example

lxvrbx vs1, r4, r5

Encoding

Binary Layout
0
0
T
6
RA
11
RB
16
13
21
TX
26
 
Format X-form
Opcode 0x7C00001A
Extension VSX
Registers Altered MSR

Operands

  • XT
    Target Vector-Specific Register
  • RA
    Source General Purpose Register
  • RB
    Source General Purpose Register