diff options
author | Juha Riihimäki <juha.riihimaki@nokia.com> | 2010-02-05 15:52:29 +0000 |
---|---|---|
committer | Aurelien Jarno <aurelien@aurel32.net> | 2010-02-28 19:30:56 +0100 |
commit | 30d11a2a01747ff7d811120528e44046f0fd16b2 (patch) | |
tree | 7c865c12ca67d7a028c73e460c5e0785b58bdc41 /target-arm/translate.c | |
parent | 79b0e534c0378fa6c96b0489216b17a99782a671 (diff) |
target-arm: neon vshll instruction fix
implementation only widened the 32bit source vector elements into a
64bit destination vector but forgot to perform the actual shifting
operation.
Signed-off-by: Juha Riihimäki <juha.riihimaki@nokia.com>
Signed-off-by: Riku Voipio <riku.voipio@nokia.com>
Acked-by: Laurent Desnogues <laurent.desnogues@gmail.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Diffstat (limited to 'target-arm/translate.c')
-rw-r--r-- | target-arm/translate.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/target-arm/translate.c b/target-arm/translate.c index cac157d2c1..9607aaeaa3 100644 --- a/target-arm/translate.c +++ b/target-arm/translate.c @@ -5438,6 +5438,7 @@ static int disas_neon_data_insn(CPUState * env, DisasContext *s, uint32_t insn) if (pass == 1) tmp = tmp2; gen_neon_widen(cpu_V0, tmp, size, 1); + tcg_gen_shli_i64(cpu_V0, cpu_V0, 8 << size); neon_store_reg64(cpu_V0, rd + pass); } break; |