lxsibzx

Load VSX Scalar as Integer Byte & Zero Indexed X-form

lxsibzx XT,RA,RB

Loads a byte from memory and places it into the specified VSX register, zeroing the upper half.

Details

Loads a signed byte from memory at address (RA) + (RB), converts it to a 64-bit integer, and places the result into the right element of VSX register XT. The left element of XT is cleared. This is a VSX instruction and does not affect condition registers or status fields.

Pseudocode Operation

ea ← (RA) + (RB)
byte_value ← [ea] (sign-extended to 64 bits)
XT.doubleword[1] ← byte_value
XT.doubleword[0] ← 0

Programming Note

The lxsibzx instruction is commonly used to load an unsigned byte from memory into a VSX register, with the upper 64 bits set to zero. Ensure that the effective address (EA) is properly aligned and within bounds to avoid exceptions. This instruction requires VSX or Vector facility enabled in the MSR register, depending on the transactional execution context.

Example

lxsibzx vs1, r4, r5

Encoding

Binary Layout
31
0
XT
6
RA
11
RB
16
781
21
TX
31
 
Format X-form
Opcode 0x7C00061A
Extension VSX

Operands

  • XT
    Target VSX Register
  • RA
    Source General Purpose Register
  • RB
    Source General Purpose Register
  • VRT
    Target VSX Register