aboutsummaryrefslogtreecommitdiff
path: root/target-arm/translate.c
diff options
context:
space:
mode:
authorPeter Maydell <peter.maydell@linaro.org>2011-02-10 19:07:55 +0000
committerAurelien Jarno <aurelien@aurel32.net>2011-02-20 17:26:15 +0100
commite5ca24cba969b58eb3fe0e7c239df3abe21831c0 (patch)
treecbbfbf6bee61639a216efdc058425bb982b3e460 /target-arm/translate.c
parent02615337ef295443daa03233e492194e289a807e (diff)
target-arm: Implement VMULL.P8
Implement VMULL.P8 (the 32x32->64 version of the polynomial multiply instruction). Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Diffstat (limited to 'target-arm/translate.c')
-rw-r--r--target-arm/translate.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/target-arm/translate.c b/target-arm/translate.c
index 362d1d0964..0c938964f5 100644
--- a/target-arm/translate.c
+++ b/target-arm/translate.c
@@ -5124,8 +5124,10 @@ static int disas_neon_data_insn(CPUState * env, DisasContext *s, uint32_t insn)
gen_neon_mull(cpu_V0, tmp, tmp2, size, u);
break;
case 14: /* Polynomial VMULL */
- cpu_abort(env, "Polynomial VMULL not implemented");
-
+ gen_helper_neon_mull_p8(cpu_V0, tmp, tmp2);
+ dead_tmp(tmp2);
+ dead_tmp(tmp);
+ break;
default: /* 15 is RESERVED. */
return 1;
}