aboutsummaryrefslogtreecommitdiff
path: root/unix/hlib/mach64.h
diff options
context:
space:
mode:
authorJoseph Hunkeler <jhunkeler@gmail.com>2015-07-08 20:46:52 -0400
committerJoseph Hunkeler <jhunkeler@gmail.com>2015-07-08 20:46:52 -0400
commitfa080de7afc95aa1c19a6e6fc0e0708ced2eadc4 (patch)
treebdda434976bc09c864f2e4fa6f16ba1952b1e555 /unix/hlib/mach64.h
downloadiraf-linux-fa080de7afc95aa1c19a6e6fc0e0708ced2eadc4.tar.gz
Initial commit
Diffstat (limited to 'unix/hlib/mach64.h')
-rw-r--r--unix/hlib/mach64.h34
1 files changed, 34 insertions, 0 deletions
diff --git a/unix/hlib/mach64.h b/unix/hlib/mach64.h
new file mode 100644
index 00000000..c87a96ff
--- /dev/null
+++ b/unix/hlib/mach64.h
@@ -0,0 +1,34 @@
+# Machine Parameters
+
+define SZB_CHAR 2 # machine bytes per char
+define SZB_ADDR 1 # machine bytes per address increment
+define SZ_VMPAGE 256 # page size (1 if no virtual mem.)
+define MAX_DIGITS 25 # max digits in a number
+define NDIGITS_RP 7 # number of digits of real precision
+define NDIGITS_DP 16 # number of digits of precision (double)
+define MAX_EXPONENT 38 # max exponent, base 10
+define MAX_EXPONENTR 38 # IEEE single
+define MAX_EXPONENTD 308 # IEEE double
+
+define MAX_SHORT 32767 # largest numbers
+define MAX_INT 2147483647
+define MAX_LONG 2147483647
+define MAX_REAL 0.99e37 # anything larger is INDEF
+define MAX_DOUBLE 0.99d307
+define NBITS_BYTE 8 # nbits in a machine byte
+define NBITS_SHORT 16 # nbits in a short
+define NBITS_INT 64 # nbits in an integer
+define NBITS_LONG 64 # nbits in a long
+define EPSILONR (1.192e-7) # smallest E such that 1.0 + E > 1.0
+define EPSILOND (2.220d-16) # double precision epsilon
+define EPSILON EPSILONR
+
+# Is byte swapping needed for a 2 or 4 byte MII integer or a 4 or 8 byte
+# IEEE floating to convert to or from MII format on this machine?
+
+define BYTE_SWAP2 YES
+define BYTE_SWAP4 YES
+define BYTE_SWAP8 YES
+define IEEE_SWAP4 YES
+define IEEE_SWAP8 YES
+define IEEE_USED YES