a32_get_set_elimination_pass: Fix Set/GetVector for 64-bit registers
This commit is contained in:
parent
9364ba821e
commit
66a4940b11
1 changed files with 4 additions and 1 deletions
|
@ -135,8 +135,11 @@ void A32GetSetElimination(IR::Block& block, A32GetSetEliminationOptions) {
|
|||
const A32::ExtReg reg = inst->GetArg(0).GetA32ExtRegRef();
|
||||
const size_t reg_index = A32::RegNumber(reg);
|
||||
if (A32::IsDoubleExtReg(reg)) {
|
||||
ir.SetInsertionPointBefore(std::prev(inst.base()));
|
||||
const IR::U128 stored_value = ir.VectorZeroUpper(IR::U128{inst->GetArg(1)});
|
||||
|
||||
do_set(ext_reg_vector_double_info[reg_index],
|
||||
inst->GetArg(1),
|
||||
stored_value,
|
||||
inst,
|
||||
{
|
||||
ext_reg_singles_info[reg_index * 2 + 0],
|
||||
|
|
Loading…
Reference in a new issue