target-arm: A64: Saturating and narrowing shift ops
commitc1b876b2e9a47e3e36be57a4f3d167b19c5f586a
authorAlex Bennée <alex.bennee@linaro.org>
Mon, 17 Mar 2014 16:31:48 +0000 (17 16:31 +0000)
committerPeter Maydell <peter.maydell@linaro.org>
Mon, 17 Mar 2014 16:31:48 +0000 (17 16:31 +0000)
treeabca32b1f70f9a35c2680993d56be9ef47b25f27
parentb05c3068577f6caea6f1911b9e03d52dbf84f475
target-arm: A64: Saturating and narrowing shift ops

This implements the remaining [US][Q][R]SHR[U][N][2] opcodes, which are
saturating and narrowing shift right operations. These are used in
things like libav. Note signed shifts can have an "unsigned" saturating
narrow operation which will floor negative values.

Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Richard Henderson <rth@twiddle.net>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Message-id: 1394822294-14837-7-git-send-email-peter.maydell@linaro.org
[PMM: Added the scalar encodings, style tweaks]
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
target-arm/translate-a64.c