aboutsummaryrefslogtreecommitdiff
path: root/libgcc
diff options
context:
space:
mode:
authorStafford Horne <shorne@gmail.com>2023-03-18 16:43:05 +0900
committerStafford Horne <shorne@gmail.com>2023-03-19 15:41:22 +0900
commit33fb1625992ba8180b42988e714460bcab08ca0f (patch)
tree35fa2bc01e25e2e06871dc3f05d04fbbb54692fd /libgcc
parent0e38aedc6af7c4f4b5d46fb90c4eeb3011ad8369 (diff)
downloadgcc-33fb1625992ba8180b42988e714460bcab08ca0f.zip
gcc-33fb1625992ba8180b42988e714460bcab08ca0f.tar.gz
gcc-33fb1625992ba8180b42988e714460bcab08ca0f.tar.bz2
or1k: Do not clear existing FPU exceptions before updating
We should always carry the exceptions forward. This bug was found when working on testing glibc math tests, many tests were failing with Overflow and Underflow flags not set. This was traced to here. libgcc/ChangeLog: * config/or1k/sfp-machine.h (FP_HANDLE_EXCEPTIONS): Remove statement clearing existing exceptions.
Diffstat (limited to 'libgcc')
-rw-r--r--libgcc/config/or1k/sfp-machine.h1
1 files changed, 0 insertions, 1 deletions
diff --git a/libgcc/config/or1k/sfp-machine.h b/libgcc/config/or1k/sfp-machine.h
index 162c6bc..c804270 100644
--- a/libgcc/config/or1k/sfp-machine.h
+++ b/libgcc/config/or1k/sfp-machine.h
@@ -73,7 +73,6 @@ do { \
do { \
if (__builtin_expect (_fex, 0)) \
{ \
- _fpcsr &= ~FP_EX_ALL; \
_fpcsr |= _fex; \
__asm__ volatile ("l.mtspr r0,%0,20" : : "r" (_fpcsr)); \
} \