summaryrefslogtreecommitdiffstats
path: root/fixincludes/tests
diff options
context:
space:
mode:
authoraoliva <aoliva@138bc75d-0d04-0410-961f-82ee72b054a4>2013-01-16 04:07:20 +0000
committeraoliva <aoliva@138bc75d-0d04-0410-961f-82ee72b054a4>2013-01-16 04:07:20 +0000
commitc65a66ea5856277dcf4defdb6dfe9c8ef6361aef (patch)
tree6416ec3c4f8c8125bba80173a8b0b23cbb57939b /fixincludes/tests
parenta8d0810bd41d6d0414093ebb629cb8f856d32fbf (diff)
downloadppe42-gcc-c65a66ea5856277dcf4defdb6dfe9c8ef6361aef.tar.gz
ppe42-gcc-c65a66ea5856277dcf4defdb6dfe9c8ef6361aef.zip
* inclhack.def (feraiseexcept_nosse_invalid): New.
(feraiseexcept_nosse_divbyzero): Likewise. * fixincl.x: Rebuilt. * tests/base/bits/fenv.h: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@195226 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'fixincludes/tests')
-rw-r--r--fixincludes/tests/base/bits/fenv.h29
1 files changed, 29 insertions, 0 deletions
diff --git a/fixincludes/tests/base/bits/fenv.h b/fixincludes/tests/base/bits/fenv.h
new file mode 100644
index 00000000000..a82ec25e8b4
--- /dev/null
+++ b/fixincludes/tests/base/bits/fenv.h
@@ -0,0 +1,29 @@
+/* DO NOT EDIT THIS FILE.
+
+ It has been auto-edited by fixincludes from:
+
+ "fixinc/tests/inc/bits/fenv.h"
+
+ This had to be done to correct non-standard usages in the
+ original, manufacturer supplied header file. */
+
+
+
+#if defined( FERAISEEXCEPT_NOSSE_INVALID_CHECK )
+# ifdef __SSE_MATH__
+ __asm__ __volatile__ ("divss %0, %0" : : "x" (__f));
+# else
+ __asm__ __volatile__ ("fdiv %%st, %%st(0); fwait"
+ : "=t" (__f) : "0" (__f));
+# endif
+#endif /* FERAISEEXCEPT_NOSSE_INVALID_CHECK */
+
+
+#if defined( FERAISEEXCEPT_NOSSE_DIVBYZERO_CHECK )
+# ifdef __SSE_MATH__
+ __asm__ __volatile__ ("divss %1, %0" : : "x" (__f), "x" (__g));
+# else
+ __asm__ __volatile__ ("fdivp %%st, %%st(1); fwait"
+ : "=t" (__f) : "0" (__f), "u" (__g) : "st(1)");
+# endif
+#endif /* FERAISEEXCEPT_NOSSE_DIVBYZERO_CHECK */
OpenPOWER on IntegriCloud