]> git.proxmox.com Git - mirror_qemu.git/commitdiff
tcg/s390x: Fix tcg_out_dup_vec vs general registers
authorRichard Henderson <richard.henderson@linaro.org>
Thu, 3 Mar 2022 00:26:50 +0000 (19:26 -0500)
committerRichard Henderson <richard.henderson@linaro.org>
Mon, 14 Mar 2022 17:31:51 +0000 (10:31 -0700)
We copied the data from the general register input to the
vector register output, but have not yet replicated it.
We intended to fall through into the vector-vector case,
but failed to redirect the input register.

This is caught by an assertion failure in tcg_out_insn_VRIc,
which diagnosed the incorrect register class.

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
tcg/s390x/tcg-target.c.inc

index 3b185b3c96d4dfaff57f75b5768562d96cb9a955..33becd76943bcfc4d3899cbde316c074b0f4ee0e 100644 (file)
@@ -2675,6 +2675,7 @@ static bool tcg_out_dup_vec(TCGContext *s, TCGType type, unsigned vece,
         if (vece == MO_64) {
             return true;
         }
+        src = dst;
     }
 
     /*