]> git.ipfire.org Git - thirdparty/glibc.git/blobdiff - include/fenv.h
Add per-thread cache to malloc
[thirdparty/glibc.git] / include / fenv.h
index b2da08406cc7f01f5dd9ba8a04d2cef0bb0e3da8..de4d46f8b7f506006022b531a1651f4bcdd7b005 100644 (file)
@@ -1 +1,47 @@
+#ifndef _FENV_H
 #include <math/fenv.h>
+
+#ifndef _ISOMAC
+# include <stdbool.h>
+/* Now define the internal interfaces.  */
+
+extern int __feclearexcept (int __excepts);
+extern int __fegetexcept (void);
+extern int __fegetexceptflag (fexcept_t *__flagp, int __excepts);
+extern int __feraiseexcept (int __excepts);
+extern int __fesetexceptflag (const fexcept_t *__flagp, int __excepts);
+extern int __fegetenv (fenv_t *__envp);
+extern int __fesetenv (const fenv_t *__envp);
+extern int __feupdateenv (const fenv_t *__envp);
+extern __typeof (fegetround) __fegetround __attribute_pure__;
+extern __typeof (feholdexcept) __feholdexcept;
+extern __typeof (fesetround) __fesetround;
+
+libm_hidden_proto (feraiseexcept)
+libm_hidden_proto (__feraiseexcept)
+libm_hidden_proto (fegetenv)
+libm_hidden_proto (__fegetenv)
+libm_hidden_proto (fegetround)
+libm_hidden_proto (__fegetround)
+libm_hidden_proto (fesetenv)
+libm_hidden_proto (__fesetenv)
+libm_hidden_proto (fesetround)
+libm_hidden_proto (__fesetround)
+libm_hidden_proto (feholdexcept)
+libm_hidden_proto (__feholdexcept)
+libm_hidden_proto (feupdateenv)
+libm_hidden_proto (__feupdateenv)
+libm_hidden_proto (fetestexcept)
+libm_hidden_proto (feclearexcept)
+
+/* Rounding mode context.  This allows functions to set/restore rounding mode
+   only when the desired rounding mode is different from the current rounding
+   mode.  */
+struct rm_ctx
+{
+  fenv_t env;
+  bool updated_status;
+};
+#endif
+
+#endif