(no commit message)
authorlkcl <lkcl@web>
Tue, 19 Jan 2021 14:10:30 +0000 (14:10 +0000)
committerIkiWiki <ikiwiki.info>
Tue, 19 Jan 2021 14:10:30 +0000 (14:10 +0000)
openpower/sv/remap.mdwn

index 95eb3370f0524590e53b37d68e17b1068295a9d3..925e1c2969ad050ba163f2684384596df15f6ec9 100644 (file)
@@ -214,3 +214,5 @@ void gmix_column(unsigned char *r) {
     r[3] = b[3] ^ a[2] ^ a[1] ^ b[0] ^ a[0];
 }
 ```
+
+With the assumption made by the above code that the column bytes have already been turned around (vertical rather than horizontal) SUBVL.REMAP may transparently fill that role, in-place, without a complex mv operation.  The application of the swizzles allows the remapped vec4 a, b and r variables to perform four straight linear 32 bit XOR operations where a scalar processor would be required to perform 16 byte-level individual operations.  Given wide enough SIMD backends in hardware these 3 bit XORs may be done as single-cycle operations across the entire 128 bit Rijndael Matrix.