summaryrefslogtreecommitdiff
path: root/arch/aarch64/bits/fenv.h
diff options
context:
space:
mode:
authorSzabolcs Nagy <nsz@port70.net>2015-03-10 21:18:41 +0000
committerRich Felker <dalias@aerifal.cx>2015-03-11 20:12:35 -0400
commit01ef3dd9c5fa7a56aa370f244dd08e05c73010f5 (patch)
tree8fe90d994a43124ff309d3af4c185e28b2b1d6ff /arch/aarch64/bits/fenv.h
parentf4e4632abfa8297db1485e132bb15b9ef6c32a1b (diff)
downloadmusl-01ef3dd9c5fa7a56aa370f244dd08e05c73010f5.tar.gz
musl-01ef3dd9c5fa7a56aa370f244dd08e05c73010f5.tar.bz2
musl-01ef3dd9c5fa7a56aa370f244dd08e05c73010f5.tar.xz
musl-01ef3dd9c5fa7a56aa370f244dd08e05c73010f5.zip
add aarch64 port
This adds complete aarch64 target support including bigendian subarch. Some of the long double math functions are known to be broken otherwise interfaces should be fully functional, but at this point consider this port experimental. Initial work on this port was done by Sireesh Tripurari and Kevin Bortis.
Diffstat (limited to 'arch/aarch64/bits/fenv.h')
-rw-r--r--arch/aarch64/bits/fenv.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/arch/aarch64/bits/fenv.h b/arch/aarch64/bits/fenv.h
new file mode 100644
index 00000000..2f3279ab
--- /dev/null
+++ b/arch/aarch64/bits/fenv.h
@@ -0,0 +1,19 @@
+#define FE_INVALID 1
+#define FE_DIVBYZERO 2
+#define FE_OVERFLOW 4
+#define FE_UNDERFLOW 8
+#define FE_INEXACT 16
+#define FE_ALL_EXCEPT 31
+#define FE_TONEAREST 0
+#define FE_DOWNWARD 0x800000
+#define FE_UPWARD 0x400000
+#define FE_TOWARDZERO 0xc00000
+
+typedef unsigned int fexcept_t;
+
+typedef struct {
+ unsigned int __fpcr;
+ unsigned int __fpsr;
+} fenv_t;
+
+#define FE_DFL_ENV ((const fenv_t *) -1)