Testing on Neoverse N1 (Ampere 3GHz). Tested only on a subset of phy-simulators. - Changes: - use SIMDE consistently - adaptations of LDPC decoder generator for ARMv8 performance - SIMDe modifications of Intel CRC to allow for aarch64 build. optimizations for 128-bit to improve performance of LDPC encode/decode on aarch64 (Neoverse 1) - added BG2 files for 128-bit ldpc encoder (aarch64) - testing on Xeon - testing on x86 - minor changes to build/run on x86 - change in crc.h after returning to aarch64 - removed some warning in ldpc decoder generator for x86_64 - char - Delete irrelevant constants - Correctly declare variables - Define stdbool for all architectures - Remove definition of _MM_SHUFFLE and use SIMDE_MM_SHUFFLE - Remove commented code - Fix CMakeLists.txt - Include SIMDE avx2 functions in tools_defs.h
154 lines
60 KiB
C
154 lines
60 KiB
C
#ifndef __AVX2__
|
|
#include "PHY/sse_intrin.h"
|
|
// generated code for Zc=288, byte encoding
|
|
static inline void ldpc288_byte(uint8_t *c,uint8_t *d) {
|
|
simde__m128i *csimd=(simde__m128i *)c,*dsimd=(simde__m128i *)d;
|
|
|
|
simde__m128i *c2,*d2;
|
|
|
|
int i2;
|
|
for (i2=0; i2<18; i2++) {
|
|
c2=&csimd[i2];
|
|
d2=&dsimd[i2];
|
|
|
|
//row: 0
|
|
d2[0]=simde_mm_xor_si128(c2[2389],simde_mm_xor_si128(c2[2387],simde_mm_xor_si128(c2[1600],simde_mm_xor_si128(c2[8723],simde_mm_xor_si128(c2[4800],simde_mm_xor_si128(c2[5590],simde_mm_xor_si128(c2[837],simde_mm_xor_si128(c2[9587],simde_mm_xor_si128(c2[1666],simde_mm_xor_si128(c2[9589],simde_mm_xor_si128(c2[8039],simde_mm_xor_si128(c2[12001],simde_mm_xor_si128(c2[4870],simde_mm_xor_si128(c2[160],simde_mm_xor_si128(c2[4112],simde_mm_xor_si128(c2[9654],simde_mm_xor_si128(c2[8905],simde_mm_xor_si128(c2[190],simde_mm_xor_si128(c2[2571],simde_mm_xor_si128(c2[3384],simde_mm_xor_si128(c2[8148],simde_mm_xor_si128(c2[1805],simde_mm_xor_si128(c2[9760],simde_mm_xor_si128(c2[8185],simde_mm_xor_si128(c2[3428],simde_mm_xor_si128(c2[8220],simde_mm_xor_si128(c2[12171],simde_mm_xor_si128(c2[4260],simde_mm_xor_si128(c2[10621],simde_mm_xor_si128(c2[4291],simde_mm_xor_si128(c2[324],simde_mm_xor_si128(c2[369],simde_mm_xor_si128(c2[2736],simde_mm_xor_si128(c2[7490],simde_mm_xor_si128(c2[3571],simde_mm_xor_si128(c2[10698],simde_mm_xor_si128(c2[1990],simde_mm_xor_si128(c2[6781],simde_mm_xor_si128(c2[12312],simde_mm_xor_si128(c2[7563],simde_mm_xor_si128(c2[2851],simde_mm_xor_si128(c2[8392],simde_mm_xor_si128(c2[3638],simde_mm_xor_si128(c2[6844],simde_mm_xor_si128(c2[4478],simde_mm_xor_si128(c2[2887],simde_mm_xor_si128(c2[7682],simde_mm_xor_si128(c2[6885],simde_mm_xor_si128(c2[540],simde_mm_xor_si128(c2[585],simde_mm_xor_si128(c2[11673],simde_mm_xor_si128(c2[2175],simde_mm_xor_si128(c2[2997],simde_mm_xor_si128(c2[6961],simde_mm_xor_si128(c2[4582],simde_mm_xor_si128(c2[12533],simde_mm_xor_si128(c2[10960],simde_mm_xor_si128(c2[648],simde_mm_xor_si128(c2[7033],simde_mm_xor_si128(c2[10197],simde_mm_xor_si128(c2[7032],simde_mm_xor_si128(c2[7852],simde_mm_xor_si128(c2[8654],simde_mm_xor_si128(c2[1519],simde_mm_xor_si128(c2[4732],simde_mm_xor_si128(c2[6307],c2[10266]))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 1
|
|
d2[18]=simde_mm_xor_si128(c2[2389],simde_mm_xor_si128(c2[3181],simde_mm_xor_si128(c2[3179],simde_mm_xor_si128(c2[2392],simde_mm_xor_si128(c2[9515],simde_mm_xor_si128(c2[4800],simde_mm_xor_si128(c2[5592],simde_mm_xor_si128(c2[6382],simde_mm_xor_si128(c2[1629],simde_mm_xor_si128(c2[9587],simde_mm_xor_si128(c2[10379],simde_mm_xor_si128(c2[2458],simde_mm_xor_si128(c2[10381],simde_mm_xor_si128(c2[8039],simde_mm_xor_si128(c2[8831],simde_mm_xor_si128(c2[122],simde_mm_xor_si128(c2[5662],simde_mm_xor_si128(c2[952],simde_mm_xor_si128(c2[4904],simde_mm_xor_si128(c2[10446],simde_mm_xor_si128(c2[8905],simde_mm_xor_si128(c2[9697],simde_mm_xor_si128(c2[982],simde_mm_xor_si128(c2[3363],simde_mm_xor_si128(c2[3384],simde_mm_xor_si128(c2[4176],simde_mm_xor_si128(c2[8940],simde_mm_xor_si128(c2[2597],simde_mm_xor_si128(c2[10552],simde_mm_xor_si128(c2[8977],simde_mm_xor_si128(c2[4220],simde_mm_xor_si128(c2[9012],simde_mm_xor_si128(c2[292],simde_mm_xor_si128(c2[5052],simde_mm_xor_si128(c2[10621],simde_mm_xor_si128(c2[11413],simde_mm_xor_si128(c2[5083],simde_mm_xor_si128(c2[1116],simde_mm_xor_si128(c2[369],simde_mm_xor_si128(c2[1161],simde_mm_xor_si128(c2[3528],simde_mm_xor_si128(c2[8282],simde_mm_xor_si128(c2[3571],simde_mm_xor_si128(c2[4363],simde_mm_xor_si128(c2[11490],simde_mm_xor_si128(c2[2782],simde_mm_xor_si128(c2[6781],simde_mm_xor_si128(c2[7573],simde_mm_xor_si128(c2[433],simde_mm_xor_si128(c2[8355],simde_mm_xor_si128(c2[2851],simde_mm_xor_si128(c2[3643],simde_mm_xor_si128(c2[9184],simde_mm_xor_si128(c2[4430],simde_mm_xor_si128(c2[7636],simde_mm_xor_si128(c2[5270],simde_mm_xor_si128(c2[3679],simde_mm_xor_si128(c2[7682],simde_mm_xor_si128(c2[8474],simde_mm_xor_si128(c2[7677],simde_mm_xor_si128(c2[1332],simde_mm_xor_si128(c2[585],simde_mm_xor_si128(c2[1377],simde_mm_xor_si128(c2[12465],simde_mm_xor_si128(c2[2967],simde_mm_xor_si128(c2[3789],simde_mm_xor_si128(c2[7753],simde_mm_xor_si128(c2[5374],simde_mm_xor_si128(c2[12533],simde_mm_xor_si128(c2[654],simde_mm_xor_si128(c2[11752],simde_mm_xor_si128(c2[1440],simde_mm_xor_si128(c2[7033],simde_mm_xor_si128(c2[7825],simde_mm_xor_si128(c2[10989],simde_mm_xor_si128(c2[7824],simde_mm_xor_si128(c2[7852],simde_mm_xor_si128(c2[8644],simde_mm_xor_si128(c2[9446],simde_mm_xor_si128(c2[2311],simde_mm_xor_si128(c2[4732],simde_mm_xor_si128(c2[5524],simde_mm_xor_si128(c2[7099],c2[11058])))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 2
|
|
d2[36]=simde_mm_xor_si128(c2[3181],simde_mm_xor_si128(c2[3179],simde_mm_xor_si128(c2[1600],simde_mm_xor_si128(c2[2392],simde_mm_xor_si128(c2[8723],simde_mm_xor_si128(c2[9515],simde_mm_xor_si128(c2[5592],simde_mm_xor_si128(c2[5590],simde_mm_xor_si128(c2[6382],simde_mm_xor_si128(c2[837],simde_mm_xor_si128(c2[1629],simde_mm_xor_si128(c2[10379],simde_mm_xor_si128(c2[2458],simde_mm_xor_si128(c2[9589],simde_mm_xor_si128(c2[10381],simde_mm_xor_si128(c2[8831],simde_mm_xor_si128(c2[122],simde_mm_xor_si128(c2[4870],simde_mm_xor_si128(c2[5662],simde_mm_xor_si128(c2[952],simde_mm_xor_si128(c2[4112],simde_mm_xor_si128(c2[4904],simde_mm_xor_si128(c2[9654],simde_mm_xor_si128(c2[10446],simde_mm_xor_si128(c2[9697],simde_mm_xor_si128(c2[982],simde_mm_xor_si128(c2[2571],simde_mm_xor_si128(c2[3363],simde_mm_xor_si128(c2[4176],simde_mm_xor_si128(c2[8148],simde_mm_xor_si128(c2[8940],simde_mm_xor_si128(c2[1805],simde_mm_xor_si128(c2[2597],simde_mm_xor_si128(c2[10552],simde_mm_xor_si128(c2[8185],simde_mm_xor_si128(c2[8977],simde_mm_xor_si128(c2[3428],simde_mm_xor_si128(c2[4220],simde_mm_xor_si128(c2[9012],simde_mm_xor_si128(c2[12171],simde_mm_xor_si128(c2[292],simde_mm_xor_si128(c2[4260],simde_mm_xor_si128(c2[5052],simde_mm_xor_si128(c2[11413],simde_mm_xor_si128(c2[5083],simde_mm_xor_si128(c2[324],simde_mm_xor_si128(c2[1116],simde_mm_xor_si128(c2[1161],simde_mm_xor_si128(c2[2736],simde_mm_xor_si128(c2[3528],simde_mm_xor_si128(c2[7490],simde_mm_xor_si128(c2[8282],simde_mm_xor_si128(c2[4363],simde_mm_xor_si128(c2[11490],simde_mm_xor_si128(c2[1990],simde_mm_xor_si128(c2[2782],simde_mm_xor_si128(c2[7573],simde_mm_xor_si128(c2[433],simde_mm_xor_si128(c2[7563],simde_mm_xor_si128(c2[8355],simde_mm_xor_si128(c2[3643],simde_mm_xor_si128(c2[8392],simde_mm_xor_si128(c2[9184],simde_mm_xor_si128(c2[3638],simde_mm_xor_si128(c2[4430],simde_mm_xor_si128(c2[7636],simde_mm_xor_si128(c2[4478],simde_mm_xor_si128(c2[5270],simde_mm_xor_si128(c2[2887],simde_mm_xor_si128(c2[3679],simde_mm_xor_si128(c2[8474],simde_mm_xor_si128(c2[7677],simde_mm_xor_si128(c2[540],simde_mm_xor_si128(c2[1332],simde_mm_xor_si128(c2[1377],simde_mm_xor_si128(c2[12465],simde_mm_xor_si128(c2[2175],simde_mm_xor_si128(c2[2967],simde_mm_xor_si128(c2[3789],simde_mm_xor_si128(c2[6961],simde_mm_xor_si128(c2[7753],simde_mm_xor_si128(c2[4582],simde_mm_xor_si128(c2[5374],simde_mm_xor_si128(c2[654],simde_mm_xor_si128(c2[10960],simde_mm_xor_si128(c2[11752],simde_mm_xor_si128(c2[648],simde_mm_xor_si128(c2[1440],simde_mm_xor_si128(c2[7825],simde_mm_xor_si128(c2[10989],simde_mm_xor_si128(c2[7032],simde_mm_xor_si128(c2[7824],simde_mm_xor_si128(c2[8644],simde_mm_xor_si128(c2[8654],simde_mm_xor_si128(c2[9446],simde_mm_xor_si128(c2[1519],simde_mm_xor_si128(c2[2311],simde_mm_xor_si128(c2[5524],simde_mm_xor_si128(c2[7099],simde_mm_xor_si128(c2[10266],c2[11058]))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 3
|
|
d2[54]=simde_mm_xor_si128(c2[3181],simde_mm_xor_si128(c2[3179],simde_mm_xor_si128(c2[2392],simde_mm_xor_si128(c2[8723],simde_mm_xor_si128(c2[9515],simde_mm_xor_si128(c2[5592],simde_mm_xor_si128(c2[6382],simde_mm_xor_si128(c2[837],simde_mm_xor_si128(c2[1629],simde_mm_xor_si128(c2[10379],simde_mm_xor_si128(c2[2458],simde_mm_xor_si128(c2[10381],simde_mm_xor_si128(c2[8831],simde_mm_xor_si128(c2[122],simde_mm_xor_si128(c2[4870],simde_mm_xor_si128(c2[5662],simde_mm_xor_si128(c2[952],simde_mm_xor_si128(c2[4904],simde_mm_xor_si128(c2[9654],simde_mm_xor_si128(c2[10446],simde_mm_xor_si128(c2[9697],simde_mm_xor_si128(c2[982],simde_mm_xor_si128(c2[3363],simde_mm_xor_si128(c2[4176],simde_mm_xor_si128(c2[8940],simde_mm_xor_si128(c2[1805],simde_mm_xor_si128(c2[2597],simde_mm_xor_si128(c2[10552],simde_mm_xor_si128(c2[8977],simde_mm_xor_si128(c2[3428],simde_mm_xor_si128(c2[4220],simde_mm_xor_si128(c2[9012],simde_mm_xor_si128(c2[292],simde_mm_xor_si128(c2[4260],simde_mm_xor_si128(c2[5052],simde_mm_xor_si128(c2[11413],simde_mm_xor_si128(c2[5083],simde_mm_xor_si128(c2[1116],simde_mm_xor_si128(c2[1161],simde_mm_xor_si128(c2[3528],simde_mm_xor_si128(c2[7490],simde_mm_xor_si128(c2[8282],simde_mm_xor_si128(c2[4363],simde_mm_xor_si128(c2[11490],simde_mm_xor_si128(c2[1990],simde_mm_xor_si128(c2[2782],simde_mm_xor_si128(c2[7573],simde_mm_xor_si128(c2[433],simde_mm_xor_si128(c2[7563],simde_mm_xor_si128(c2[8355],simde_mm_xor_si128(c2[3643],simde_mm_xor_si128(c2[9184],simde_mm_xor_si128(c2[3638],simde_mm_xor_si128(c2[4430],simde_mm_xor_si128(c2[7636],simde_mm_xor_si128(c2[5270],simde_mm_xor_si128(c2[2887],simde_mm_xor_si128(c2[3679],simde_mm_xor_si128(c2[8474],simde_mm_xor_si128(c2[7677],simde_mm_xor_si128(c2[1332],simde_mm_xor_si128(c2[1377],simde_mm_xor_si128(c2[12465],simde_mm_xor_si128(c2[2175],simde_mm_xor_si128(c2[2967],simde_mm_xor_si128(c2[3789],simde_mm_xor_si128(c2[7753],simde_mm_xor_si128(c2[4582],simde_mm_xor_si128(c2[5374],simde_mm_xor_si128(c2[654],simde_mm_xor_si128(c2[11752],simde_mm_xor_si128(c2[648],simde_mm_xor_si128(c2[1440],simde_mm_xor_si128(c2[7825],simde_mm_xor_si128(c2[10989],simde_mm_xor_si128(c2[7824],simde_mm_xor_si128(c2[8644],simde_mm_xor_si128(c2[9446],simde_mm_xor_si128(c2[1519],simde_mm_xor_si128(c2[2311],simde_mm_xor_si128(c2[5524],simde_mm_xor_si128(c2[7099],simde_mm_xor_si128(c2[10266],c2[11058])))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 4
|
|
d2[72]=simde_mm_xor_si128(c2[4767],c2[8762]);
|
|
|
|
//row: 5
|
|
d2[90]=simde_mm_xor_si128(c2[2380],simde_mm_xor_si128(c2[2378],simde_mm_xor_si128(c2[1591],simde_mm_xor_si128(c2[8714],simde_mm_xor_si128(c2[3976],simde_mm_xor_si128(c2[4791],simde_mm_xor_si128(c2[5581],simde_mm_xor_si128(c2[828],simde_mm_xor_si128(c2[4007],simde_mm_xor_si128(c2[9578],simde_mm_xor_si128(c2[1657],simde_mm_xor_si128(c2[9580],simde_mm_xor_si128(c2[8030],simde_mm_xor_si128(c2[11992],simde_mm_xor_si128(c2[4861],simde_mm_xor_si128(c2[6448],simde_mm_xor_si128(c2[151],simde_mm_xor_si128(c2[4121],simde_mm_xor_si128(c2[9663],simde_mm_xor_si128(c2[8896],simde_mm_xor_si128(c2[181],simde_mm_xor_si128(c2[2562],simde_mm_xor_si128(c2[3393],simde_mm_xor_si128(c2[8139],simde_mm_xor_si128(c2[1814],simde_mm_xor_si128(c2[9769],simde_mm_xor_si128(c2[8176],simde_mm_xor_si128(c2[3437],simde_mm_xor_si128(c2[8211],simde_mm_xor_si128(c2[12180],simde_mm_xor_si128(c2[4251],simde_mm_xor_si128(c2[10630],simde_mm_xor_si128(c2[4300],simde_mm_xor_si128(c2[333],simde_mm_xor_si128(c2[360],simde_mm_xor_si128(c2[2745],simde_mm_xor_si128(c2[7499],simde_mm_xor_si128(c2[3580],simde_mm_xor_si128(c2[10707],simde_mm_xor_si128(c2[1981],simde_mm_xor_si128(c2[6772],simde_mm_xor_si128(c2[12321],simde_mm_xor_si128(c2[7572],simde_mm_xor_si128(c2[9161],simde_mm_xor_si128(c2[2860],simde_mm_xor_si128(c2[8401],simde_mm_xor_si128(c2[3647],simde_mm_xor_si128(c2[6853],simde_mm_xor_si128(c2[4469],simde_mm_xor_si128(c2[2896],simde_mm_xor_si128(c2[7673],simde_mm_xor_si128(c2[6876],simde_mm_xor_si128(c2[549],simde_mm_xor_si128(c2[576],simde_mm_xor_si128(c2[11664],simde_mm_xor_si128(c2[2166],simde_mm_xor_si128(c2[11679],simde_mm_xor_si128(c2[2988],simde_mm_xor_si128(c2[6952],simde_mm_xor_si128(c2[4573],simde_mm_xor_si128(c2[12542],simde_mm_xor_si128(c2[10951],simde_mm_xor_si128(c2[657],simde_mm_xor_si128(c2[7024],simde_mm_xor_si128(c2[10188],simde_mm_xor_si128(c2[7023],simde_mm_xor_si128(c2[7861],simde_mm_xor_si128(c2[8645],simde_mm_xor_si128(c2[1528],simde_mm_xor_si128(c2[4723],simde_mm_xor_si128(c2[6316],simde_mm_xor_si128(c2[10275],c2[12640]))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 6
|
|
d2[108]=simde_mm_xor_si128(c2[5],simde_mm_xor_si128(c2[225],simde_mm_xor_si128(c2[7498],simde_mm_xor_si128(c2[8321],simde_mm_xor_si128(c2[9183],simde_mm_xor_si128(c2[1415],simde_mm_xor_si128(c2[6201],c2[10230])))))));
|
|
|
|
//row: 7
|
|
d2[126]=simde_mm_xor_si128(c2[7138],simde_mm_xor_si128(c2[10343],simde_mm_xor_si128(c2[8073],simde_mm_xor_si128(c2[6599],simde_mm_xor_si128(c2[6630],c2[3682])))));
|
|
|
|
//row: 8
|
|
d2[144]=simde_mm_xor_si128(c2[7137],simde_mm_xor_si128(c2[7936],simde_mm_xor_si128(c2[7135],simde_mm_xor_si128(c2[7934],simde_mm_xor_si128(c2[6348],simde_mm_xor_si128(c2[6337],simde_mm_xor_si128(c2[7129],simde_mm_xor_si128(c2[800],simde_mm_xor_si128(c2[807],simde_mm_xor_si128(c2[1599],simde_mm_xor_si128(c2[4755],simde_mm_xor_si128(c2[9548],simde_mm_xor_si128(c2[10347],simde_mm_xor_si128(c2[10338],simde_mm_xor_si128(c2[10345],simde_mm_xor_si128(c2[11137],simde_mm_xor_si128(c2[5585],simde_mm_xor_si128(c2[5592],simde_mm_xor_si128(c2[6384],simde_mm_xor_si128(c2[36],simde_mm_xor_si128(c2[1664],simde_mm_xor_si128(c2[2463],simde_mm_xor_si128(c2[6414],simde_mm_xor_si128(c2[7213],simde_mm_xor_si128(c2[1666],simde_mm_xor_si128(c2[1673],simde_mm_xor_si128(c2[2465],simde_mm_xor_si128(c2[116],simde_mm_xor_si128(c2[915],simde_mm_xor_si128(c2[4078],simde_mm_xor_si128(c2[4877],simde_mm_xor_si128(c2[9618],simde_mm_xor_si128(c2[9625],simde_mm_xor_si128(c2[10417],simde_mm_xor_si128(c2[9627],simde_mm_xor_si128(c2[4908],simde_mm_xor_si128(c2[5689],simde_mm_xor_si128(c2[8860],simde_mm_xor_si128(c2[8867],simde_mm_xor_si128(c2[9659],simde_mm_xor_si128(c2[1731],simde_mm_xor_si128(c2[1738],simde_mm_xor_si128(c2[2530],simde_mm_xor_si128(c2[982],simde_mm_xor_si128(c2[1781],simde_mm_xor_si128(c2[4938],simde_mm_xor_si128(c2[5737],simde_mm_xor_si128(c2[7319],simde_mm_xor_si128(c2[7308],simde_mm_xor_si128(c2[8100],simde_mm_xor_si128(c2[8150],simde_mm_xor_si128(c2[8931],simde_mm_xor_si128(c2[225],simde_mm_xor_si128(c2[232],simde_mm_xor_si128(c2[1024],simde_mm_xor_si128(c2[6553],simde_mm_xor_si128(c2[6560],simde_mm_xor_si128(c2[7352],simde_mm_xor_si128(c2[1837],simde_mm_xor_si128(c2[2636],simde_mm_xor_si128(c2[262],simde_mm_xor_si128(c2[269],simde_mm_xor_si128(c2[1061],simde_mm_xor_si128(c2[8176],simde_mm_xor_si128(c2[8183],simde_mm_xor_si128(c2[8975],simde_mm_xor_si128(c2[297],simde_mm_xor_si128(c2[1096],simde_mm_xor_si128(c2[4248],simde_mm_xor_si128(c2[4255],simde_mm_xor_si128(c2[5047],simde_mm_xor_si128(c2[9008],simde_mm_xor_si128(c2[9015],simde_mm_xor_si128(c2[9807],simde_mm_xor_si128(c2[2716],simde_mm_xor_si128(c2[3497],simde_mm_xor_si128(c2[9039],simde_mm_xor_si128(c2[9838],simde_mm_xor_si128(c2[5090],simde_mm_xor_si128(c2[5079],simde_mm_xor_si128(c2[5871],simde_mm_xor_si128(c2[5117],simde_mm_xor_si128(c2[5916],simde_mm_xor_si128(c2[7502],simde_mm_xor_si128(c2[7491],simde_mm_xor_si128(c2[8283],simde_mm_xor_si128(c2[12256],simde_mm_xor_si128(c2[12245],simde_mm_xor_si128(c2[366],simde_mm_xor_si128(c2[8319],simde_mm_xor_si128(c2[9118],simde_mm_xor_si128(c2[2775],simde_mm_xor_si128(c2[3574],simde_mm_xor_si128(c2[6738],simde_mm_xor_si128(c2[6745],simde_mm_xor_si128(c2[7537],simde_mm_xor_si128(c2[11529],simde_mm_xor_si128(c2[12328],simde_mm_xor_si128(c2[4407],simde_mm_xor_si128(c2[5188],simde_mm_xor_si128(c2[12329],simde_mm_xor_si128(c2[12318],simde_mm_xor_si128(c2[439],simde_mm_xor_si128(c2[7562],simde_mm_xor_si128(c2[7599],simde_mm_xor_si128(c2[8398],simde_mm_xor_si128(c2[469],simde_mm_xor_si128(c2[476],simde_mm_xor_si128(c2[1268],simde_mm_xor_si128(c2[8404],simde_mm_xor_si128(c2[8393],simde_mm_xor_si128(c2[9185],simde_mm_xor_si128(c2[11592],simde_mm_xor_si128(c2[12391],simde_mm_xor_si128(c2[9226],simde_mm_xor_si128(c2[9233],simde_mm_xor_si128(c2[10025],simde_mm_xor_si128(c2[7635],simde_mm_xor_si128(c2[7642],simde_mm_xor_si128(c2[8434],simde_mm_xor_si128(c2[12430],simde_mm_xor_si128(c2[540],simde_mm_xor_si128(c2[11633],simde_mm_xor_si128(c2[12432],simde_mm_xor_si128(c2[5306],simde_mm_xor_si128(c2[5295],simde_mm_xor_si128(c2[6087],simde_mm_xor_si128(c2[5333],simde_mm_xor_si128(c2[6132],simde_mm_xor_si128(c2[3750],simde_mm_xor_si128(c2[4549],simde_mm_xor_si128(c2[6923],simde_mm_xor_si128(c2[6912],simde_mm_xor_si128(c2[7704],simde_mm_xor_si128(c2[2166],simde_mm_xor_si128(c2[7745],simde_mm_xor_si128(c2[8544],simde_mm_xor_si128(c2[11709],simde_mm_xor_si128(c2[11716],simde_mm_xor_si128(c2[12508],simde_mm_xor_si128(c2[9330],simde_mm_xor_si128(c2[9337],simde_mm_xor_si128(c2[10129],simde_mm_xor_si128(c2[4610],simde_mm_xor_si128(c2[5409],simde_mm_xor_si128(c2[3037],simde_mm_xor_si128(c2[3026],simde_mm_xor_si128(c2[3818],simde_mm_xor_si128(c2[5414],simde_mm_xor_si128(c2[5403],simde_mm_xor_si128(c2[6195],simde_mm_xor_si128(c2[11781],simde_mm_xor_si128(c2[12580],simde_mm_xor_si128(c2[2274],simde_mm_xor_si128(c2[3073],simde_mm_xor_si128(c2[11780],simde_mm_xor_si128(c2[11787],simde_mm_xor_si128(c2[12579],simde_mm_xor_si128(c2[11774],simde_mm_xor_si128(c2[12600],simde_mm_xor_si128(c2[728],simde_mm_xor_si128(c2[731],simde_mm_xor_si128(c2[720],simde_mm_xor_si128(c2[1512],simde_mm_xor_si128(c2[6267],simde_mm_xor_si128(c2[6274],simde_mm_xor_si128(c2[7066],simde_mm_xor_si128(c2[9480],simde_mm_xor_si128(c2[10261],simde_mm_xor_si128(c2[11055],simde_mm_xor_si128(c2[11854],simde_mm_xor_si128(c2[2343],simde_mm_xor_si128(c2[2350],simde_mm_xor_si128(c2[3142],c2[12636]))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 9
|
|
d2[162]=simde_mm_xor_si128(c2[1594],simde_mm_xor_si128(c2[11925],simde_mm_xor_si128(c2[10661],simde_mm_xor_si128(c2[5156],simde_mm_xor_si128(c2[10766],simde_mm_xor_si128(c2[3788],simde_mm_xor_si128(c2[10156],c2[1525])))))));
|
|
|
|
//row: 10
|
|
d2[180]=simde_mm_xor_si128(c2[1631],simde_mm_xor_si128(c2[864],simde_mm_xor_si128(c2[9649],simde_mm_xor_si128(c2[8980],simde_mm_xor_si128(c2[8222],c2[7644])))));
|
|
|
|
//row: 11
|
|
d2[198]=simde_mm_xor_si128(c2[7935],simde_mm_xor_si128(c2[10310],simde_mm_xor_si128(c2[11102],simde_mm_xor_si128(c2[7933],simde_mm_xor_si128(c2[11100],simde_mm_xor_si128(c2[7128],simde_mm_xor_si128(c2[10313],simde_mm_xor_si128(c2[1598],simde_mm_xor_si128(c2[4765],simde_mm_xor_si128(c2[5547],simde_mm_xor_si128(c2[10346],simde_mm_xor_si128(c2[50],simde_mm_xor_si128(c2[842],simde_mm_xor_si128(c2[11136],simde_mm_xor_si128(c2[1632],simde_mm_xor_si128(c2[6383],simde_mm_xor_si128(c2[9550],simde_mm_xor_si128(c2[5581],simde_mm_xor_si128(c2[2462],simde_mm_xor_si128(c2[4837],simde_mm_xor_si128(c2[5629],simde_mm_xor_si128(c2[7212],simde_mm_xor_si128(c2[10379],simde_mm_xor_si128(c2[2464],simde_mm_xor_si128(c2[5631],simde_mm_xor_si128(c2[914],simde_mm_xor_si128(c2[3289],simde_mm_xor_si128(c2[4081],simde_mm_xor_si128(c2[4876],simde_mm_xor_si128(c2[8043],simde_mm_xor_si128(c2[10416],simde_mm_xor_si128(c2[912],simde_mm_xor_si128(c2[5688],simde_mm_xor_si128(c2[8873],simde_mm_xor_si128(c2[9658],simde_mm_xor_si128(c2[154],simde_mm_xor_si128(c2[2529],simde_mm_xor_si128(c2[5696],simde_mm_xor_si128(c2[1780],simde_mm_xor_si128(c2[4155],simde_mm_xor_si128(c2[4947],simde_mm_xor_si128(c2[5736],simde_mm_xor_si128(c2[8903],simde_mm_xor_si128(c2[8117],simde_mm_xor_si128(c2[11284],simde_mm_xor_si128(c2[8930],simde_mm_xor_si128(c2[11305],simde_mm_xor_si128(c2[12097],simde_mm_xor_si128(c2[1023],simde_mm_xor_si128(c2[4190],simde_mm_xor_si128(c2[7351],simde_mm_xor_si128(c2[10518],simde_mm_xor_si128(c2[2635],simde_mm_xor_si128(c2[5802],simde_mm_xor_si128(c2[1060],simde_mm_xor_si128(c2[4227],simde_mm_xor_si128(c2[8974],simde_mm_xor_si128(c2[12141],simde_mm_xor_si128(c2[1095],simde_mm_xor_si128(c2[4262],simde_mm_xor_si128(c2[5046],simde_mm_xor_si128(c2[8213],simde_mm_xor_si128(c2[9806],simde_mm_xor_si128(c2[302],simde_mm_xor_si128(c2[3496],simde_mm_xor_si128(c2[5871],simde_mm_xor_si128(c2[6663],simde_mm_xor_si128(c2[9837],simde_mm_xor_si128(c2[333],simde_mm_xor_si128(c2[5870],simde_mm_xor_si128(c2[9037],simde_mm_xor_si128(c2[5915],simde_mm_xor_si128(c2[8290],simde_mm_xor_si128(c2[9082],simde_mm_xor_si128(c2[8282],simde_mm_xor_si128(c2[11449],simde_mm_xor_si128(c2[365],simde_mm_xor_si128(c2[3532],simde_mm_xor_si128(c2[9117],simde_mm_xor_si128(c2[11492],simde_mm_xor_si128(c2[12284],simde_mm_xor_si128(c2[3573],simde_mm_xor_si128(c2[6740],simde_mm_xor_si128(c2[7536],simde_mm_xor_si128(c2[10703],simde_mm_xor_si128(c2[12327],simde_mm_xor_si128(c2[2031],simde_mm_xor_si128(c2[2823],simde_mm_xor_si128(c2[5187],simde_mm_xor_si128(c2[8354],simde_mm_xor_si128(c2[438],simde_mm_xor_si128(c2[3605],simde_mm_xor_si128(c2[2033],simde_mm_xor_si128(c2[8397],simde_mm_xor_si128(c2[10772],simde_mm_xor_si128(c2[11564],simde_mm_xor_si128(c2[1267],simde_mm_xor_si128(c2[4434],simde_mm_xor_si128(c2[9184],simde_mm_xor_si128(c2[12351],simde_mm_xor_si128(c2[12390],simde_mm_xor_si128(c2[2886],simde_mm_xor_si128(c2[10024],simde_mm_xor_si128(c2[520],simde_mm_xor_si128(c2[8433],simde_mm_xor_si128(c2[11600],simde_mm_xor_si128(c2[557],simde_mm_xor_si128(c2[2932],simde_mm_xor_si128(c2[3724],simde_mm_xor_si128(c2[12431],simde_mm_xor_si128(c2[2927],simde_mm_xor_si128(c2[6086],simde_mm_xor_si128(c2[9253],simde_mm_xor_si128(c2[6131],simde_mm_xor_si128(c2[8506],simde_mm_xor_si128(c2[9298],simde_mm_xor_si128(c2[4548],simde_mm_xor_si128(c2[7715],simde_mm_xor_si128(c2[7721],simde_mm_xor_si128(c2[10888],simde_mm_xor_si128(c2[4547],simde_mm_xor_si128(c2[8543],simde_mm_xor_si128(c2[11710],simde_mm_xor_si128(c2[12507],simde_mm_xor_si128(c2[3003],simde_mm_xor_si128(c2[10128],simde_mm_xor_si128(c2[624],simde_mm_xor_si128(c2[5408],simde_mm_xor_si128(c2[7783],simde_mm_xor_si128(c2[8575],simde_mm_xor_si128(c2[3817],simde_mm_xor_si128(c2[6984],simde_mm_xor_si128(c2[6194],simde_mm_xor_si128(c2[9361],simde_mm_xor_si128(c2[12579],simde_mm_xor_si128(c2[2283],simde_mm_xor_si128(c2[3075],simde_mm_xor_si128(c2[3072],simde_mm_xor_si128(c2[6239],simde_mm_xor_si128(c2[12578],simde_mm_xor_si128(c2[3074],simde_mm_xor_si128(c2[727],simde_mm_xor_si128(c2[3102],simde_mm_xor_si128(c2[3894],simde_mm_xor_si128(c2[1529],simde_mm_xor_si128(c2[4696],simde_mm_xor_si128(c2[7065],simde_mm_xor_si128(c2[10232],simde_mm_xor_si128(c2[10260],simde_mm_xor_si128(c2[12653],simde_mm_xor_si128(c2[756],simde_mm_xor_si128(c2[11853],simde_mm_xor_si128(c2[2349],simde_mm_xor_si128(c2[3141],simde_mm_xor_si128(c2[6308],c2[1565])))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 12
|
|
d2[216]=simde_mm_xor_si128(c2[806],simde_mm_xor_si128(c2[1630],simde_mm_xor_si128(c2[3543],simde_mm_xor_si128(c2[5949],simde_mm_xor_si128(c2[11570],c2[3039])))));
|
|
|
|
//row: 13
|
|
d2[234]=simde_mm_xor_si128(c2[5559],simde_mm_xor_si128(c2[6351],simde_mm_xor_si128(c2[6349],simde_mm_xor_si128(c2[5544],simde_mm_xor_si128(c2[14],simde_mm_xor_si128(c2[5558],simde_mm_xor_si128(c2[7970],simde_mm_xor_si128(c2[8762],simde_mm_xor_si128(c2[9552],simde_mm_xor_si128(c2[4799],simde_mm_xor_si128(c2[86],simde_mm_xor_si128(c2[878],simde_mm_xor_si128(c2[5628],simde_mm_xor_si128(c2[880],simde_mm_xor_si128(c2[11209],simde_mm_xor_si128(c2[12001],simde_mm_xor_si128(c2[3292],simde_mm_xor_si128(c2[8832],simde_mm_xor_si128(c2[108],simde_mm_xor_si128(c2[4104],simde_mm_xor_si128(c2[8074],simde_mm_xor_si128(c2[945],simde_mm_xor_si128(c2[12075],simde_mm_xor_si128(c2[196],simde_mm_xor_si128(c2[4152],simde_mm_xor_si128(c2[6533],simde_mm_xor_si128(c2[6554],simde_mm_xor_si128(c2[7346],simde_mm_xor_si128(c2[12110],simde_mm_xor_si128(c2[5767],simde_mm_xor_si128(c2[1051],simde_mm_xor_si128(c2[12147],simde_mm_xor_si128(c2[7390],simde_mm_xor_si128(c2[6601],simde_mm_xor_si128(c2[12182],simde_mm_xor_si128(c2[3462],simde_mm_xor_si128(c2[8222],simde_mm_xor_si128(c2[1120],simde_mm_xor_si128(c2[1912],simde_mm_xor_si128(c2[8253],simde_mm_xor_si128(c2[4286],simde_mm_xor_si128(c2[3539],simde_mm_xor_si128(c2[4331],simde_mm_xor_si128(c2[6698],simde_mm_xor_si128(c2[11452],simde_mm_xor_si128(c2[6741],simde_mm_xor_si128(c2[7533],simde_mm_xor_si128(c2[1989],simde_mm_xor_si128(c2[5952],simde_mm_xor_si128(c2[9951],simde_mm_xor_si128(c2[10743],simde_mm_xor_si128(c2[3603],simde_mm_xor_si128(c2[11525],simde_mm_xor_si128(c2[6021],simde_mm_xor_si128(c2[6813],simde_mm_xor_si128(c2[12354],simde_mm_xor_si128(c2[7600],simde_mm_xor_si128(c2[10806],simde_mm_xor_si128(c2[8440],simde_mm_xor_si128(c2[6849],simde_mm_xor_si128(c2[10852],simde_mm_xor_si128(c2[11644],simde_mm_xor_si128(c2[10847],simde_mm_xor_si128(c2[4502],simde_mm_xor_si128(c2[3755],simde_mm_xor_si128(c2[4547],simde_mm_xor_si128(c2[2964],simde_mm_xor_si128(c2[6137],simde_mm_xor_si128(c2[6959],simde_mm_xor_si128(c2[10923],simde_mm_xor_si128(c2[8544],simde_mm_xor_si128(c2[3032],simde_mm_xor_si128(c2[3824],simde_mm_xor_si128(c2[2233],simde_mm_xor_si128(c2[4610],simde_mm_xor_si128(c2[10203],simde_mm_xor_si128(c2[10995],simde_mm_xor_si128(c2[1488],simde_mm_xor_si128(c2[10994],simde_mm_xor_si128(c2[11022],simde_mm_xor_si128(c2[11814],simde_mm_xor_si128(c2[12616],simde_mm_xor_si128(c2[5481],simde_mm_xor_si128(c2[12602],simde_mm_xor_si128(c2[7884],simde_mm_xor_si128(c2[8676],simde_mm_xor_si128(c2[10269],c2[1557])))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 14
|
|
d2[252]=simde_mm_xor_si128(c2[0],simde_mm_xor_si128(c2[8363],simde_mm_xor_si128(c2[10851],simde_mm_xor_si128(c2[577],simde_mm_xor_si128(c2[612],c2[12640])))));
|
|
|
|
//row: 15
|
|
d2[270]=simde_mm_xor_si128(c2[3185],simde_mm_xor_si128(c2[3183],simde_mm_xor_si128(c2[2378],simde_mm_xor_si128(c2[8727],simde_mm_xor_si128(c2[9519],simde_mm_xor_si128(c2[7930],simde_mm_xor_si128(c2[5596],simde_mm_xor_si128(c2[6386],simde_mm_xor_si128(c2[841],simde_mm_xor_si128(c2[1633],simde_mm_xor_si128(c2[36],simde_mm_xor_si128(c2[10383],simde_mm_xor_si128(c2[2462],simde_mm_xor_si128(c2[10385],simde_mm_xor_si128(c2[8835],simde_mm_xor_si128(c2[108],simde_mm_xor_si128(c2[4874],simde_mm_xor_si128(c2[5666],simde_mm_xor_si128(c2[938],simde_mm_xor_si128(c2[4908],simde_mm_xor_si128(c2[9658],simde_mm_xor_si128(c2[10450],simde_mm_xor_si128(c2[9701],simde_mm_xor_si128(c2[986],simde_mm_xor_si128(c2[3349],simde_mm_xor_si128(c2[4180],simde_mm_xor_si128(c2[8944],simde_mm_xor_si128(c2[1809],simde_mm_xor_si128(c2[2601],simde_mm_xor_si128(c2[10556],simde_mm_xor_si128(c2[8981],simde_mm_xor_si128(c2[3432],simde_mm_xor_si128(c2[4224],simde_mm_xor_si128(c2[9016],simde_mm_xor_si128(c2[296],simde_mm_xor_si128(c2[4264],simde_mm_xor_si128(c2[5056],simde_mm_xor_si128(c2[11417],simde_mm_xor_si128(c2[5087],simde_mm_xor_si128(c2[1120],simde_mm_xor_si128(c2[1165],simde_mm_xor_si128(c2[3532],simde_mm_xor_si128(c2[7494],simde_mm_xor_si128(c2[8286],simde_mm_xor_si128(c2[5915],simde_mm_xor_si128(c2[4367],simde_mm_xor_si128(c2[11494],simde_mm_xor_si128(c2[1994],simde_mm_xor_si128(c2[2786],simde_mm_xor_si128(c2[7577],simde_mm_xor_si128(c2[437],simde_mm_xor_si128(c2[7567],simde_mm_xor_si128(c2[8359],simde_mm_xor_si128(c2[3647],simde_mm_xor_si128(c2[9188],simde_mm_xor_si128(c2[3642],simde_mm_xor_si128(c2[4434],simde_mm_xor_si128(c2[9978],simde_mm_xor_si128(c2[7640],simde_mm_xor_si128(c2[5256],simde_mm_xor_si128(c2[2891],simde_mm_xor_si128(c2[3683],simde_mm_xor_si128(c2[8460],simde_mm_xor_si128(c2[7681],simde_mm_xor_si128(c2[1336],simde_mm_xor_si128(c2[1381],simde_mm_xor_si128(c2[12469],simde_mm_xor_si128(c2[2161],simde_mm_xor_si128(c2[2953],simde_mm_xor_si128(c2[3793],simde_mm_xor_si128(c2[7757],simde_mm_xor_si128(c2[4586],simde_mm_xor_si128(c2[5378],simde_mm_xor_si128(c2[658],simde_mm_xor_si128(c2[11738],simde_mm_xor_si128(c2[652],simde_mm_xor_si128(c2[1444],simde_mm_xor_si128(c2[3820],simde_mm_xor_si128(c2[7829],simde_mm_xor_si128(c2[10993],simde_mm_xor_si128(c2[7828],simde_mm_xor_si128(c2[8648],simde_mm_xor_si128(c2[9432],simde_mm_xor_si128(c2[1523],simde_mm_xor_si128(c2[2315],simde_mm_xor_si128(c2[5510],simde_mm_xor_si128(c2[7103],simde_mm_xor_si128(c2[10270],c2[11062]))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 16
|
|
d2[288]=simde_mm_xor_si128(c2[2389],simde_mm_xor_si128(c2[2387],simde_mm_xor_si128(c2[1600],simde_mm_xor_si128(c2[8723],simde_mm_xor_si128(c2[4800],simde_mm_xor_si128(c2[5590],simde_mm_xor_si128(c2[837],simde_mm_xor_si128(c2[11140],simde_mm_xor_si128(c2[9587],simde_mm_xor_si128(c2[1666],simde_mm_xor_si128(c2[9589],simde_mm_xor_si128(c2[8039],simde_mm_xor_si128(c2[12001],simde_mm_xor_si128(c2[4870],simde_mm_xor_si128(c2[10404],simde_mm_xor_si128(c2[160],simde_mm_xor_si128(c2[4112],simde_mm_xor_si128(c2[9654],simde_mm_xor_si128(c2[8905],simde_mm_xor_si128(c2[190],simde_mm_xor_si128(c2[2571],simde_mm_xor_si128(c2[3384],simde_mm_xor_si128(c2[8148],simde_mm_xor_si128(c2[1805],simde_mm_xor_si128(c2[9760],simde_mm_xor_si128(c2[8185],simde_mm_xor_si128(c2[3428],simde_mm_xor_si128(c2[8220],simde_mm_xor_si128(c2[12171],simde_mm_xor_si128(c2[4260],simde_mm_xor_si128(c2[10621],simde_mm_xor_si128(c2[4291],simde_mm_xor_si128(c2[324],simde_mm_xor_si128(c2[369],simde_mm_xor_si128(c2[2736],simde_mm_xor_si128(c2[7490],simde_mm_xor_si128(c2[3571],simde_mm_xor_si128(c2[10698],simde_mm_xor_si128(c2[1990],simde_mm_xor_si128(c2[2778],simde_mm_xor_si128(c2[6781],simde_mm_xor_si128(c2[12312],simde_mm_xor_si128(c2[7563],simde_mm_xor_si128(c2[2851],simde_mm_xor_si128(c2[8392],simde_mm_xor_si128(c2[3638],simde_mm_xor_si128(c2[6844],simde_mm_xor_si128(c2[4478],simde_mm_xor_si128(c2[2887],simde_mm_xor_si128(c2[7682],simde_mm_xor_si128(c2[6885],simde_mm_xor_si128(c2[540],simde_mm_xor_si128(c2[585],simde_mm_xor_si128(c2[11673],simde_mm_xor_si128(c2[2175],simde_mm_xor_si128(c2[2997],simde_mm_xor_si128(c2[6961],simde_mm_xor_si128(c2[4582],simde_mm_xor_si128(c2[12533],simde_mm_xor_si128(c2[10960],simde_mm_xor_si128(c2[648],simde_mm_xor_si128(c2[7033],simde_mm_xor_si128(c2[10197],simde_mm_xor_si128(c2[7032],simde_mm_xor_si128(c2[7852],simde_mm_xor_si128(c2[8654],simde_mm_xor_si128(c2[1519],simde_mm_xor_si128(c2[5475],simde_mm_xor_si128(c2[4732],simde_mm_xor_si128(c2[6307],c2[10266]))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 17
|
|
d2[306]=simde_mm_xor_si128(c2[7137],simde_mm_xor_si128(c2[7640],simde_mm_xor_si128(c2[576],simde_mm_xor_si128(c2[612],c2[2350]))));
|
|
|
|
//row: 18
|
|
d2[324]=simde_mm_xor_si128(c2[838],simde_mm_xor_si128(c2[5985],simde_mm_xor_si128(c2[468],simde_mm_xor_si128(c2[1455],c2[693]))));
|
|
|
|
//row: 19
|
|
d2[342]=simde_mm_xor_si128(c2[0],simde_mm_xor_si128(c2[36],simde_mm_xor_si128(c2[5011],simde_mm_xor_si128(c2[297],c2[360]))));
|
|
|
|
//row: 20
|
|
d2[360]=simde_mm_xor_si128(c2[5553],simde_mm_xor_si128(c2[5551],simde_mm_xor_si128(c2[4764],simde_mm_xor_si128(c2[11887],simde_mm_xor_si128(c2[7144],simde_mm_xor_si128(c2[7964],simde_mm_xor_si128(c2[8754],simde_mm_xor_si128(c2[4001],simde_mm_xor_si128(c2[80],simde_mm_xor_si128(c2[4830],simde_mm_xor_si128(c2[82],simde_mm_xor_si128(c2[11203],simde_mm_xor_si128(c2[2494],simde_mm_xor_si128(c2[8034],simde_mm_xor_si128(c2[905],simde_mm_xor_si128(c2[3324],simde_mm_xor_si128(c2[7276],simde_mm_xor_si128(c2[147],simde_mm_xor_si128(c2[12069],simde_mm_xor_si128(c2[3354],simde_mm_xor_si128(c2[5735],simde_mm_xor_si128(c2[6566],simde_mm_xor_si128(c2[11312],simde_mm_xor_si128(c2[4969],simde_mm_xor_si128(c2[253],simde_mm_xor_si128(c2[11349],simde_mm_xor_si128(c2[6592],simde_mm_xor_si128(c2[11384],simde_mm_xor_si128(c2[2664],simde_mm_xor_si128(c2[7424],simde_mm_xor_si128(c2[1132],simde_mm_xor_si128(c2[7455],simde_mm_xor_si128(c2[3506],simde_mm_xor_si128(c2[8249],simde_mm_xor_si128(c2[3533],simde_mm_xor_si128(c2[5918],simde_mm_xor_si128(c2[10672],simde_mm_xor_si128(c2[6735],simde_mm_xor_si128(c2[1191],simde_mm_xor_si128(c2[5154],simde_mm_xor_si128(c2[405],simde_mm_xor_si128(c2[9945],simde_mm_xor_si128(c2[2823],simde_mm_xor_si128(c2[10745],simde_mm_xor_si128(c2[6015],simde_mm_xor_si128(c2[11556],simde_mm_xor_si128(c2[6820],simde_mm_xor_si128(c2[10008],simde_mm_xor_si128(c2[7642],simde_mm_xor_si128(c2[6051],simde_mm_xor_si128(c2[10846],simde_mm_xor_si128(c2[10049],simde_mm_xor_si128(c2[3722],simde_mm_xor_si128(c2[3749],simde_mm_xor_si128(c2[2166],simde_mm_xor_si128(c2[5339],simde_mm_xor_si128(c2[6161],simde_mm_xor_si128(c2[10125],simde_mm_xor_si128(c2[7746],simde_mm_xor_si128(c2[3026],simde_mm_xor_si128(c2[1453],simde_mm_xor_si128(c2[3830],simde_mm_xor_si128(c2[10197],simde_mm_xor_si128(c2[690],simde_mm_xor_si128(c2[10196],simde_mm_xor_si128(c2[11016],simde_mm_xor_si128(c2[11818],simde_mm_xor_si128(c2[4683],simde_mm_xor_si128(c2[7896],simde_mm_xor_si128(c2[9471],c2[759]))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 21
|
|
d2[378]=simde_mm_xor_si128(c2[40],simde_mm_xor_si128(c2[11270],simde_mm_xor_si128(c2[8512],simde_mm_xor_si128(c2[7848],c2[2341]))));
|
|
|
|
//row: 22
|
|
d2[396]=simde_mm_xor_si128(c2[6340],simde_mm_xor_si128(c2[10739],simde_mm_xor_si128(c2[6808],c2[1420])));
|
|
|
|
//row: 23
|
|
d2[414]=simde_mm_xor_si128(c2[3215],simde_mm_xor_si128(c2[72],simde_mm_xor_si128(c2[360],c2[4618])));
|
|
|
|
//row: 24
|
|
d2[432]=simde_mm_xor_si128(c2[2389],simde_mm_xor_si128(c2[2387],simde_mm_xor_si128(c2[1600],simde_mm_xor_si128(c2[8723],simde_mm_xor_si128(c2[9518],simde_mm_xor_si128(c2[4800],simde_mm_xor_si128(c2[5590],simde_mm_xor_si128(c2[837],simde_mm_xor_si128(c2[9587],simde_mm_xor_si128(c2[1666],simde_mm_xor_si128(c2[9589],simde_mm_xor_si128(c2[8039],simde_mm_xor_si128(c2[12001],simde_mm_xor_si128(c2[4870],simde_mm_xor_si128(c2[5664],simde_mm_xor_si128(c2[160],simde_mm_xor_si128(c2[4112],simde_mm_xor_si128(c2[9654],simde_mm_xor_si128(c2[144],simde_mm_xor_si128(c2[8905],simde_mm_xor_si128(c2[190],simde_mm_xor_si128(c2[2571],simde_mm_xor_si128(c2[3384],simde_mm_xor_si128(c2[8148],simde_mm_xor_si128(c2[1805],simde_mm_xor_si128(c2[9760],simde_mm_xor_si128(c2[8185],simde_mm_xor_si128(c2[3428],simde_mm_xor_si128(c2[8220],simde_mm_xor_si128(c2[12171],simde_mm_xor_si128(c2[4260],simde_mm_xor_si128(c2[10621],simde_mm_xor_si128(c2[4291],simde_mm_xor_si128(c2[324],simde_mm_xor_si128(c2[369],simde_mm_xor_si128(c2[2736],simde_mm_xor_si128(c2[7490],simde_mm_xor_si128(c2[3571],simde_mm_xor_si128(c2[10698],simde_mm_xor_si128(c2[1990],simde_mm_xor_si128(c2[8332],simde_mm_xor_si128(c2[6781],simde_mm_xor_si128(c2[12312],simde_mm_xor_si128(c2[7563],simde_mm_xor_si128(c2[2851],simde_mm_xor_si128(c2[8392],simde_mm_xor_si128(c2[3638],simde_mm_xor_si128(c2[6844],simde_mm_xor_si128(c2[4478],simde_mm_xor_si128(c2[2887],simde_mm_xor_si128(c2[7682],simde_mm_xor_si128(c2[6885],simde_mm_xor_si128(c2[540],simde_mm_xor_si128(c2[585],simde_mm_xor_si128(c2[11673],simde_mm_xor_si128(c2[2175],simde_mm_xor_si128(c2[2997],simde_mm_xor_si128(c2[6961],simde_mm_xor_si128(c2[4582],simde_mm_xor_si128(c2[12533],simde_mm_xor_si128(c2[10960],simde_mm_xor_si128(c2[648],simde_mm_xor_si128(c2[7033],simde_mm_xor_si128(c2[10197],simde_mm_xor_si128(c2[7032],simde_mm_xor_si128(c2[7852],simde_mm_xor_si128(c2[8654],simde_mm_xor_si128(c2[1519],simde_mm_xor_si128(c2[4732],simde_mm_xor_si128(c2[6307],c2[10266]))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 25
|
|
d2[450]=simde_mm_xor_si128(c2[10344],simde_mm_xor_si128(c2[216],simde_mm_xor_si128(c2[252],c2[6059])));
|
|
|
|
//row: 26
|
|
d2[468]=simde_mm_xor_si128(c2[0],simde_mm_xor_si128(c2[72],simde_mm_xor_si128(c2[144],c2[4517])));
|
|
|
|
//row: 27
|
|
d2[486]=simde_mm_xor_si128(c2[10334],simde_mm_xor_si128(c2[3386],c2[6628]));
|
|
|
|
//row: 28
|
|
d2[504]=simde_mm_xor_si128(c2[2393],simde_mm_xor_si128(c2[144],simde_mm_xor_si128(c2[9405],c2[11847])));
|
|
|
|
//row: 29
|
|
d2[522]=simde_mm_xor_si128(c2[11103],simde_mm_xor_si128(c2[11101],simde_mm_xor_si128(c2[10296],simde_mm_xor_si128(c2[3974],simde_mm_xor_si128(c2[4766],simde_mm_xor_si128(c2[843],simde_mm_xor_si128(c2[1633],simde_mm_xor_si128(c2[8759],simde_mm_xor_si128(c2[9551],simde_mm_xor_si128(c2[36],simde_mm_xor_si128(c2[5630],simde_mm_xor_si128(c2[10380],simde_mm_xor_si128(c2[5632],simde_mm_xor_si128(c2[4082],simde_mm_xor_si128(c2[8044],simde_mm_xor_si128(c2[121],simde_mm_xor_si128(c2[913],simde_mm_xor_si128(c2[8856],simde_mm_xor_si128(c2[155],simde_mm_xor_si128(c2[4905],simde_mm_xor_si128(c2[5697],simde_mm_xor_si128(c2[4948],simde_mm_xor_si128(c2[8904],simde_mm_xor_si128(c2[11285],simde_mm_xor_si128(c2[12098],simde_mm_xor_si128(c2[4191],simde_mm_xor_si128(c2[9727],simde_mm_xor_si128(c2[10519],simde_mm_xor_si128(c2[5803],simde_mm_xor_si128(c2[4228],simde_mm_xor_si128(c2[11350],simde_mm_xor_si128(c2[12142],simde_mm_xor_si128(c2[4263],simde_mm_xor_si128(c2[8214],simde_mm_xor_si128(c2[12182],simde_mm_xor_si128(c2[303],simde_mm_xor_si128(c2[6664],simde_mm_xor_si128(c2[334],simde_mm_xor_si128(c2[9038],simde_mm_xor_si128(c2[9083],simde_mm_xor_si128(c2[11450],simde_mm_xor_si128(c2[2741],simde_mm_xor_si128(c2[3533],simde_mm_xor_si128(c2[12285],simde_mm_xor_si128(c2[6741],simde_mm_xor_si128(c2[9912],simde_mm_xor_si128(c2[10704],simde_mm_xor_si128(c2[2824],simde_mm_xor_si128(c2[8355],simde_mm_xor_si128(c2[2814],simde_mm_xor_si128(c2[3606],simde_mm_xor_si128(c2[11565],simde_mm_xor_si128(c2[4435],simde_mm_xor_si128(c2[11560],simde_mm_xor_si128(c2[12352],simde_mm_xor_si128(c2[2887],simde_mm_xor_si128(c2[521],simde_mm_xor_si128(c2[10809],simde_mm_xor_si128(c2[11601],simde_mm_xor_si128(c2[3683],simde_mm_xor_si128(c2[3725],simde_mm_xor_si128(c2[2928],simde_mm_xor_si128(c2[9254],simde_mm_xor_si128(c2[9299],simde_mm_xor_si128(c2[7716],simde_mm_xor_si128(c2[10097],simde_mm_xor_si128(c2[10889],simde_mm_xor_si128(c2[11711],simde_mm_xor_si128(c2[3004],simde_mm_xor_si128(c2[12504],simde_mm_xor_si128(c2[625],simde_mm_xor_si128(c2[8576],simde_mm_xor_si128(c2[6985],simde_mm_xor_si128(c2[8570],simde_mm_xor_si128(c2[9362],simde_mm_xor_si128(c2[648],simde_mm_xor_si128(c2[3076],simde_mm_xor_si128(c2[6240],simde_mm_xor_si128(c2[3075],simde_mm_xor_si128(c2[3895],simde_mm_xor_si128(c2[4697],simde_mm_xor_si128(c2[9441],simde_mm_xor_si128(c2[10233],simde_mm_xor_si128(c2[757],simde_mm_xor_si128(c2[2350],simde_mm_xor_si128(c2[5517],c2[6309]))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 30
|
|
d2[540]=simde_mm_xor_si128(c2[798],simde_mm_xor_si128(c2[796],simde_mm_xor_si128(c2[11888],simde_mm_xor_si128(c2[9],simde_mm_xor_si128(c2[6340],simde_mm_xor_si128(c2[7132],simde_mm_xor_si128(c2[0],simde_mm_xor_si128(c2[3209],simde_mm_xor_si128(c2[3207],simde_mm_xor_si128(c2[3999],simde_mm_xor_si128(c2[11125],simde_mm_xor_si128(c2[11917],simde_mm_xor_si128(c2[7996],simde_mm_xor_si128(c2[75],simde_mm_xor_si128(c2[7206],simde_mm_xor_si128(c2[7998],simde_mm_xor_si128(c2[6448],simde_mm_xor_si128(c2[10410],simde_mm_xor_si128(c2[2487],simde_mm_xor_si128(c2[3279],simde_mm_xor_si128(c2[11240],simde_mm_xor_si128(c2[1729],simde_mm_xor_si128(c2[2521],simde_mm_xor_si128(c2[7289],simde_mm_xor_si128(c2[8081],simde_mm_xor_si128(c2[7314],simde_mm_xor_si128(c2[11270],simde_mm_xor_si128(c2[188],simde_mm_xor_si128(c2[980],simde_mm_xor_si128(c2[1811],simde_mm_xor_si128(c2[5765],simde_mm_xor_si128(c2[6557],simde_mm_xor_si128(c2[12111],simde_mm_xor_si128(c2[232],simde_mm_xor_si128(c2[8187],simde_mm_xor_si128(c2[5802],simde_mm_xor_si128(c2[6594],simde_mm_xor_si128(c2[1045],simde_mm_xor_si128(c2[1837],simde_mm_xor_si128(c2[6629],simde_mm_xor_si128(c2[9806],simde_mm_xor_si128(c2[10598],simde_mm_xor_si128(c2[1877],simde_mm_xor_si128(c2[2669],simde_mm_xor_si128(c2[9048],simde_mm_xor_si128(c2[2700],simde_mm_xor_si128(c2[10630],simde_mm_xor_si128(c2[11422],simde_mm_xor_si128(c2[11449],simde_mm_xor_si128(c2[371],simde_mm_xor_si128(c2[1163],simde_mm_xor_si128(c2[5125],simde_mm_xor_si128(c2[5917],simde_mm_xor_si128(c2[8285],simde_mm_xor_si128(c2[1980],simde_mm_xor_si128(c2[9125],simde_mm_xor_si128(c2[12278],simde_mm_xor_si128(c2[399],simde_mm_xor_si128(c2[5190],simde_mm_xor_si128(c2[10739],simde_mm_xor_si128(c2[5198],simde_mm_xor_si128(c2[5990],simde_mm_xor_si128(c2[1260],simde_mm_xor_si128(c2[6027],simde_mm_xor_si128(c2[6819],simde_mm_xor_si128(c2[1273],simde_mm_xor_si128(c2[2065],simde_mm_xor_si128(c2[9987],simde_mm_xor_si128(c2[5271],simde_mm_xor_si128(c2[2095],simde_mm_xor_si128(c2[2887],simde_mm_xor_si128(c2[504],simde_mm_xor_si128(c2[1296],simde_mm_xor_si128(c2[6091],simde_mm_xor_si128(c2[5294],simde_mm_xor_si128(c2[10846],simde_mm_xor_si128(c2[11638],simde_mm_xor_si128(c2[11665],simde_mm_xor_si128(c2[10082],simde_mm_xor_si128(c2[12463],simde_mm_xor_si128(c2[584],simde_mm_xor_si128(c2[1406],simde_mm_xor_si128(c2[4578],simde_mm_xor_si128(c2[5370],simde_mm_xor_si128(c2[2199],simde_mm_xor_si128(c2[2991],simde_mm_xor_si128(c2[10960],simde_mm_xor_si128(c2[8577],simde_mm_xor_si128(c2[9369],simde_mm_xor_si128(c2[10954],simde_mm_xor_si128(c2[11746],simde_mm_xor_si128(c2[5442],simde_mm_xor_si128(c2[8606],simde_mm_xor_si128(c2[4649],simde_mm_xor_si128(c2[5441],simde_mm_xor_si128(c2[6279],simde_mm_xor_si128(c2[6271],simde_mm_xor_si128(c2[7063],simde_mm_xor_si128(c2[11825],simde_mm_xor_si128(c2[12617],simde_mm_xor_si128(c2[3141],simde_mm_xor_si128(c2[4716],simde_mm_xor_si128(c2[7901],c2[8693])))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 31
|
|
d2[558]=simde_mm_xor_si128(c2[7133],simde_mm_xor_si128(c2[5558],simde_mm_xor_si128(c2[7131],simde_mm_xor_si128(c2[5556],simde_mm_xor_si128(c2[6344],simde_mm_xor_si128(c2[4769],simde_mm_xor_si128(c2[796],simde_mm_xor_si128(c2[11100],simde_mm_xor_si128(c2[11892],simde_mm_xor_si128(c2[9544],simde_mm_xor_si128(c2[7969],simde_mm_xor_si128(c2[10334],simde_mm_xor_si128(c2[8759],simde_mm_xor_si128(c2[5581],simde_mm_xor_si128(c2[3214],simde_mm_xor_si128(c2[4006],simde_mm_xor_si128(c2[45],simde_mm_xor_si128(c2[1660],simde_mm_xor_si128(c2[85],simde_mm_xor_si128(c2[6410],simde_mm_xor_si128(c2[4835],simde_mm_xor_si128(c2[1662],simde_mm_xor_si128(c2[87],simde_mm_xor_si128(c2[112],simde_mm_xor_si128(c2[11208],simde_mm_xor_si128(c2[4074],simde_mm_xor_si128(c2[2499],simde_mm_xor_si128(c2[9614],simde_mm_xor_si128(c2[7247],simde_mm_xor_si128(c2[8039],simde_mm_xor_si128(c2[4904],simde_mm_xor_si128(c2[3329],simde_mm_xor_si128(c2[8856],simde_mm_xor_si128(c2[7281],simde_mm_xor_si128(c2[1745],simde_mm_xor_si128(c2[12031],simde_mm_xor_si128(c2[152],simde_mm_xor_si128(c2[978],simde_mm_xor_si128(c2[12074],simde_mm_xor_si128(c2[4934],simde_mm_xor_si128(c2[3359],simde_mm_xor_si128(c2[7315],simde_mm_xor_si128(c2[5740],simde_mm_xor_si128(c2[8146],simde_mm_xor_si128(c2[6553],simde_mm_xor_si128(c2[221],simde_mm_xor_si128(c2[11317],simde_mm_xor_si128(c2[6567],simde_mm_xor_si128(c2[4182],simde_mm_xor_si128(c2[4974],simde_mm_xor_si128(c2[1851],simde_mm_xor_si128(c2[258],simde_mm_xor_si128(c2[258],simde_mm_xor_si128(c2[11354],simde_mm_xor_si128(c2[8172],simde_mm_xor_si128(c2[5805],simde_mm_xor_si128(c2[6597],simde_mm_xor_si128(c2[261],simde_mm_xor_si128(c2[293],simde_mm_xor_si128(c2[11389],simde_mm_xor_si128(c2[4262],simde_mm_xor_si128(c2[2669],simde_mm_xor_si128(c2[9004],simde_mm_xor_si128(c2[6637],simde_mm_xor_si128(c2[7429],simde_mm_xor_si128(c2[2712],simde_mm_xor_si128(c2[1119],simde_mm_xor_si128(c2[9053],simde_mm_xor_si128(c2[7460],simde_mm_xor_si128(c2[5086],simde_mm_xor_si128(c2[3493],simde_mm_xor_si128(c2[5113],simde_mm_xor_si128(c2[3538],simde_mm_xor_si128(c2[7498],simde_mm_xor_si128(c2[5905],simde_mm_xor_si128(c2[12252],simde_mm_xor_si128(c2[9867],simde_mm_xor_si128(c2[10659],simde_mm_xor_si128(c2[8333],simde_mm_xor_si128(c2[6740],simde_mm_xor_si128(c2[2789],simde_mm_xor_si128(c2[1196],simde_mm_xor_si128(c2[6734],simde_mm_xor_si128(c2[4367],simde_mm_xor_si128(c2[5159],simde_mm_xor_si128(c2[11525],simde_mm_xor_si128(c2[9950],simde_mm_xor_si128(c2[4403],simde_mm_xor_si128(c2[2810],simde_mm_xor_si128(c2[12325],simde_mm_xor_si128(c2[9940],simde_mm_xor_si128(c2[10732],simde_mm_xor_si128(c2[7613],simde_mm_xor_si128(c2[6020],simde_mm_xor_si128(c2[483],simde_mm_xor_si128(c2[11561],simde_mm_xor_si128(c2[8400],simde_mm_xor_si128(c2[6015],simde_mm_xor_si128(c2[6807],simde_mm_xor_si128(c2[11606],simde_mm_xor_si128(c2[10013],simde_mm_xor_si128(c2[9222],simde_mm_xor_si128(c2[7647],simde_mm_xor_si128(c2[7649],simde_mm_xor_si128(c2[5264],simde_mm_xor_si128(c2[6056],simde_mm_xor_si128(c2[12426],simde_mm_xor_si128(c2[10851],simde_mm_xor_si128(c2[11629],simde_mm_xor_si128(c2[10054],simde_mm_xor_si128(c2[5302],simde_mm_xor_si128(c2[3709],simde_mm_xor_si128(c2[5329],simde_mm_xor_si128(c2[3754],simde_mm_xor_si128(c2[3746],simde_mm_xor_si128(c2[2171],simde_mm_xor_si128(c2[6919],simde_mm_xor_si128(c2[4552],simde_mm_xor_si128(c2[5344],simde_mm_xor_si128(c2[7741],simde_mm_xor_si128(c2[6166],simde_mm_xor_si128(c2[11705],simde_mm_xor_si128(c2[10130],simde_mm_xor_si128(c2[9326],simde_mm_xor_si128(c2[6959],simde_mm_xor_si128(c2[7751],simde_mm_xor_si128(c2[4624],simde_mm_xor_si128(c2[3031],simde_mm_xor_si128(c2[3033],simde_mm_xor_si128(c2[1440],simde_mm_xor_si128(c2[5410],simde_mm_xor_si128(c2[3025],simde_mm_xor_si128(c2[3817],simde_mm_xor_si128(c2[11777],simde_mm_xor_si128(c2[10202],simde_mm_xor_si128(c2[2270],simde_mm_xor_si128(c2[695],simde_mm_xor_si128(c2[11776],simde_mm_xor_si128(c2[10201],simde_mm_xor_si128(c2[12614],simde_mm_xor_si128(c2[11021],simde_mm_xor_si128(c2[727],simde_mm_xor_si128(c2[11823],simde_mm_xor_si128(c2[6281],simde_mm_xor_si128(c2[3896],simde_mm_xor_si128(c2[4688],simde_mm_xor_si128(c2[9476],simde_mm_xor_si128(c2[7901],simde_mm_xor_si128(c2[11069],simde_mm_xor_si128(c2[9476],simde_mm_xor_si128(c2[2357],simde_mm_xor_si128(c2[12643],c2[764]))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 32
|
|
d2[576]=simde_mm_xor_si128(c2[4757],simde_mm_xor_si128(c2[4755],simde_mm_xor_si128(c2[3176],simde_mm_xor_si128(c2[3968],simde_mm_xor_si128(c2[10299],simde_mm_xor_si128(c2[11091],simde_mm_xor_si128(c2[0],simde_mm_xor_si128(c2[7168],simde_mm_xor_si128(c2[7166],simde_mm_xor_si128(c2[7958],simde_mm_xor_si128(c2[2413],simde_mm_xor_si128(c2[3205],simde_mm_xor_si128(c2[11955],simde_mm_xor_si128(c2[4034],simde_mm_xor_si128(c2[11165],simde_mm_xor_si128(c2[11957],simde_mm_xor_si128(c2[10407],simde_mm_xor_si128(c2[1698],simde_mm_xor_si128(c2[6446],simde_mm_xor_si128(c2[7238],simde_mm_xor_si128(c2[2528],simde_mm_xor_si128(c2[5688],simde_mm_xor_si128(c2[6480],simde_mm_xor_si128(c2[11248],simde_mm_xor_si128(c2[12040],simde_mm_xor_si128(c2[11273],simde_mm_xor_si128(c2[2558],simde_mm_xor_si128(c2[4147],simde_mm_xor_si128(c2[4939],simde_mm_xor_si128(c2[5770],simde_mm_xor_si128(c2[9724],simde_mm_xor_si128(c2[10516],simde_mm_xor_si128(c2[3399],simde_mm_xor_si128(c2[4191],simde_mm_xor_si128(c2[12146],simde_mm_xor_si128(c2[9761],simde_mm_xor_si128(c2[10553],simde_mm_xor_si128(c2[5004],simde_mm_xor_si128(c2[5796],simde_mm_xor_si128(c2[10588],simde_mm_xor_si128(c2[1094],simde_mm_xor_si128(c2[1886],simde_mm_xor_si128(c2[5836],simde_mm_xor_si128(c2[6628],simde_mm_xor_si128(c2[336],simde_mm_xor_si128(c2[6677],simde_mm_xor_si128(c2[1918],simde_mm_xor_si128(c2[2710],simde_mm_xor_si128(c2[2737],simde_mm_xor_si128(c2[4330],simde_mm_xor_si128(c2[5122],simde_mm_xor_si128(c2[9084],simde_mm_xor_si128(c2[9876],simde_mm_xor_si128(c2[5957],simde_mm_xor_si128(c2[413],simde_mm_xor_si128(c2[3566],simde_mm_xor_si128(c2[4358],simde_mm_xor_si128(c2[9149],simde_mm_xor_si128(c2[2027],simde_mm_xor_si128(c2[9157],simde_mm_xor_si128(c2[9949],simde_mm_xor_si128(c2[2821],simde_mm_xor_si128(c2[5237],simde_mm_xor_si128(c2[9986],simde_mm_xor_si128(c2[10778],simde_mm_xor_si128(c2[5232],simde_mm_xor_si128(c2[6024],simde_mm_xor_si128(c2[9230],simde_mm_xor_si128(c2[6054],simde_mm_xor_si128(c2[6846],simde_mm_xor_si128(c2[4481],simde_mm_xor_si128(c2[5273],simde_mm_xor_si128(c2[3674],simde_mm_xor_si128(c2[10050],simde_mm_xor_si128(c2[9253],simde_mm_xor_si128(c2[2134],simde_mm_xor_si128(c2[2926],simde_mm_xor_si128(c2[2953],simde_mm_xor_si128(c2[1370],simde_mm_xor_si128(c2[3751],simde_mm_xor_si128(c2[4543],simde_mm_xor_si128(c2[5365],simde_mm_xor_si128(c2[8537],simde_mm_xor_si128(c2[9329],simde_mm_xor_si128(c2[6158],simde_mm_xor_si128(c2[6950],simde_mm_xor_si128(c2[2248],simde_mm_xor_si128(c2[12536],simde_mm_xor_si128(c2[657],simde_mm_xor_si128(c2[2242],simde_mm_xor_si128(c2[3034],simde_mm_xor_si128(c2[9401],simde_mm_xor_si128(c2[12565],simde_mm_xor_si128(c2[8608],simde_mm_xor_si128(c2[9400],simde_mm_xor_si128(c2[10238],simde_mm_xor_si128(c2[10230],simde_mm_xor_si128(c2[11022],simde_mm_xor_si128(c2[3113],simde_mm_xor_si128(c2[3905],simde_mm_xor_si128(c2[7100],simde_mm_xor_si128(c2[8693],simde_mm_xor_si128(c2[11860],c2[12652])))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 33
|
|
d2[594]=simde_mm_xor_si128(c2[36],simde_mm_xor_si128(c2[72],simde_mm_xor_si128(c2[9904],c2[2341])));
|
|
|
|
//row: 34
|
|
d2[612]=simde_mm_xor_si128(c2[3972],simde_mm_xor_si128(c2[252],simde_mm_xor_si128(c2[10050],c2[612])));
|
|
|
|
//row: 35
|
|
d2[630]=simde_mm_xor_si128(c2[8],simde_mm_xor_si128(c2[6],simde_mm_xor_si128(c2[11890],simde_mm_xor_si128(c2[6342],simde_mm_xor_si128(c2[2419],simde_mm_xor_si128(c2[3209],simde_mm_xor_si128(c2[11127],simde_mm_xor_si128(c2[5592],simde_mm_xor_si128(c2[7206],simde_mm_xor_si128(c2[11956],simde_mm_xor_si128(c2[7208],simde_mm_xor_si128(c2[5658],simde_mm_xor_si128(c2[9620],simde_mm_xor_si128(c2[2489],simde_mm_xor_si128(c2[10450],simde_mm_xor_si128(c2[1731],simde_mm_xor_si128(c2[7273],simde_mm_xor_si128(c2[6524],simde_mm_xor_si128(c2[10480],simde_mm_xor_si128(c2[190],simde_mm_xor_si128(c2[1021],simde_mm_xor_si128(c2[5767],simde_mm_xor_si128(c2[12113],simde_mm_xor_si128(c2[4985],simde_mm_xor_si128(c2[7397],simde_mm_xor_si128(c2[5804],simde_mm_xor_si128(c2[1047],simde_mm_xor_si128(c2[5839],simde_mm_xor_si128(c2[9808],simde_mm_xor_si128(c2[1879],simde_mm_xor_si128(c2[8258],simde_mm_xor_si128(c2[1910],simde_mm_xor_si128(c2[10632],simde_mm_xor_si128(c2[10659],simde_mm_xor_si128(c2[373],simde_mm_xor_si128(c2[5127],simde_mm_xor_si128(c2[1190],simde_mm_xor_si128(c2[8317],simde_mm_xor_si128(c2[12280],simde_mm_xor_si128(c2[4400],simde_mm_xor_si128(c2[9949],simde_mm_xor_si128(c2[5200],simde_mm_xor_si128(c2[432],simde_mm_xor_si128(c2[470],simde_mm_xor_si128(c2[6029],simde_mm_xor_si128(c2[1275],simde_mm_xor_si128(c2[4481],simde_mm_xor_si128(c2[2097],simde_mm_xor_si128(c2[506],simde_mm_xor_si128(c2[5301],simde_mm_xor_si128(c2[4504],simde_mm_xor_si128(c2[10848],simde_mm_xor_si128(c2[10875],simde_mm_xor_si128(c2[9292],simde_mm_xor_si128(c2[12465],simde_mm_xor_si128(c2[616],simde_mm_xor_si128(c2[4580],simde_mm_xor_si128(c2[2201],simde_mm_xor_si128(c2[10152],simde_mm_xor_si128(c2[8579],simde_mm_xor_si128(c2[10956],simde_mm_xor_si128(c2[4652],simde_mm_xor_si128(c2[7816],simde_mm_xor_si128(c2[4651],simde_mm_xor_si128(c2[5489],simde_mm_xor_si128(c2[6273],simde_mm_xor_si128(c2[11809],simde_mm_xor_si128(c2[2351],simde_mm_xor_si128(c2[3926],c2[7885])))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 36
|
|
d2[648]=simde_mm_xor_si128(c2[6349],simde_mm_xor_si128(c2[505],simde_mm_xor_si128(c2[540],c2[648])));
|
|
|
|
//row: 37
|
|
d2[666]=simde_mm_xor_si128(c2[2389],simde_mm_xor_si128(c2[3181],simde_mm_xor_si128(c2[3179],simde_mm_xor_si128(c2[2392],simde_mm_xor_si128(c2[9515],simde_mm_xor_si128(c2[4800],simde_mm_xor_si128(c2[5592],simde_mm_xor_si128(c2[6382],simde_mm_xor_si128(c2[1629],simde_mm_xor_si128(c2[6376],simde_mm_xor_si128(c2[9587],simde_mm_xor_si128(c2[10379],simde_mm_xor_si128(c2[2458],simde_mm_xor_si128(c2[10381],simde_mm_xor_si128(c2[8039],simde_mm_xor_si128(c2[8831],simde_mm_xor_si128(c2[122],simde_mm_xor_si128(c2[5662],simde_mm_xor_si128(c2[952],simde_mm_xor_si128(c2[4904],simde_mm_xor_si128(c2[10446],simde_mm_xor_si128(c2[8905],simde_mm_xor_si128(c2[9697],simde_mm_xor_si128(c2[982],simde_mm_xor_si128(c2[3363],simde_mm_xor_si128(c2[3384],simde_mm_xor_si128(c2[4176],simde_mm_xor_si128(c2[8940],simde_mm_xor_si128(c2[2597],simde_mm_xor_si128(c2[10552],simde_mm_xor_si128(c2[8977],simde_mm_xor_si128(c2[4220],simde_mm_xor_si128(c2[9012],simde_mm_xor_si128(c2[292],simde_mm_xor_si128(c2[5052],simde_mm_xor_si128(c2[10621],simde_mm_xor_si128(c2[11413],simde_mm_xor_si128(c2[5083],simde_mm_xor_si128(c2[1116],simde_mm_xor_si128(c2[369],simde_mm_xor_si128(c2[1161],simde_mm_xor_si128(c2[3528],simde_mm_xor_si128(c2[8282],simde_mm_xor_si128(c2[3571],simde_mm_xor_si128(c2[4363],simde_mm_xor_si128(c2[11490],simde_mm_xor_si128(c2[2782],simde_mm_xor_si128(c2[6781],simde_mm_xor_si128(c2[7573],simde_mm_xor_si128(c2[433],simde_mm_xor_si128(c2[8355],simde_mm_xor_si128(c2[2851],simde_mm_xor_si128(c2[3643],simde_mm_xor_si128(c2[9184],simde_mm_xor_si128(c2[4430],simde_mm_xor_si128(c2[477],simde_mm_xor_si128(c2[7636],simde_mm_xor_si128(c2[5270],simde_mm_xor_si128(c2[3679],simde_mm_xor_si128(c2[7682],simde_mm_xor_si128(c2[8474],simde_mm_xor_si128(c2[7677],simde_mm_xor_si128(c2[1332],simde_mm_xor_si128(c2[585],simde_mm_xor_si128(c2[1377],simde_mm_xor_si128(c2[12465],simde_mm_xor_si128(c2[2967],simde_mm_xor_si128(c2[3789],simde_mm_xor_si128(c2[7753],simde_mm_xor_si128(c2[5374],simde_mm_xor_si128(c2[12533],simde_mm_xor_si128(c2[654],simde_mm_xor_si128(c2[11752],simde_mm_xor_si128(c2[1440],simde_mm_xor_si128(c2[7033],simde_mm_xor_si128(c2[7825],simde_mm_xor_si128(c2[10989],simde_mm_xor_si128(c2[7824],simde_mm_xor_si128(c2[7852],simde_mm_xor_si128(c2[8644],simde_mm_xor_si128(c2[9446],simde_mm_xor_si128(c2[2311],simde_mm_xor_si128(c2[4732],simde_mm_xor_si128(c2[5524],simde_mm_xor_si128(c2[7099],c2[11058])))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 38
|
|
d2[684]=simde_mm_xor_si128(c2[11099],simde_mm_xor_si128(c2[324],simde_mm_xor_si128(c2[360],c2[432])));
|
|
|
|
//row: 39
|
|
d2[702]=simde_mm_xor_si128(c2[7173],simde_mm_xor_si128(c2[108],simde_mm_xor_si128(c2[4222],c2[4651])));
|
|
|
|
//row: 40
|
|
d2[720]=simde_mm_xor_si128(c2[6349],simde_mm_xor_si128(c2[297],c2[2196]));
|
|
|
|
//row: 41
|
|
d2[738]=simde_mm_xor_si128(c2[36],simde_mm_xor_si128(c2[108],simde_mm_xor_si128(c2[324],c2[6203])));
|
|
|
|
//row: 42
|
|
d2[756]=simde_mm_xor_si128(c2[5559],simde_mm_xor_si128(c2[5557],simde_mm_xor_si128(c2[3960],simde_mm_xor_si128(c2[4752],simde_mm_xor_si128(c2[11101],simde_mm_xor_si128(c2[11893],simde_mm_xor_si128(c2[8713],simde_mm_xor_si128(c2[7970],simde_mm_xor_si128(c2[7968],simde_mm_xor_si128(c2[8760],simde_mm_xor_si128(c2[3215],simde_mm_xor_si128(c2[4007],simde_mm_xor_si128(c2[86],simde_mm_xor_si128(c2[4836],simde_mm_xor_si128(c2[11967],simde_mm_xor_si128(c2[88],simde_mm_xor_si128(c2[11209],simde_mm_xor_si128(c2[2500],simde_mm_xor_si128(c2[7248],simde_mm_xor_si128(c2[8040],simde_mm_xor_si128(c2[3312],simde_mm_xor_si128(c2[6490],simde_mm_xor_si128(c2[7282],simde_mm_xor_si128(c2[12032],simde_mm_xor_si128(c2[153],simde_mm_xor_si128(c2[144],simde_mm_xor_si128(c2[12075],simde_mm_xor_si128(c2[3360],simde_mm_xor_si128(c2[4949],simde_mm_xor_si128(c2[5741],simde_mm_xor_si128(c2[6554],simde_mm_xor_si128(c2[10526],simde_mm_xor_si128(c2[11318],simde_mm_xor_si128(c2[4183],simde_mm_xor_si128(c2[4975],simde_mm_xor_si128(c2[259],simde_mm_xor_si128(c2[10563],simde_mm_xor_si128(c2[11355],simde_mm_xor_si128(c2[5806],simde_mm_xor_si128(c2[6598],simde_mm_xor_si128(c2[11390],simde_mm_xor_si128(c2[1878],simde_mm_xor_si128(c2[2670],simde_mm_xor_si128(c2[6638],simde_mm_xor_si128(c2[7430],simde_mm_xor_si128(c2[1120],simde_mm_xor_si128(c2[7461],simde_mm_xor_si128(c2[2702],simde_mm_xor_si128(c2[3494],simde_mm_xor_si128(c2[3539],simde_mm_xor_si128(c2[5114],simde_mm_xor_si128(c2[5906],simde_mm_xor_si128(c2[9868],simde_mm_xor_si128(c2[10660],simde_mm_xor_si128(c2[6741],simde_mm_xor_si128(c2[1197],simde_mm_xor_si128(c2[4368],simde_mm_xor_si128(c2[5160],simde_mm_xor_si128(c2[9951],simde_mm_xor_si128(c2[2811],simde_mm_xor_si128(c2[9941],simde_mm_xor_si128(c2[10733],simde_mm_xor_si128(c2[6021],simde_mm_xor_si128(c2[10770],simde_mm_xor_si128(c2[11562],simde_mm_xor_si128(c2[6016],simde_mm_xor_si128(c2[6808],simde_mm_xor_si128(c2[10014],simde_mm_xor_si128(c2[6856],simde_mm_xor_si128(c2[7648],simde_mm_xor_si128(c2[5265],simde_mm_xor_si128(c2[6057],simde_mm_xor_si128(c2[10852],simde_mm_xor_si128(c2[10055],simde_mm_xor_si128(c2[2918],simde_mm_xor_si128(c2[3710],simde_mm_xor_si128(c2[3755],simde_mm_xor_si128(c2[2172],simde_mm_xor_si128(c2[4553],simde_mm_xor_si128(c2[5345],simde_mm_xor_si128(c2[6167],simde_mm_xor_si128(c2[9339],simde_mm_xor_si128(c2[10131],simde_mm_xor_si128(c2[6960],simde_mm_xor_si128(c2[7752],simde_mm_xor_si128(c2[3032],simde_mm_xor_si128(c2[649],simde_mm_xor_si128(c2[1441],simde_mm_xor_si128(c2[3026],simde_mm_xor_si128(c2[3818],simde_mm_xor_si128(c2[10203],simde_mm_xor_si128(c2[696],simde_mm_xor_si128(c2[9410],simde_mm_xor_si128(c2[10202],simde_mm_xor_si128(c2[11022],simde_mm_xor_si128(c2[11032],simde_mm_xor_si128(c2[11824],simde_mm_xor_si128(c2[3897],simde_mm_xor_si128(c2[4689],simde_mm_xor_si128(c2[7884],simde_mm_xor_si128(c2[9477],simde_mm_xor_si128(c2[12644],c2[765]))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 43
|
|
d2[774]=simde_mm_xor_si128(c2[1596],simde_mm_xor_si128(c2[1594],simde_mm_xor_si128(c2[807],simde_mm_xor_si128(c2[7138],simde_mm_xor_si128(c2[7930],simde_mm_xor_si128(c2[4007],simde_mm_xor_si128(c2[4797],simde_mm_xor_si128(c2[11923],simde_mm_xor_si128(c2[44],simde_mm_xor_si128(c2[3207],simde_mm_xor_si128(c2[8794],simde_mm_xor_si128(c2[873],simde_mm_xor_si128(c2[8796],simde_mm_xor_si128(c2[7246],simde_mm_xor_si128(c2[11208],simde_mm_xor_si128(c2[3285],simde_mm_xor_si128(c2[4077],simde_mm_xor_si128(c2[12038],simde_mm_xor_si128(c2[3319],simde_mm_xor_si128(c2[8069],simde_mm_xor_si128(c2[8861],simde_mm_xor_si128(c2[8112],simde_mm_xor_si128(c2[12068],simde_mm_xor_si128(c2[1778],simde_mm_xor_si128(c2[2609],simde_mm_xor_si128(c2[7355],simde_mm_xor_si128(c2[220],simde_mm_xor_si128(c2[1012],simde_mm_xor_si128(c2[8967],simde_mm_xor_si128(c2[7392],simde_mm_xor_si128(c2[1843],simde_mm_xor_si128(c2[2635],simde_mm_xor_si128(c2[7427],simde_mm_xor_si128(c2[11378],simde_mm_xor_si128(c2[2675],simde_mm_xor_si128(c2[3467],simde_mm_xor_si128(c2[9828],simde_mm_xor_si128(c2[3498],simde_mm_xor_si128(c2[12220],simde_mm_xor_si128(c2[12247],simde_mm_xor_si128(c2[1961],simde_mm_xor_si128(c2[5905],simde_mm_xor_si128(c2[6697],simde_mm_xor_si128(c2[2778],simde_mm_xor_si128(c2[9905],simde_mm_xor_si128(c2[405],simde_mm_xor_si128(c2[1197],simde_mm_xor_si128(c2[5988],simde_mm_xor_si128(c2[11537],simde_mm_xor_si128(c2[5978],simde_mm_xor_si128(c2[6770],simde_mm_xor_si128(c2[2058],simde_mm_xor_si128(c2[7599],simde_mm_xor_si128(c2[2053],simde_mm_xor_si128(c2[2845],simde_mm_xor_si128(c2[6051],simde_mm_xor_si128(c2[3685],simde_mm_xor_si128(c2[1302],simde_mm_xor_si128(c2[2094],simde_mm_xor_si128(c2[6889],simde_mm_xor_si128(c2[6092],simde_mm_xor_si128(c2[12436],simde_mm_xor_si128(c2[12463],simde_mm_xor_si128(c2[10880],simde_mm_xor_si128(c2[590],simde_mm_xor_si128(c2[1382],simde_mm_xor_si128(c2[2967],simde_mm_xor_si128(c2[2204],simde_mm_xor_si128(c2[6168],simde_mm_xor_si128(c2[2997],simde_mm_xor_si128(c2[3789],simde_mm_xor_si128(c2[11740],simde_mm_xor_si128(c2[10167],simde_mm_xor_si128(c2[11752],simde_mm_xor_si128(c2[12544],simde_mm_xor_si128(c2[648],simde_mm_xor_si128(c2[6240],simde_mm_xor_si128(c2[9404],simde_mm_xor_si128(c2[6239],simde_mm_xor_si128(c2[7059],simde_mm_xor_si128(c2[7861],simde_mm_xor_si128(c2[12605],simde_mm_xor_si128(c2[726],simde_mm_xor_si128(c2[3939],simde_mm_xor_si128(c2[5514],simde_mm_xor_si128(c2[8681],c2[9473]))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 44
|
|
d2[792]=simde_mm_xor_si128(c2[9520],simde_mm_xor_si128(c2[9518],simde_mm_xor_si128(c2[8713],simde_mm_xor_si128(c2[3183],simde_mm_xor_si128(c2[1585],simde_mm_xor_si128(c2[11931],simde_mm_xor_si128(c2[50],simde_mm_xor_si128(c2[7968],simde_mm_xor_si128(c2[4047],simde_mm_xor_si128(c2[8797],simde_mm_xor_si128(c2[4049],simde_mm_xor_si128(c2[2499],simde_mm_xor_si128(c2[6461],simde_mm_xor_si128(c2[12001],simde_mm_xor_si128(c2[7273],simde_mm_xor_si128(c2[11243],simde_mm_xor_si128(c2[4114],simde_mm_xor_si128(c2[3365],simde_mm_xor_si128(c2[7321],simde_mm_xor_si128(c2[9684],simde_mm_xor_si128(c2[10515],simde_mm_xor_si128(c2[2608],simde_mm_xor_si128(c2[8936],simde_mm_xor_si128(c2[4220],simde_mm_xor_si128(c2[2645],simde_mm_xor_si128(c2[10559],simde_mm_xor_si128(c2[252],simde_mm_xor_si128(c2[2680],simde_mm_xor_si128(c2[6631],simde_mm_xor_si128(c2[11391],simde_mm_xor_si128(c2[5081],simde_mm_xor_si128(c2[11422],simde_mm_xor_si128(c2[7455],simde_mm_xor_si128(c2[324],simde_mm_xor_si128(c2[7500],simde_mm_xor_si128(c2[9867],simde_mm_xor_si128(c2[1950],simde_mm_xor_si128(c2[10702],simde_mm_xor_si128(c2[5158],simde_mm_xor_si128(c2[9121],simde_mm_xor_si128(c2[1241],simde_mm_xor_si128(c2[6772],simde_mm_xor_si128(c2[2023],simde_mm_xor_si128(c2[9982],simde_mm_xor_si128(c2[2852],simde_mm_xor_si128(c2[10769],simde_mm_xor_si128(c2[1304],simde_mm_xor_si128(c2[11609],simde_mm_xor_si128(c2[10018],simde_mm_xor_si128(c2[2124],simde_mm_xor_si128(c2[1345],simde_mm_xor_si128(c2[7671],simde_mm_xor_si128(c2[7716],simde_mm_xor_si128(c2[6133],simde_mm_xor_si128(c2[9288],simde_mm_xor_si128(c2[10128],simde_mm_xor_si128(c2[1421],simde_mm_xor_si128(c2[11713],simde_mm_xor_si128(c2[6993],simde_mm_xor_si128(c2[5402],simde_mm_xor_si128(c2[7779],simde_mm_xor_si128(c2[1493],simde_mm_xor_si128(c2[4657],simde_mm_xor_si128(c2[1492],simde_mm_xor_si128(c2[2312],simde_mm_xor_si128(c2[3096],simde_mm_xor_si128(c2[8650],simde_mm_xor_si128(c2[11845],simde_mm_xor_si128(c2[767],c2[4726])))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 45
|
|
d2[810]=simde_mm_xor_si128(c2[6382],simde_mm_xor_si128(c2[216],c2[369]));
|
|
}
|
|
}
|
|
#endif
|