Files
Martin DisibioandGitHub 9aaf851965 Upgrade parquet-go (#6030)
* Upgrade parquet-go to latest for StructTag option

* Upgrade parquet-go to get latest alloc fix
2025-12-04 15:04:47 -05:00

22 lines
452 B
Go

//go:build purego || (!amd64 && !arm64)
package bitpack
func unpackInt32(dst []int32, src []byte, bitWidth uint) {
bits := unsafecastBytesToUint32(src)
bitMask := uint32(1<<bitWidth) - 1
bitOffset := uint(0)
for n := range dst {
i := bitOffset / 32
j := bitOffset % 32
d := (bits[i] & (bitMask << j)) >> j
if j+bitWidth > 32 {
k := 32 - j
d |= (bits[i+1] & (bitMask >> k)) << k
}
dst[n] = int32(d)
bitOffset += bitWidth
}
}