Forces 64 bit integers (using stdint.h and uint64_t) for bit field
authorKim Nguyẽn <kn@lri.fr>
Tue, 23 Oct 2012 11:50:06 +0000 (13:50 +0200)
committerKim Nguyẽn <kn@lri.fr>
Tue, 23 Oct 2012 11:50:06 +0000 (13:50 +0200)
extractions.

src/static_bitsequence/sdarray.cpp

index 43dea90..30cdf9e 100644 (file)
@@ -1,4 +1,5 @@
 #include <sdarray.h>
+#include <stdint.h>
 using std::min;
 using std::max;
 #if 0
@@ -131,10 +132,10 @@ uint __getbits_aux(uint *B, int i, int d) {
 
 static uint __getbits(uint *B, int i, int d)
 {
-  ulong x;
+  uint64_t x;
   B += (i >> logD);
   i &= (D-1);
-  x = ((ulong *) B)[0];
+  x = ((uint64_t *) B)[0];
   x = (x << 32)|(x >> 32);
   x = (x << i) >> (2*D - d);
   return x;