summaryrefslogtreecommitdiffstats
path: root/target-arm/helpers.h
diff options
context:
space:
mode:
authorJuha Riihimäki <juha.riihimaki@nokia.com>2011-02-09 15:42:32 +0000
committerAurelien Jarno <aurelien@aurel32.net>2011-02-09 19:37:47 +0100
commitaf1bbf30c407cb194599a4e1724c38c7bf1d94b3 (patch)
tree3045df15e10ee27f990baad363d5763469df4e5f /target-arm/helpers.h
parentc0c1dc992584b8ccbae0e8f8b09124b76662633b (diff)
downloadhqemu-af1bbf30c407cb194599a4e1724c38c7bf1d94b3.zip
hqemu-af1bbf30c407cb194599a4e1724c38c7bf1d94b3.tar.gz
target-arm: Fix VQMOVUN Neon instruction.
VQMOVUN does a signed-to-unsigned saturating conversion. This is different from both the signed-to-signed and unsigned-to-unsigned conversions already implemented, so we need a new set of helper functions (neon_unarrow_sat*). Signed-off-by: Juha Riihimäki <juha.riihimaki@nokia.com> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Diffstat (limited to 'target-arm/helpers.h')
-rw-r--r--target-arm/helpers.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/target-arm/helpers.h b/target-arm/helpers.h
index 8a2564e..4d0de00 100644
--- a/target-arm/helpers.h
+++ b/target-arm/helpers.h
@@ -299,10 +299,13 @@ DEF_HELPER_3(neon_qrdmulh_s32, i32, env, i32, i32)
DEF_HELPER_1(neon_narrow_u8, i32, i64)
DEF_HELPER_1(neon_narrow_u16, i32, i64)
+DEF_HELPER_2(neon_unarrow_sat8, i32, env, i64)
DEF_HELPER_2(neon_narrow_sat_u8, i32, env, i64)
DEF_HELPER_2(neon_narrow_sat_s8, i32, env, i64)
+DEF_HELPER_2(neon_unarrow_sat16, i32, env, i64)
DEF_HELPER_2(neon_narrow_sat_u16, i32, env, i64)
DEF_HELPER_2(neon_narrow_sat_s16, i32, env, i64)
+DEF_HELPER_2(neon_unarrow_sat32, i32, env, i64)
DEF_HELPER_2(neon_narrow_sat_u32, i32, env, i64)
DEF_HELPER_2(neon_narrow_sat_s32, i32, env, i64)
DEF_HELPER_1(neon_narrow_high_u8, i32, i64)
OpenPOWER on IntegriCloud