...

Source file src/github.com/klauspost/compress/flate/regmask_amd64.go

Documentation: github.com/klauspost/compress/flate

     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  )
    38  

View as plain text