diff options
author | Andreas Jaeger <aj@suse.de> | 2000-06-20 13:05:21 +0000 |
---|---|---|
committer | Andreas Jaeger <aj@suse.de> | 2000-06-20 13:05:21 +0000 |
commit | 763f7e8ba7c381aee73e0536bb1f7732bb644ff1 (patch) | |
tree | 5baeac7db647af6425b8a9336e0a7b0a507cfbf9 /sysdeps/mips/fpu/fesetenv.c | |
parent | e5874a42333f64ccbd6fde6f0c1fe4a2a5279a4a (diff) | |
download | glibc-763f7e8ba7c381aee73e0536bb1f7732bb644ff1.tar.gz glibc-763f7e8ba7c381aee73e0536bb1f7732bb644ff1.tar.xz glibc-763f7e8ba7c381aee73e0536bb1f7732bb644ff1.zip |
* sysdeps/mips/fpu/fesetenv.c (__fesetenv): Flush fpu pipeline
first. * sysdeps/mips/fpu/feholdexcpt.c: New file. * sysdeps/mips/fpu/fraiseexcpt.c: New file.
Diffstat (limited to 'sysdeps/mips/fpu/fesetenv.c')
-rw-r--r-- | sysdeps/mips/fpu/fesetenv.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/sysdeps/mips/fpu/fesetenv.c b/sysdeps/mips/fpu/fesetenv.c index 7ae688a6b1..ab90e4d022 100644 --- a/sysdeps/mips/fpu/fesetenv.c +++ b/sysdeps/mips/fpu/fesetenv.c @@ -25,6 +25,11 @@ int __fesetenv (const fenv_t *envp) { + fpu_control_t cw; + + /* Read first current state to flush fpu pipeline. */ + _FPU_GETCW (cw); + if (envp == FE_DFL_ENV) _FPU_SETCW (_FPU_DEFAULT); else @@ -33,6 +38,7 @@ __fesetenv (const fenv_t *envp) /* Success. */ return 0; } + #if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2) strong_alias (__fesetenv, __old_fesetenv) compat_symbol (libm, __old_fesetenv, fesetenv, GLIBC_2_1); |