mirror of
https://github.com/qemu/qemu.git
synced 2026-07-08 17:46:17 +00:00
tcg: Fix constant propagation in tcg_reg_alloc_dup
The scalar constant must be replicated for dup. Cc: qemu-stable@nongnu.org Fixes:bab1671f0f("tcg: Manually expand INDEX_op_dup_vec") Resolves: https://gitlab.com/qemu-project/qemu/-/issues/3002 Signed-off-by: Richard Henderson <richard.henderson@linaro.org> (cherry picked from commit0d0fc3f465) Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
This commit is contained in:
committed by
Michael Tokarev
parent
62ed767ba0
commit
3b2089e6f2
@@ -3491,7 +3491,7 @@ static void tcg_reg_alloc_dup(TCGContext *s, const TCGOp *op)
|
||||
|
||||
if (its->val_type == TEMP_VAL_CONST) {
|
||||
/* Propagate constant via movi -> dupi. */
|
||||
tcg_target_ulong val = its->val;
|
||||
tcg_target_ulong val = dup_const(vece, its->val);
|
||||
if (IS_DEAD_ARG(1)) {
|
||||
temp_dead(s, its);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user