adding utils.ml
[SXSI/xpathcomp.git] / utils.ml
diff --git a/utils.ml b/utils.ml
new file mode 100644 (file)
index 0000000..e6cbff0
--- /dev/null
+++ b/utils.ml
@@ -0,0 +1,24 @@
+IFNDEF UTILS_ML__
+THEN
+DEFINE UTILS__ML__
+
+
+IFDEF WORDSIZE64
+THEN
+    DEFINE WORDSIZE = 64
+    DEFINE HALFWORDSIZE = 32
+    DEFINE INTSIZE = 63
+    DEFINE HALFINTSIZE = 31
+ELSE
+    DEFINE WORDSIZE = 32
+    DEFINE HALFWORDSIZE = 16
+    DEFINE INTSIZE = 31
+    DEFINE HALFINTSIZE = 15
+END
+
+DEFINE ROTATEHALF (x) = (((x) lsl HALFINTSIZE) lor ((x) lsr HALFINTSIZE))
+DEFINE HASHINT2 (x,y) = ((((x) lsl 16)+((x) lsl 8)-(x))+(y))
+DEFINE HASHINT3 (x,y,z) =  (((((x) lsl 16)+((x) lsl 8)-(x))+(y))*65599+(z))
+
+
+END (* IFNDEF UTILS__ML__ *)