[BZ #16387] Fix FP_ROUNDMODE to extract the correct bits from FPCR.
Conflicts:
NEWS
* The following bugs are resolved with this release:
- 15073, 15128, 15909, 15996, 16150.
+ 15073, 15128, 15909, 15996, 16150, 16387.
\f
Version 2.18
+2014-01-07 Marcus Shawcroft <marcus.shawcroft@linaro.org>
+
+ [BZ #16387]
+ * sysdeps/aarch64/fpu/fpu_control.h (_FPU_FPCR_RM_MASK): Define.
+ * sysdeps/aarch64/soft-fp/sfp-machine.h (FP_ROUNDMODE): Adjust
+ rounding mode mask.
+
2014-01-07 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/aarch64/dl-trampoline.S (_dl_runtime_resolve): Correct
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
#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