xviexpdp
VSX Vector Insert Exponent Double-Precision
Inserts the exponent from one vector register into another for double-precision floating-point numbers.
Details
Inserts the exponent field from XB into the exponent of XA to form a new double-precision floating-point value in XT. This is a VSX instruction used for constructing floating-point values with specific exponents. No condition registers or status fields are affected.
Pseudocode Operation
for i in 0 to 1 do
exp ← XB[i*64+52:i*64+62]
sig ← XA[i*64:i*64+51]
XT[i*64:(i+1)*64-1] ← CONSTRUCT_FP64(exp, sig)
end for
Programming Note
The xviexpdp instruction is used to insert the exponent from one vector register into another for double-precision floating-point numbers. Ensure that the VSX (Vector Scalar Extensions) are enabled in the MSR.VSX bit before using this instruction, otherwise a VSX_Unavailable exception will be raised. The instruction operates on 64-bit elements and requires proper alignment of the source and target registers to avoid undefined behavior.
Example
Encoding
Operands
-
XT
Target Vector Register -
XA
Source Vector Register -
XB
Source Vector Register -
VRT
Target Vector Register -
VRA
Source Vector Register -
VRB
Source Vector Register