| !sum |
| - go: GaloisFieldAffineTransform |
| asm: VGF2P8AFFINEQB |
| operandOrder: 2I # 2nd operand, then immediate |
| in: &AffineArgs |
| - &uint8 |
| go: $t |
| base: uint |
| - &uint8x8 |
| go: $t2 |
| base: uint |
| - &pureImmVar |
| class: immediate |
| immOffset: 0 |
| name: b |
| out: |
| - *uint8 |
| |
| - go: GaloisFieldAffineTransformInverse |
| asm: VGF2P8AFFINEINVQB |
| operandOrder: 2I # 2nd operand, then immediate |
| in: *AffineArgs |
| out: |
| - *uint8 |
| |
| - go: GaloisFieldMul |
| asm: VGF2P8MULB |
| in: |
| - *uint8 |
| - *uint8 |
| out: |
| - *uint8 |
| |
| - go: carrylessMultiply |
| documentation: !string |- |
| // NAME computes one of four possible Galois polynomial |
| // products of selected high and low halves of x and y, |
| // depending on the value of xyHiLo, returning the 128-bit |
| // product in the concatenated two elements of the result. |
| // Bit 0 selects the low (0) or high (1) element of x and |
| // bit 4 selects the low (0x00) or high (0x10) element of y. |
| asm: V?PCLMULQDQ |
| in: |
| - go: Uint64x2 |
| - go: Uint64x2 |
| - class: immediate |
| immOffset: 0 |
| name: xyHiLo |
| out: |
| - go: Uint64x2 |
| overwriteElementBits: 64 |
| hideMaskMethods: true |
| |
| - go: carrylessMultiply |
| documentation: !string |- |
| // NAME computes one of two possible Galois polynomial |
| // products of selected high and low halves of each of the two |
| // 128-bit lanes of x and y, depending on the value of xyHiLo, |
| // and returns the four 128-bit products in the result's lanes. |
| // Bit 0 selects the low (0) or high (1) elements of x's lanes and |
| // bit 4 selects the low (0x00) or high (0x10) elements of y's lanes. |
| asm: V?PCLMULQDQ |
| in: |
| - go: Uint64x4 |
| - go: Uint64x4 |
| - class: immediate |
| immOffset: 0 |
| name: xyHiLo |
| out: |
| - go: Uint64x4 |
| overwriteElementBits: 64 |
| hideMaskMethods: true |
| |
| - go: carrylessMultiply |
| documentation: !string |- |
| // NAME computes one of four possible Galois polynomial |
| // products of selected high and low halves of each of the four |
| // 128-bit lanes of x and y, depending on the value of xyHiLo, |
| // and returns the four 128-bit products in the result's lanes. |
| // Bit 0 selects the low (0) or high (1) elements of x's lanes and |
| // bit 4 selects the low (0x00) or high (0x10) elements of y's lanes. |
| asm: V?PCLMULQDQ |
| in: |
| - go: Uint64x8 |
| - go: Uint64x8 |
| - class: immediate |
| immOffset: 0 |
| name: xyHiLo |
| out: |
| - go: Uint64x8 |
| overwriteElementBits: 64 |
| hideMaskMethods: true |