summaryrefslogtreecommitdiffstats
path: root/target/ppc
diff options
context:
space:
mode:
authorMatheus Ferst2022-03-05 07:16:47 +0100
committerCédric Le Goater2022-03-05 07:16:47 +0100
commit4e4dd9e7caf47ce4fa60985614fcfa60f32729c3 (patch)
tree748768fcb9ebcb7261475415bbd7257e81125204 /target/ppc
parenttarget/ppc: use extract/extract2 to create vrlqnm mask (diff)
downloadqemu-4e4dd9e7caf47ce4fa60985614fcfa60f32729c3.tar.gz
qemu-4e4dd9e7caf47ce4fa60985614fcfa60f32729c3.tar.xz
qemu-4e4dd9e7caf47ce4fa60985614fcfa60f32729c3.zip
target/ppc: use andc in vrlqmi
Fixes: 7e5947df6e94 ("target/ppc: implement vrlqmi") Signed-off-by: Matheus Ferst <matheus.ferst@eldorado.org.br> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Message-Id: <20220304175156.2012315-5-matheus.ferst@eldorado.org.br> Signed-off-by: Cédric Le Goater <clg@kaod.org>
Diffstat (limited to 'target/ppc')
-rw-r--r--target/ppc/translate/vmx-impl.c.inc6
1 files changed, 2 insertions, 4 deletions
diff --git a/target/ppc/translate/vmx-impl.c.inc b/target/ppc/translate/vmx-impl.c.inc
index 8108e59d4d..6101bca3fd 100644
--- a/target/ppc/translate/vmx-impl.c.inc
+++ b/target/ppc/translate/vmx-impl.c.inc
@@ -1157,10 +1157,8 @@ static bool do_vector_rotl_quad(DisasContext *ctx, arg_VX *a, bool mask,
if (insert) {
get_avr64(n, a->vrt, true);
get_avr64(vrb, a->vrt, false);
- tcg_gen_not_i64(ah, ah);
- tcg_gen_not_i64(al, al);
- tcg_gen_and_i64(n, n, ah);
- tcg_gen_and_i64(vrb, vrb, al);
+ tcg_gen_andc_i64(n, n, ah);
+ tcg_gen_andc_i64(vrb, vrb, al);
tcg_gen_or_i64(t0, t0, n);
tcg_gen_or_i64(t1, t1, vrb);
}