diff options
author | Marcus Shawcroft <marcus.shawcroft@linaro.org> | 2014-01-07 16:16:35 +0000 |
---|---|---|
committer | Marcus Shawcroft <marcus.shawcroft@linaro.org> | 2014-01-07 16:17:52 +0000 |
commit | 196f456b842ee96e1bf1e5ae6ed21ba427dee3f3 (patch) | |
tree | fb882be8637c0d895494c60e71d6c1c3025847e0 /ports/sysdeps | |
parent | 07d55c6c3777499bdc0228ef820d5b647f2af71c (diff) | |
download | glibc-196f456b842ee96e1bf1e5ae6ed21ba427dee3f3.zip glibc-196f456b842ee96e1bf1e5ae6ed21ba427dee3f3.tar.gz glibc-196f456b842ee96e1bf1e5ae6ed21ba427dee3f3.tar.bz2 |
[AArch64] Fix FP_ROUNDMODE.
[BZ #16387] Fix FP_ROUNDMODE to extract the correct bits from FPCR.
Diffstat (limited to 'ports/sysdeps')
-rw-r--r-- | ports/sysdeps/aarch64/fpu/fpu_control.h | 3 | ||||
-rw-r--r-- | ports/sysdeps/aarch64/soft-fp/sfp-machine.h | 2 |
2 files changed, 4 insertions, 1 deletions
diff --git a/ports/sysdeps/aarch64/fpu/fpu_control.h b/ports/sysdeps/aarch64/fpu/fpu_control.h index 79ab5fb..6a265e8 100644 --- a/ports/sysdeps/aarch64/fpu/fpu_control.h +++ b/ports/sysdeps/aarch64/fpu/fpu_control.h @@ -59,6 +59,9 @@ E E D D E E */ + +#define _FPU_FPCR_RM_MASK 0xc00000 + #define _FPU_FPCR_MASK_IXE 0x1000 #define _FPU_FPCR_MASK_UFE 0x0800 #define _FPU_FPCR_MASK_OFE 0x0400 diff --git a/ports/sysdeps/aarch64/soft-fp/sfp-machine.h b/ports/sysdeps/aarch64/soft-fp/sfp-machine.h index d21d00a..9bb94e5 100644 --- a/ports/sysdeps/aarch64/soft-fp/sfp-machine.h +++ b/ports/sysdeps/aarch64/soft-fp/sfp-machine.h @@ -47,7 +47,7 @@ #define _FP_DECL_EX fpu_control_t _fcw -#define FP_ROUNDMODE (_fcw & 0x3) +#define FP_ROUNDMODE (_fcw & _FPU_FPCR_RM_MASK) #define FP_RND_NEAREST FE_TONEAREST #define FP_RND_ZERO FE_TOWARDZERO |