mirror of https://github.com/xemu-project/xemu.git
tcg/s390x: Fix tcg_out_dupi_vec vs VGM
The immediate operands to VGM were in the wrong order, producing an inverse mask. Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
This commit is contained in:
parent
15df33ceb7
commit
a66669c942
|
@ -2715,7 +2715,7 @@ static void tcg_out_dupi_vec(TCGContext *s, TCGType type, unsigned vece,
|
||||||
msb = clz32(val);
|
msb = clz32(val);
|
||||||
lsb = 31 - ctz32(val);
|
lsb = 31 - ctz32(val);
|
||||||
}
|
}
|
||||||
tcg_out_insn(s, VRIb, VGM, dst, lsb, msb, MO_32);
|
tcg_out_insn(s, VRIb, VGM, dst, msb, lsb, MO_32);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
@ -2729,7 +2729,7 @@ static void tcg_out_dupi_vec(TCGContext *s, TCGType type, unsigned vece,
|
||||||
msb = clz64(val);
|
msb = clz64(val);
|
||||||
lsb = 63 - ctz64(val);
|
lsb = 63 - ctz64(val);
|
||||||
}
|
}
|
||||||
tcg_out_insn(s, VRIb, VGM, dst, lsb, msb, MO_64);
|
tcg_out_insn(s, VRIb, VGM, dst, msb, lsb, MO_64);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue