@Test public void testNextPowerOf2() { assertEquals(1, ColumnLoader.nextPowerOf2(1)); assertEquals(2, ColumnLoader.nextPowerOf2(2)); assertEquals(4, ColumnLoader.nextPowerOf2(3)); assertEquals(4, ColumnLoader.nextPowerOf2(4)); assertEquals(0x40000000, ColumnLoader.nextPowerOf2(0x3456789a)); assertEquals(0x40000000, ColumnLoader.nextPowerOf2(0x40000000)); // overflow assertEquals(0x80000000, ColumnLoader.nextPowerOf2(0x7fffffff)); assertEquals(0x80000000, ColumnLoader.nextPowerOf2(0x7ffffffe)); }
@Test public void testNextPowerOf2() { assertEquals(1, ColumnLoader.nextPowerOf2(1)); assertEquals(2, ColumnLoader.nextPowerOf2(2)); assertEquals(4, ColumnLoader.nextPowerOf2(3)); assertEquals(4, ColumnLoader.nextPowerOf2(4)); assertEquals(0x40000000, ColumnLoader.nextPowerOf2(0x3456789a)); assertEquals(0x40000000, ColumnLoader.nextPowerOf2(0x40000000)); // overflow assertEquals(0x80000000, ColumnLoader.nextPowerOf2(0x7fffffff)); assertEquals(0x80000000, ColumnLoader.nextPowerOf2(0x7ffffffe)); }
return new ArrayTable.Constant(ordinal); final int bitCountMax = log2(nextPowerOf2(abs2(max) + 1)); int bitCount; // 1 for sign boolean signed; } else { signed = true; int bitCountMin = log2(nextPowerOf2(abs2(min) + 1)); bitCount = Math.max(bitCountMin, bitCountMax) + 1;
return new ArrayTable.Constant(ordinal); final int bitCountMax = log2(nextPowerOf2(abs2(max) + 1)); int bitCount; // 1 for sign boolean signed; } else { signed = true; int bitCountMin = log2(nextPowerOf2(abs2(min) + 1)); bitCount = Math.max(bitCountMin, bitCountMax) + 1;
final int codeBitCount = log2(nextPowerOf2(codeCount)); if (codeBitCount < 10 && values.size() > 2000) { final ArrayTable.Representation representation =
final int codeBitCount = log2(nextPowerOf2(codeCount)); if (codeBitCount < 10 && values.size() > 2000) { final ArrayTable.Representation representation =