X-Git-Url: http://git.nguyen.vg/gitweb/?a=blobdiff_plain;f=utils.ml;fp=utils.ml;h=e6cbff0cdec733765798f70d070822e7192ccbaf;hb=978f182e9ce00820c1ce8c721f61ab57afabd160;hp=0000000000000000000000000000000000000000;hpb=05d12de7ce75866e7e7e19fba37720fda99c38ad;p=SXSI%2Fxpathcomp.git diff --git a/utils.ml b/utils.ml new file mode 100644 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__ *)