lxsibzx
Load VSX Scalar as Integer Byte & Zero Indexed X-form
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
Encoding
Operands
-
XT
Target VSX Register -
RA
Source General Purpose Register -
RB
Source General Purpose Register -
VRT
Target VSX Register