1 | package flate
|
---|
2 |
|
---|
3 | const (
|
---|
4 | // Masks for shifts with register sizes of the shift value.
|
---|
5 | // This can be used to work around the x86 design of shifting by mod register size.
|
---|
6 | // It can be used when a variable shift is always smaller than the register size.
|
---|
7 |
|
---|
8 | // reg8SizeMaskX - shift value is 8 bits, shifted is X
|
---|
9 | reg8SizeMask8 = 7
|
---|
10 | reg8SizeMask16 = 15
|
---|
11 | reg8SizeMask32 = 31
|
---|
12 | reg8SizeMask64 = 63
|
---|
13 |
|
---|
14 | // reg16SizeMaskX - shift value is 16 bits, shifted is X
|
---|
15 | reg16SizeMask8 = reg8SizeMask8
|
---|
16 | reg16SizeMask16 = reg8SizeMask16
|
---|
17 | reg16SizeMask32 = reg8SizeMask32
|
---|
18 | reg16SizeMask64 = reg8SizeMask64
|
---|
19 |
|
---|
20 | // reg32SizeMaskX - shift value is 32 bits, shifted is X
|
---|
21 | reg32SizeMask8 = reg8SizeMask8
|
---|
22 | reg32SizeMask16 = reg8SizeMask16
|
---|
23 | reg32SizeMask32 = reg8SizeMask32
|
---|
24 | reg32SizeMask64 = reg8SizeMask64
|
---|
25 |
|
---|
26 | // reg64SizeMaskX - shift value is 64 bits, shifted is X
|
---|
27 | reg64SizeMask8 = reg8SizeMask8
|
---|
28 | reg64SizeMask16 = reg8SizeMask16
|
---|
29 | reg64SizeMask32 = reg8SizeMask32
|
---|
30 | reg64SizeMask64 = reg8SizeMask64
|
---|
31 |
|
---|
32 | // regSizeMaskUintX - shift value is uint, shifted is X
|
---|
33 | regSizeMaskUint8 = reg8SizeMask8
|
---|
34 | regSizeMaskUint16 = reg8SizeMask16
|
---|
35 | regSizeMaskUint32 = reg8SizeMask32
|
---|
36 | regSizeMaskUint64 = reg8SizeMask64
|
---|
37 | )
|
---|