aboutsummaryrefslogtreecommitdiff
path: root/target/arm
diff options
context:
space:
mode:
authorRichard Henderson <richard.henderson@linaro.org>2023-02-25 10:28:05 -1000
committerRichard Henderson <richard.henderson@linaro.org>2023-03-13 06:44:38 -0700
commitab9ced73fa6679791c61d45768414cec578b6053 (patch)
tree04cd453dd3a951ac0a9d754bbd81ff91ebb0fe94 /target/arm
parent0b29090a68beb4ad12897f97c446901d331ca45e (diff)
downloadqemu-ab9ced73fa6679791c61d45768414cec578b6053.zip
qemu-ab9ced73fa6679791c61d45768414cec578b6053.tar.gz
qemu-ab9ced73fa6679791c61d45768414cec578b6053.tar.bz2
target/arm: Handle FPROUNDING_ODD in arm_rmode_to_sf
While this enumerator has been present since the first commit, it isn't ever used. The first actual use of round-to-odd came with SVE, which currently uses float_round_to_odd instead of the arm-specific enumerator. Amusingly, the comment about unhandled TIEAWAY has been out of date since the initial commit of translate-a64.c. Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Diffstat (limited to 'target/arm')
-rw-r--r--target/arm/vfp_helper.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/target/arm/vfp_helper.c b/target/arm/vfp_helper.c
index 24e3d82..90cc324 100644
--- a/target/arm/vfp_helper.c
+++ b/target/arm/vfp_helper.c
@@ -1111,10 +1111,8 @@ int arm_rmode_to_sf(int rmode)
rmode = float_round_ties_away;
break;
case FPROUNDING_ODD:
- /* FIXME: add support for TIEAWAY and ODD */
- qemu_log_mask(LOG_UNIMP, "arm: unimplemented rounding mode: %d\n",
- rmode);
- /* fall through for now */
+ rmode = float_round_to_odd;
+ break;
case FPROUNDING_TIEEVEN:
default:
rmode = float_round_nearest_even;