]> git.proxmox.com Git - mirror_qemu.git/commitdiff
tcg/s390x: Fix tcg_out_dupi_vec vs VGM
authorRichard Henderson <richard.henderson@linaro.org>
Thu, 3 Mar 2022 00:05:05 +0000 (19:05 -0500)
committerRichard Henderson <richard.henderson@linaro.org>
Mon, 14 Mar 2022 17:31:51 +0000 (10:31 -0700)
The immediate operands to VGM were in the wrong order,
producing an inverse mask.

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

index 6e65828c099de4b0fc11967418cda2934227b552..508f1bccc72e2d0364168c3c0e9b029c0c185534 100644 (file)
@@ -2715,7 +2715,7 @@ static void tcg_out_dupi_vec(TCGContext *s, TCGType type, unsigned vece,
                 msb = clz32(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;
         }
     } else {
@@ -2729,7 +2729,7 @@ static void tcg_out_dupi_vec(TCGContext *s, TCGType type, unsigned vece,
                 msb = clz64(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;
         }
     }