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=240, byte encoding
|
|
static inline void ldpc240_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<15; i2++) {
|
|
c2=&csimd[i2];
|
|
d2=&dsimd[i2];
|
|
|
|
//row: 0
|
|
d2[0]=simde_mm_xor_si128(c2[4628],simde_mm_xor_si128(c2[6],simde_mm_xor_si128(c2[8591],simde_mm_xor_si128(c2[8],simde_mm_xor_si128(c2[2024],simde_mm_xor_si128(c2[2670],simde_mm_xor_si128(c2[4651],simde_mm_xor_si128(c2[9307],simde_mm_xor_si128(c2[7994],simde_mm_xor_si128(c2[734],simde_mm_xor_si128(c2[4058],simde_mm_xor_si128(c2[5378],simde_mm_xor_si128(c2[1420],simde_mm_xor_si128(c2[8713],simde_mm_xor_si128(c2[4749],simde_mm_xor_si128(c2[8053],simde_mm_xor_si128(c2[2795],simde_mm_xor_si128(c2[158],simde_mm_xor_si128(c2[8084],simde_mm_xor_si128(c2[2165],simde_mm_xor_si128(c2[3487],simde_mm_xor_si128(c2[7442],simde_mm_xor_si128(c2[8135],simde_mm_xor_si128(c2[2201],simde_mm_xor_si128(c2[6821],simde_mm_xor_si128(c2[8170],simde_mm_xor_si128(c2[8165],simde_mm_xor_si128(c2[246],simde_mm_xor_si128(c2[3573],simde_mm_xor_si128(c2[5553],simde_mm_xor_si128(c2[5551],simde_mm_xor_si128(c2[974],simde_mm_xor_si128(c2[2944],simde_mm_xor_si128(c2[960],simde_mm_xor_si128(c2[8922],simde_mm_xor_si128(c2[7590],simde_mm_xor_si128(c2[5623],simde_mm_xor_si128(c2[368],simde_mm_xor_si128(c2[8951],simde_mm_xor_si128(c2[4321],simde_mm_xor_si128(c2[7654],simde_mm_xor_si128(c2[4350],simde_mm_xor_si128(c2[5671],simde_mm_xor_si128(c2[10325],simde_mm_xor_si128(c2[3726],simde_mm_xor_si128(c2[5050],simde_mm_xor_si128(c2[5078],simde_mm_xor_si128(c2[3755],simde_mm_xor_si128(c2[1112],simde_mm_xor_si128(c2[6433],simde_mm_xor_si128(c2[6429],simde_mm_xor_si128(c2[5772],simde_mm_xor_si128(c2[5135],simde_mm_xor_si128(c2[516],simde_mm_xor_si128(c2[512],simde_mm_xor_si128(c2[8473],simde_mm_xor_si128(c2[9127],simde_mm_xor_si128(c2[7814],simde_mm_xor_si128(c2[7175],simde_mm_xor_si128(c2[2560],simde_mm_xor_si128(c2[2554],simde_mm_xor_si128(c2[6546],simde_mm_xor_si128(c2[4574],simde_mm_xor_si128(c2[8530],simde_mm_xor_si128(c2[6578],simde_mm_xor_si128(c2[5923],c2[7903]))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 1
|
|
d2[15]=simde_mm_xor_si128(c2[4628],simde_mm_xor_si128(c2[5288],simde_mm_xor_si128(c2[666],simde_mm_xor_si128(c2[9251],simde_mm_xor_si128(c2[668],simde_mm_xor_si128(c2[2024],simde_mm_xor_si128(c2[2684],simde_mm_xor_si128(c2[3330],simde_mm_xor_si128(c2[5311],simde_mm_xor_si128(c2[9307],simde_mm_xor_si128(c2[9967],simde_mm_xor_si128(c2[8654],simde_mm_xor_si128(c2[1394],simde_mm_xor_si128(c2[4058],simde_mm_xor_si128(c2[4718],simde_mm_xor_si128(c2[6038],simde_mm_xor_si128(c2[2080],simde_mm_xor_si128(c2[9373],simde_mm_xor_si128(c2[5409],simde_mm_xor_si128(c2[8713],simde_mm_xor_si128(c2[2795],simde_mm_xor_si128(c2[3455],simde_mm_xor_si128(c2[818],simde_mm_xor_si128(c2[8744],simde_mm_xor_si128(c2[2165],simde_mm_xor_si128(c2[2825],simde_mm_xor_si128(c2[4147],simde_mm_xor_si128(c2[8102],simde_mm_xor_si128(c2[8795],simde_mm_xor_si128(c2[2861],simde_mm_xor_si128(c2[7481],simde_mm_xor_si128(c2[8830],simde_mm_xor_si128(c2[8825],simde_mm_xor_si128(c2[906],simde_mm_xor_si128(c2[3573],simde_mm_xor_si128(c2[4233],simde_mm_xor_si128(c2[6213],simde_mm_xor_si128(c2[6211],simde_mm_xor_si128(c2[974],simde_mm_xor_si128(c2[1634],simde_mm_xor_si128(c2[3604],simde_mm_xor_si128(c2[1620],simde_mm_xor_si128(c2[8922],simde_mm_xor_si128(c2[9582],simde_mm_xor_si128(c2[8250],simde_mm_xor_si128(c2[6283],simde_mm_xor_si128(c2[368],simde_mm_xor_si128(c2[1028],simde_mm_xor_si128(c2[9611],simde_mm_xor_si128(c2[4981],simde_mm_xor_si128(c2[7654],simde_mm_xor_si128(c2[8314],simde_mm_xor_si128(c2[5010],simde_mm_xor_si128(c2[6331],simde_mm_xor_si128(c2[426],simde_mm_xor_si128(c2[4386],simde_mm_xor_si128(c2[5710],simde_mm_xor_si128(c2[5078],simde_mm_xor_si128(c2[5738],simde_mm_xor_si128(c2[4415],simde_mm_xor_si128(c2[1772],simde_mm_xor_si128(c2[6433],simde_mm_xor_si128(c2[7093],simde_mm_xor_si128(c2[7089],simde_mm_xor_si128(c2[6432],simde_mm_xor_si128(c2[5795],simde_mm_xor_si128(c2[1176],simde_mm_xor_si128(c2[1172],simde_mm_xor_si128(c2[8473],simde_mm_xor_si128(c2[9133],simde_mm_xor_si128(c2[9787],simde_mm_xor_si128(c2[8474],simde_mm_xor_si128(c2[7175],simde_mm_xor_si128(c2[7835],simde_mm_xor_si128(c2[3220],simde_mm_xor_si128(c2[3214],simde_mm_xor_si128(c2[6546],simde_mm_xor_si128(c2[7206],simde_mm_xor_si128(c2[5234],simde_mm_xor_si128(c2[9190],simde_mm_xor_si128(c2[6578],simde_mm_xor_si128(c2[7238],simde_mm_xor_si128(c2[6583],c2[8563])))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 2
|
|
d2[30]=simde_mm_xor_si128(c2[5288],simde_mm_xor_si128(c2[666],simde_mm_xor_si128(c2[8591],simde_mm_xor_si128(c2[9251],simde_mm_xor_si128(c2[8],simde_mm_xor_si128(c2[668],simde_mm_xor_si128(c2[2684],simde_mm_xor_si128(c2[2670],simde_mm_xor_si128(c2[3330],simde_mm_xor_si128(c2[4651],simde_mm_xor_si128(c2[5311],simde_mm_xor_si128(c2[9967],simde_mm_xor_si128(c2[8654],simde_mm_xor_si128(c2[734],simde_mm_xor_si128(c2[1394],simde_mm_xor_si128(c2[4718],simde_mm_xor_si128(c2[6038],simde_mm_xor_si128(c2[1420],simde_mm_xor_si128(c2[2080],simde_mm_xor_si128(c2[9373],simde_mm_xor_si128(c2[4749],simde_mm_xor_si128(c2[5409],simde_mm_xor_si128(c2[8053],simde_mm_xor_si128(c2[8713],simde_mm_xor_si128(c2[3455],simde_mm_xor_si128(c2[818],simde_mm_xor_si128(c2[8084],simde_mm_xor_si128(c2[8744],simde_mm_xor_si128(c2[2825],simde_mm_xor_si128(c2[3487],simde_mm_xor_si128(c2[4147],simde_mm_xor_si128(c2[7442],simde_mm_xor_si128(c2[8102],simde_mm_xor_si128(c2[8795],simde_mm_xor_si128(c2[2201],simde_mm_xor_si128(c2[2861],simde_mm_xor_si128(c2[6821],simde_mm_xor_si128(c2[7481],simde_mm_xor_si128(c2[8830],simde_mm_xor_si128(c2[8165],simde_mm_xor_si128(c2[8825],simde_mm_xor_si128(c2[246],simde_mm_xor_si128(c2[906],simde_mm_xor_si128(c2[4233],simde_mm_xor_si128(c2[6213],simde_mm_xor_si128(c2[5551],simde_mm_xor_si128(c2[6211],simde_mm_xor_si128(c2[1634],simde_mm_xor_si128(c2[2944],simde_mm_xor_si128(c2[3604],simde_mm_xor_si128(c2[960],simde_mm_xor_si128(c2[1620],simde_mm_xor_si128(c2[9582],simde_mm_xor_si128(c2[8250],simde_mm_xor_si128(c2[5623],simde_mm_xor_si128(c2[6283],simde_mm_xor_si128(c2[1028],simde_mm_xor_si128(c2[9611],simde_mm_xor_si128(c2[4321],simde_mm_xor_si128(c2[4981],simde_mm_xor_si128(c2[8314],simde_mm_xor_si128(c2[4350],simde_mm_xor_si128(c2[5010],simde_mm_xor_si128(c2[5671],simde_mm_xor_si128(c2[6331],simde_mm_xor_si128(c2[426],simde_mm_xor_si128(c2[3726],simde_mm_xor_si128(c2[4386],simde_mm_xor_si128(c2[5050],simde_mm_xor_si128(c2[5710],simde_mm_xor_si128(c2[5738],simde_mm_xor_si128(c2[4415],simde_mm_xor_si128(c2[1112],simde_mm_xor_si128(c2[1772],simde_mm_xor_si128(c2[7093],simde_mm_xor_si128(c2[7089],simde_mm_xor_si128(c2[5772],simde_mm_xor_si128(c2[6432],simde_mm_xor_si128(c2[5795],simde_mm_xor_si128(c2[516],simde_mm_xor_si128(c2[1176],simde_mm_xor_si128(c2[512],simde_mm_xor_si128(c2[1172],simde_mm_xor_si128(c2[9133],simde_mm_xor_si128(c2[9127],simde_mm_xor_si128(c2[9787],simde_mm_xor_si128(c2[7814],simde_mm_xor_si128(c2[8474],simde_mm_xor_si128(c2[7835],simde_mm_xor_si128(c2[3220],simde_mm_xor_si128(c2[2554],simde_mm_xor_si128(c2[3214],simde_mm_xor_si128(c2[7206],simde_mm_xor_si128(c2[4574],simde_mm_xor_si128(c2[5234],simde_mm_xor_si128(c2[8530],simde_mm_xor_si128(c2[9190],simde_mm_xor_si128(c2[7238],simde_mm_xor_si128(c2[6583],simde_mm_xor_si128(c2[7903],c2[8563]))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 3
|
|
d2[45]=simde_mm_xor_si128(c2[5288],simde_mm_xor_si128(c2[666],simde_mm_xor_si128(c2[9251],simde_mm_xor_si128(c2[8],simde_mm_xor_si128(c2[668],simde_mm_xor_si128(c2[2684],simde_mm_xor_si128(c2[3330],simde_mm_xor_si128(c2[4651],simde_mm_xor_si128(c2[5311],simde_mm_xor_si128(c2[9967],simde_mm_xor_si128(c2[8654],simde_mm_xor_si128(c2[1394],simde_mm_xor_si128(c2[4718],simde_mm_xor_si128(c2[6038],simde_mm_xor_si128(c2[1420],simde_mm_xor_si128(c2[2080],simde_mm_xor_si128(c2[9373],simde_mm_xor_si128(c2[5409],simde_mm_xor_si128(c2[8053],simde_mm_xor_si128(c2[8713],simde_mm_xor_si128(c2[3455],simde_mm_xor_si128(c2[818],simde_mm_xor_si128(c2[8744],simde_mm_xor_si128(c2[2825],simde_mm_xor_si128(c2[4147],simde_mm_xor_si128(c2[7442],simde_mm_xor_si128(c2[8102],simde_mm_xor_si128(c2[8795],simde_mm_xor_si128(c2[2861],simde_mm_xor_si128(c2[6821],simde_mm_xor_si128(c2[7481],simde_mm_xor_si128(c2[8830],simde_mm_xor_si128(c2[8825],simde_mm_xor_si128(c2[246],simde_mm_xor_si128(c2[906],simde_mm_xor_si128(c2[4233],simde_mm_xor_si128(c2[6213],simde_mm_xor_si128(c2[6211],simde_mm_xor_si128(c2[1634],simde_mm_xor_si128(c2[3604],simde_mm_xor_si128(c2[960],simde_mm_xor_si128(c2[1620],simde_mm_xor_si128(c2[9582],simde_mm_xor_si128(c2[8250],simde_mm_xor_si128(c2[5623],simde_mm_xor_si128(c2[6283],simde_mm_xor_si128(c2[1028],simde_mm_xor_si128(c2[9611],simde_mm_xor_si128(c2[4321],simde_mm_xor_si128(c2[4981],simde_mm_xor_si128(c2[8314],simde_mm_xor_si128(c2[5010],simde_mm_xor_si128(c2[5671],simde_mm_xor_si128(c2[6331],simde_mm_xor_si128(c2[426],simde_mm_xor_si128(c2[4386],simde_mm_xor_si128(c2[5050],simde_mm_xor_si128(c2[5710],simde_mm_xor_si128(c2[5738],simde_mm_xor_si128(c2[4415],simde_mm_xor_si128(c2[1772],simde_mm_xor_si128(c2[7093],simde_mm_xor_si128(c2[7089],simde_mm_xor_si128(c2[5772],simde_mm_xor_si128(c2[6432],simde_mm_xor_si128(c2[5795],simde_mm_xor_si128(c2[1176],simde_mm_xor_si128(c2[512],simde_mm_xor_si128(c2[1172],simde_mm_xor_si128(c2[9133],simde_mm_xor_si128(c2[9787],simde_mm_xor_si128(c2[7814],simde_mm_xor_si128(c2[8474],simde_mm_xor_si128(c2[7835],simde_mm_xor_si128(c2[3220],simde_mm_xor_si128(c2[3214],simde_mm_xor_si128(c2[7206],simde_mm_xor_si128(c2[5234],simde_mm_xor_si128(c2[8530],simde_mm_xor_si128(c2[9190],simde_mm_xor_si128(c2[7238],simde_mm_xor_si128(c2[6583],simde_mm_xor_si128(c2[7903],c2[8563])))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 4
|
|
d2[60]=simde_mm_xor_si128(c2[4],c2[2023]);
|
|
|
|
//row: 5
|
|
d2[75]=simde_mm_xor_si128(c2[7264],simde_mm_xor_si128(c2[2642],simde_mm_xor_si128(c2[668],simde_mm_xor_si128(c2[2644],simde_mm_xor_si128(c2[1320],simde_mm_xor_si128(c2[4660],simde_mm_xor_si128(c2[5321],simde_mm_xor_si128(c2[7302],simde_mm_xor_si128(c2[7300],simde_mm_xor_si128(c2[1384],simde_mm_xor_si128(c2[71],simde_mm_xor_si128(c2[3370],simde_mm_xor_si128(c2[6694],simde_mm_xor_si128(c2[8014],simde_mm_xor_si128(c2[4056],simde_mm_xor_si128(c2[9992],simde_mm_xor_si128(c2[790],simde_mm_xor_si128(c2[7385],simde_mm_xor_si128(c2[130],simde_mm_xor_si128(c2[5431],simde_mm_xor_si128(c2[2794],simde_mm_xor_si128(c2[161],simde_mm_xor_si128(c2[4801],simde_mm_xor_si128(c2[6123],simde_mm_xor_si128(c2[10093],simde_mm_xor_si128(c2[212],simde_mm_xor_si128(c2[4837],simde_mm_xor_si128(c2[9457],simde_mm_xor_si128(c2[247],simde_mm_xor_si128(c2[242],simde_mm_xor_si128(c2[2882],simde_mm_xor_si128(c2[6224],simde_mm_xor_si128(c2[8204],simde_mm_xor_si128(c2[8202],simde_mm_xor_si128(c2[3610],simde_mm_xor_si128(c2[5580],simde_mm_xor_si128(c2[3611],simde_mm_xor_si128(c2[999],simde_mm_xor_si128(c2[10241],simde_mm_xor_si128(c2[8259],simde_mm_xor_si128(c2[3004],simde_mm_xor_si128(c2[1028],simde_mm_xor_si128(c2[6972],simde_mm_xor_si128(c2[10268],simde_mm_xor_si128(c2[10290],simde_mm_xor_si128(c2[7001],simde_mm_xor_si128(c2[8322],simde_mm_xor_si128(c2[2402],simde_mm_xor_si128(c2[6362],simde_mm_xor_si128(c2[7686],simde_mm_xor_si128(c2[7714],simde_mm_xor_si128(c2[6391],simde_mm_xor_si128(c2[3763],simde_mm_xor_si128(c2[9069],simde_mm_xor_si128(c2[9065],simde_mm_xor_si128(c2[8408],simde_mm_xor_si128(c2[1813],simde_mm_xor_si128(c2[7771],simde_mm_xor_si128(c2[3152],simde_mm_xor_si128(c2[3163],simde_mm_xor_si128(c2[550],simde_mm_xor_si128(c2[1204],simde_mm_xor_si128(c2[10450],simde_mm_xor_si128(c2[9811],simde_mm_xor_si128(c2[5196],simde_mm_xor_si128(c2[5190],simde_mm_xor_si128(c2[9182],simde_mm_xor_si128(c2[7210],simde_mm_xor_si128(c2[607],simde_mm_xor_si128(c2[9214],simde_mm_xor_si128(c2[8559],simde_mm_xor_si128(c2[10539],c2[3281]))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 6
|
|
d2[90]=simde_mm_xor_si128(c2[4632],simde_mm_xor_si128(c2[4141],simde_mm_xor_si128(c2[4921],simde_mm_xor_si128(c2[2976],simde_mm_xor_si128(c2[8315],simde_mm_xor_si128(c2[10422],simde_mm_xor_si128(c2[3183],c2[9180])))))));
|
|
|
|
//row: 7
|
|
d2[105]=simde_mm_xor_si128(c2[8584],simde_mm_xor_si128(c2[1359],simde_mm_xor_si128(c2[793],simde_mm_xor_si128(c2[212],simde_mm_xor_si128(c2[4210],c2[1741])))));
|
|
|
|
//row: 8
|
|
d2[120]=simde_mm_xor_si128(c2[3],simde_mm_xor_si128(c2[9250],simde_mm_xor_si128(c2[5940],simde_mm_xor_si128(c2[4628],simde_mm_xor_si128(c2[3966],simde_mm_xor_si128(c2[1994],simde_mm_xor_si128(c2[2654],simde_mm_xor_si128(c2[5942],simde_mm_xor_si128(c2[3970],simde_mm_xor_si128(c2[4630],simde_mm_xor_si128(c2[3311],simde_mm_xor_si128(c2[7958],simde_mm_xor_si128(c2[6631],simde_mm_xor_si128(c2[8619],simde_mm_xor_si128(c2[6632],simde_mm_xor_si128(c2[7292],simde_mm_xor_si128(c2[41],simde_mm_xor_si128(c2[8613],simde_mm_xor_si128(c2[9273],simde_mm_xor_si128(c2[5976],simde_mm_xor_si128(c2[4682],simde_mm_xor_si128(c2[3370],simde_mm_xor_si128(c2[3369],simde_mm_xor_si128(c2[2042],simde_mm_xor_si128(c2[6668],simde_mm_xor_si128(c2[4681],simde_mm_xor_si128(c2[5341],simde_mm_xor_si128(c2[9992],simde_mm_xor_si128(c2[8680],simde_mm_xor_si128(c2[753],simde_mm_xor_si128(c2[10000],simde_mm_xor_si128(c2[7354],simde_mm_xor_si128(c2[5382],simde_mm_xor_si128(c2[6042],simde_mm_xor_si128(c2[8678],simde_mm_xor_si128(c2[4088],simde_mm_xor_si128(c2[2761],simde_mm_xor_si128(c2[124],simde_mm_xor_si128(c2[8711],simde_mm_xor_si128(c2[9371],simde_mm_xor_si128(c2[3428],simde_mm_xor_si128(c2[1441],simde_mm_xor_si128(c2[2101],simde_mm_xor_si128(c2[8744],simde_mm_xor_si128(c2[7417],simde_mm_xor_si128(c2[6092],simde_mm_xor_si128(c2[4780],simde_mm_xor_si128(c2[3459],simde_mm_xor_si128(c2[1472],simde_mm_xor_si128(c2[2132],simde_mm_xor_si128(c2[8114],simde_mm_xor_si128(c2[6787],simde_mm_xor_si128(c2[9421],simde_mm_xor_si128(c2[7449],simde_mm_xor_si128(c2[8109],simde_mm_xor_si128(c2[2832],simde_mm_xor_si128(c2[845],simde_mm_xor_si128(c2[1505],simde_mm_xor_si128(c2[3510],simde_mm_xor_si128(c2[2198],simde_mm_xor_si128(c2[8135],simde_mm_xor_si128(c2[6163],simde_mm_xor_si128(c2[6823],simde_mm_xor_si128(c2[2196],simde_mm_xor_si128(c2[224],simde_mm_xor_si128(c2[884],simde_mm_xor_si128(c2[3545],simde_mm_xor_si128(c2[2233],simde_mm_xor_si128(c2[3540],simde_mm_xor_si128(c2[1568],simde_mm_xor_si128(c2[2228],simde_mm_xor_si128(c2[6180],simde_mm_xor_si128(c2[4208],simde_mm_xor_si128(c2[4868],simde_mm_xor_si128(c2[9522],simde_mm_xor_si128(c2[8195],simde_mm_xor_si128(c2[943],simde_mm_xor_si128(c2[10175],simde_mm_xor_si128(c2[941],simde_mm_xor_si128(c2[9513],simde_mm_xor_si128(c2[10173],simde_mm_xor_si128(c2[6908],simde_mm_xor_si128(c2[5581],simde_mm_xor_si128(c2[8893],simde_mm_xor_si128(c2[6906],simde_mm_xor_si128(c2[7566],simde_mm_xor_si128(c2[6909],simde_mm_xor_si128(c2[4922],simde_mm_xor_si128(c2[5582],simde_mm_xor_si128(c2[4297],simde_mm_xor_si128(c2[2970],simde_mm_xor_si128(c2[2980],simde_mm_xor_si128(c2[1653],simde_mm_xor_si128(c2[998],simde_mm_xor_si128(c2[9570],simde_mm_xor_si128(c2[10230],simde_mm_xor_si128(c2[6302],simde_mm_xor_si128(c2[4990],simde_mm_xor_si128(c2[4326],simde_mm_xor_si128(c2[3014],simde_mm_xor_si128(c2[10270],simde_mm_xor_si128(c2[8283],simde_mm_xor_si128(c2[8943],simde_mm_xor_si128(c2[10273],simde_mm_xor_si128(c2[3044],simde_mm_xor_si128(c2[1717],simde_mm_xor_si128(c2[10299],simde_mm_xor_si128(c2[8312],simde_mm_xor_si128(c2[8972],simde_mm_xor_si128(c2[1061],simde_mm_xor_si128(c2[9633],simde_mm_xor_si128(c2[10293],simde_mm_xor_si128(c2[5700],simde_mm_xor_si128(c2[4388],simde_mm_xor_si128(c2[9660],simde_mm_xor_si128(c2[7688],simde_mm_xor_si128(c2[8348],simde_mm_xor_si128(c2[425],simde_mm_xor_si128(c2[9012],simde_mm_xor_si128(c2[9672],simde_mm_xor_si128(c2[453],simde_mm_xor_si128(c2[9700],simde_mm_xor_si128(c2[9704],simde_mm_xor_si128(c2[8377],simde_mm_xor_si128(c2[7061],simde_mm_xor_si128(c2[5074],simde_mm_xor_si128(c2[5734],simde_mm_xor_si128(c2[1808],simde_mm_xor_si128(c2[481],simde_mm_xor_si128(c2[1804],simde_mm_xor_si128(c2[492],simde_mm_xor_si128(c2[1147],simde_mm_xor_si128(c2[9734],simde_mm_xor_si128(c2[10394],simde_mm_xor_si128(c2[1151],simde_mm_xor_si128(c2[510],simde_mm_xor_si128(c2[9757],simde_mm_xor_si128(c2[6450],simde_mm_xor_si128(c2[4478],simde_mm_xor_si128(c2[5138],simde_mm_xor_si128(c2[6461],simde_mm_xor_si128(c2[4474],simde_mm_xor_si128(c2[5134],simde_mm_xor_si128(c2[3848],simde_mm_xor_si128(c2[2521],simde_mm_xor_si128(c2[4502],simde_mm_xor_si128(c2[2530],simde_mm_xor_si128(c2[3190],simde_mm_xor_si128(c2[3189],simde_mm_xor_si128(c2[1202],simde_mm_xor_si128(c2[1862],simde_mm_xor_si128(c2[2550],simde_mm_xor_si128(c2[1238],simde_mm_xor_si128(c2[8494],simde_mm_xor_si128(c2[7182],simde_mm_xor_si128(c2[8503],simde_mm_xor_si128(c2[6516],simde_mm_xor_si128(c2[7176],simde_mm_xor_si128(c2[1239],simde_mm_xor_si128(c2[1921],simde_mm_xor_si128(c2[609],simde_mm_xor_si128(c2[10508],simde_mm_xor_si128(c2[8521],simde_mm_xor_si128(c2[9181],simde_mm_xor_si128(c2[3905],simde_mm_xor_si128(c2[1933],simde_mm_xor_si128(c2[2593],simde_mm_xor_si128(c2[1953],simde_mm_xor_si128(c2[641],simde_mm_xor_si128(c2[1298],simde_mm_xor_si128(c2[10530],simde_mm_xor_si128(c2[3278],simde_mm_xor_si128(c2[1291],simde_mm_xor_si128(c2[1951],c2[5262]))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 9
|
|
d2[135]=simde_mm_xor_si128(c2[5950],simde_mm_xor_si128(c2[7950],simde_mm_xor_si128(c2[9552],simde_mm_xor_si128(c2[8923],simde_mm_xor_si128(c2[1051],simde_mm_xor_si128(c2[3163],simde_mm_xor_si128(c2[8465],c2[9192])))))));
|
|
|
|
//row: 10
|
|
d2[150]=simde_mm_xor_si128(c2[2677],simde_mm_xor_si128(c2[4689],simde_mm_xor_si128(c2[4084],simde_mm_xor_si128(c2[4184],simde_mm_xor_si128(c2[2227],c2[3065])))));
|
|
|
|
//row: 11
|
|
d2[165]=simde_mm_xor_si128(c2[7923],simde_mm_xor_si128(c2[1320],simde_mm_xor_si128(c2[1980],simde_mm_xor_si128(c2[3301],simde_mm_xor_si128(c2[7932],simde_mm_xor_si128(c2[1327],simde_mm_xor_si128(c2[5943],simde_mm_xor_si128(c2[3303],simde_mm_xor_si128(c2[7934],simde_mm_xor_si128(c2[8582],simde_mm_xor_si128(c2[5319],simde_mm_xor_si128(c2[9275],simde_mm_xor_si128(c2[9935],simde_mm_xor_si128(c2[5980],simde_mm_xor_si128(c2[37],simde_mm_xor_si128(c2[7961],simde_mm_xor_si128(c2[2018],simde_mm_xor_si128(c2[2017],simde_mm_xor_si128(c2[2043],simde_mm_xor_si128(c2[6014],simde_mm_xor_si128(c2[6674],simde_mm_xor_si128(c2[730],simde_mm_xor_si128(c2[5346],simde_mm_xor_si128(c2[4029],simde_mm_xor_si128(c2[8645],simde_mm_xor_si128(c2[7353],simde_mm_xor_si128(c2[750],simde_mm_xor_si128(c2[1410],simde_mm_xor_si128(c2[8673],simde_mm_xor_si128(c2[2730],simde_mm_xor_si128(c2[4715],simde_mm_xor_si128(c2[9331],simde_mm_xor_si128(c2[1449],simde_mm_xor_si128(c2[6065],simde_mm_xor_si128(c2[8044],simde_mm_xor_si128(c2[2101],simde_mm_xor_si128(c2[789],simde_mm_xor_si128(c2[5405],simde_mm_xor_si128(c2[6090],simde_mm_xor_si128(c2[10061],simde_mm_xor_si128(c2[162],simde_mm_xor_si128(c2[3453],simde_mm_xor_si128(c2[8084],simde_mm_xor_si128(c2[820],simde_mm_xor_si128(c2[5436],simde_mm_xor_si128(c2[5460],simde_mm_xor_si128(c2[9431],simde_mm_xor_si128(c2[10091],simde_mm_xor_si128(c2[6782],simde_mm_xor_si128(c2[854],simde_mm_xor_si128(c2[193],simde_mm_xor_si128(c2[4809],simde_mm_xor_si128(c2[871],simde_mm_xor_si128(c2[5502],simde_mm_xor_si128(c2[5496],simde_mm_xor_si128(c2[10112],simde_mm_xor_si128(c2[10116],simde_mm_xor_si128(c2[4173],simde_mm_xor_si128(c2[906],simde_mm_xor_si128(c2[5522],simde_mm_xor_si128(c2[901],simde_mm_xor_si128(c2[5532],simde_mm_xor_si128(c2[3541],simde_mm_xor_si128(c2[8172],simde_mm_xor_si128(c2[6883],simde_mm_xor_si128(c2[280],simde_mm_xor_si128(c2[940],simde_mm_xor_si128(c2[8863],simde_mm_xor_si128(c2[2920],simde_mm_xor_si128(c2[8861],simde_mm_xor_si128(c2[2918],simde_mm_xor_si128(c2[4269],simde_mm_xor_si128(c2[8225],simde_mm_xor_si128(c2[8885],simde_mm_xor_si128(c2[6254],simde_mm_xor_si128(c2[311],simde_mm_xor_si128(c2[4270],simde_mm_xor_si128(c2[8886],simde_mm_xor_si128(c2[1658],simde_mm_xor_si128(c2[5614],simde_mm_xor_si128(c2[6274],simde_mm_xor_si128(c2[341],simde_mm_xor_si128(c2[4957],simde_mm_xor_si128(c2[8918],simde_mm_xor_si128(c2[2975],simde_mm_xor_si128(c2[3663],simde_mm_xor_si128(c2[7634],simde_mm_xor_si128(c2[8294],simde_mm_xor_si128(c2[1687],simde_mm_xor_si128(c2[6303],simde_mm_xor_si128(c2[7631],simde_mm_xor_si128(c2[1688],simde_mm_xor_si128(c2[4328],simde_mm_xor_si128(c2[390],simde_mm_xor_si128(c2[4361],simde_mm_xor_si128(c2[5021],simde_mm_xor_si128(c2[7660],simde_mm_xor_si128(c2[1717],simde_mm_xor_si128(c2[8981],simde_mm_xor_si128(c2[3038],simde_mm_xor_si128(c2[3061],simde_mm_xor_si128(c2[7692],simde_mm_xor_si128(c2[7021],simde_mm_xor_si128(c2[1093],simde_mm_xor_si128(c2[8345],simde_mm_xor_si128(c2[2402],simde_mm_xor_si128(c2[8373],simde_mm_xor_si128(c2[1770],simde_mm_xor_si128(c2[2430],simde_mm_xor_si128(c2[7050],simde_mm_xor_si128(c2[1122],simde_mm_xor_si128(c2[4422],simde_mm_xor_si128(c2[9038],simde_mm_xor_si128(c2[9728],simde_mm_xor_si128(c2[3125],simde_mm_xor_si128(c2[3785],simde_mm_xor_si128(c2[9724],simde_mm_xor_si128(c2[3781],simde_mm_xor_si128(c2[9067],simde_mm_xor_si128(c2[3124],simde_mm_xor_si128(c2[1140],simde_mm_xor_si128(c2[8430],simde_mm_xor_si128(c2[2502],simde_mm_xor_si128(c2[3811],simde_mm_xor_si128(c2[8442],simde_mm_xor_si128(c2[3822],simde_mm_xor_si128(c2[8438],simde_mm_xor_si128(c2[1209],simde_mm_xor_si128(c2[5165],simde_mm_xor_si128(c2[5825],simde_mm_xor_si128(c2[1863],simde_mm_xor_si128(c2[6494],simde_mm_xor_si128(c2[550],simde_mm_xor_si128(c2[5166],simde_mm_xor_si128(c2[10470],simde_mm_xor_si128(c2[3882],simde_mm_xor_si128(c2[4542],simde_mm_xor_si128(c2[5855],simde_mm_xor_si128(c2[10471],simde_mm_xor_si128(c2[5864],simde_mm_xor_si128(c2[10480],simde_mm_xor_si128(c2[9841],simde_mm_xor_si128(c2[3253],simde_mm_xor_si128(c2[3913],simde_mm_xor_si128(c2[7869],simde_mm_xor_si128(c2[1926],simde_mm_xor_si128(c2[1266],simde_mm_xor_si128(c2[5882],simde_mm_xor_si128(c2[9873],simde_mm_xor_si128(c2[3270],simde_mm_xor_si128(c2[3930],simde_mm_xor_si128(c2[9218],simde_mm_xor_si128(c2[3275],simde_mm_xor_si128(c2[639],simde_mm_xor_si128(c2[5255],c2[5919])))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 12
|
|
d2[180]=simde_mm_xor_si128(c2[6611],simde_mm_xor_si128(c2[4663],simde_mm_xor_si128(c2[8227],simde_mm_xor_si128(c2[2981],simde_mm_xor_si128(c2[1716],c2[545])))));
|
|
|
|
//row: 13
|
|
d2[195]=simde_mm_xor_si128(c2[8582],simde_mm_xor_si128(c2[9242],simde_mm_xor_si128(c2[4620],simde_mm_xor_si128(c2[2646],simde_mm_xor_si128(c2[4622],simde_mm_xor_si128(c2[7933],simde_mm_xor_si128(c2[5978],simde_mm_xor_si128(c2[6638],simde_mm_xor_si128(c2[7299],simde_mm_xor_si128(c2[9280],simde_mm_xor_si128(c2[2702],simde_mm_xor_si128(c2[3362],simde_mm_xor_si128(c2[2049],simde_mm_xor_si128(c2[5348],simde_mm_xor_si128(c2[8012],simde_mm_xor_si128(c2[8672],simde_mm_xor_si128(c2[9992],simde_mm_xor_si128(c2[6034],simde_mm_xor_si128(c2[6041],simde_mm_xor_si128(c2[2768],simde_mm_xor_si128(c2[9363],simde_mm_xor_si128(c2[2108],simde_mm_xor_si128(c2[6764],simde_mm_xor_si128(c2[7424],simde_mm_xor_si128(c2[4772],simde_mm_xor_si128(c2[2139],simde_mm_xor_si128(c2[6134],simde_mm_xor_si128(c2[6794],simde_mm_xor_si128(c2[8101],simde_mm_xor_si128(c2[1512],simde_mm_xor_si128(c2[2190],simde_mm_xor_si128(c2[6815],simde_mm_xor_si128(c2[876],simde_mm_xor_si128(c2[6819],simde_mm_xor_si128(c2[2225],simde_mm_xor_si128(c2[2220],simde_mm_xor_si128(c2[4860],simde_mm_xor_si128(c2[7542],simde_mm_xor_si128(c2[8202],simde_mm_xor_si128(c2[10182],simde_mm_xor_si128(c2[10180],simde_mm_xor_si128(c2[4928],simde_mm_xor_si128(c2[5588],simde_mm_xor_si128(c2[7573],simde_mm_xor_si128(c2[5589],simde_mm_xor_si128(c2[2317],simde_mm_xor_si128(c2[2977],simde_mm_xor_si128(c2[1660],simde_mm_xor_si128(c2[10237],simde_mm_xor_si128(c2[4322],simde_mm_xor_si128(c2[4982],simde_mm_xor_si128(c2[3006],simde_mm_xor_si128(c2[8950],simde_mm_xor_si128(c2[1064],simde_mm_xor_si128(c2[1724],simde_mm_xor_si128(c2[8979],simde_mm_xor_si128(c2[10300],simde_mm_xor_si128(c2[4380],simde_mm_xor_si128(c2[8340],simde_mm_xor_si128(c2[9664],simde_mm_xor_si128(c2[9032],simde_mm_xor_si128(c2[9692],simde_mm_xor_si128(c2[8384],simde_mm_xor_si128(c2[5741],simde_mm_xor_si128(c2[10387],simde_mm_xor_si128(c2[488],simde_mm_xor_si128(c2[484],simde_mm_xor_si128(c2[10386],simde_mm_xor_si128(c2[9764],simde_mm_xor_si128(c2[5130],simde_mm_xor_si128(c2[5141],simde_mm_xor_si128(c2[1868],simde_mm_xor_si128(c2[2528],simde_mm_xor_si128(c2[3182],simde_mm_xor_si128(c2[1869],simde_mm_xor_si128(c2[570],simde_mm_xor_si128(c2[1230],simde_mm_xor_si128(c2[7174],simde_mm_xor_si128(c2[7183],simde_mm_xor_si128(c2[10500],simde_mm_xor_si128(c2[601],simde_mm_xor_si128(c2[9188],simde_mm_xor_si128(c2[2585],simde_mm_xor_si128(c2[1931],simde_mm_xor_si128(c2[10532],simde_mm_xor_si128(c2[633],simde_mm_xor_si128(c2[10537],c2[1958])))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 14
|
|
d2[210]=simde_mm_xor_si128(c2[7927],simde_mm_xor_si128(c2[369],simde_mm_xor_si128(c2[4421],simde_mm_xor_si128(c2[10385],simde_mm_xor_si128(c2[5794],c2[8554])))));
|
|
|
|
//row: 15
|
|
d2[225]=simde_mm_xor_si128(c2[5951],simde_mm_xor_si128(c2[1329],simde_mm_xor_si128(c2[9914],simde_mm_xor_si128(c2[671],simde_mm_xor_si128(c2[1331],simde_mm_xor_si128(c2[4622],simde_mm_xor_si128(c2[3332],simde_mm_xor_si128(c2[3993],simde_mm_xor_si128(c2[5314],simde_mm_xor_si128(c2[5974],simde_mm_xor_si128(c2[6638],simde_mm_xor_si128(c2[71],simde_mm_xor_si128(c2[9302],simde_mm_xor_si128(c2[2042],simde_mm_xor_si128(c2[5381],simde_mm_xor_si128(c2[6701],simde_mm_xor_si128(c2[2083],simde_mm_xor_si128(c2[2743],simde_mm_xor_si128(c2[10021],simde_mm_xor_si128(c2[6072],simde_mm_xor_si128(c2[8701],simde_mm_xor_si128(c2[9361],simde_mm_xor_si128(c2[4118],simde_mm_xor_si128(c2[1481],simde_mm_xor_si128(c2[9392],simde_mm_xor_si128(c2[3488],simde_mm_xor_si128(c2[4810],simde_mm_xor_si128(c2[8105],simde_mm_xor_si128(c2[8765],simde_mm_xor_si128(c2[9458],simde_mm_xor_si128(c2[3524],simde_mm_xor_si128(c2[7484],simde_mm_xor_si128(c2[8144],simde_mm_xor_si128(c2[9493],simde_mm_xor_si128(c2[9488],simde_mm_xor_si128(c2[909],simde_mm_xor_si128(c2[1569],simde_mm_xor_si128(c2[4896],simde_mm_xor_si128(c2[6876],simde_mm_xor_si128(c2[6874],simde_mm_xor_si128(c2[2282],simde_mm_xor_si128(c2[4267],simde_mm_xor_si128(c2[1623],simde_mm_xor_si128(c2[2283],simde_mm_xor_si128(c2[8233],simde_mm_xor_si128(c2[10230],simde_mm_xor_si128(c2[8913],simde_mm_xor_si128(c2[6271],simde_mm_xor_si128(c2[6931],simde_mm_xor_si128(c2[1691],simde_mm_xor_si128(c2[10274],simde_mm_xor_si128(c2[4984],simde_mm_xor_si128(c2[5644],simde_mm_xor_si128(c2[8977],simde_mm_xor_si128(c2[5673],simde_mm_xor_si128(c2[6334],simde_mm_xor_si128(c2[6994],simde_mm_xor_si128(c2[8980],simde_mm_xor_si128(c2[1089],simde_mm_xor_si128(c2[5049],simde_mm_xor_si128(c2[5713],simde_mm_xor_si128(c2[6373],simde_mm_xor_si128(c2[6401],simde_mm_xor_si128(c2[5078],simde_mm_xor_si128(c2[2435],simde_mm_xor_si128(c2[7741],simde_mm_xor_si128(c2[7752],simde_mm_xor_si128(c2[6420],simde_mm_xor_si128(c2[7080],simde_mm_xor_si128(c2[6458],simde_mm_xor_si128(c2[1839],simde_mm_xor_si128(c2[1175],simde_mm_xor_si128(c2[1835],simde_mm_xor_si128(c2[9781],simde_mm_xor_si128(c2[10450],simde_mm_xor_si128(c2[8462],simde_mm_xor_si128(c2[9122],simde_mm_xor_si128(c2[9788],simde_mm_xor_si128(c2[8498],simde_mm_xor_si128(c2[3883],simde_mm_xor_si128(c2[3877],simde_mm_xor_si128(c2[7869],simde_mm_xor_si128(c2[5882],simde_mm_xor_si128(c2[9193],simde_mm_xor_si128(c2[9853],simde_mm_xor_si128(c2[7901],simde_mm_xor_si128(c2[7231],simde_mm_xor_si128(c2[8551],c2[9211]))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 16
|
|
d2[240]=simde_mm_xor_si128(c2[2646],simde_mm_xor_si128(c2[8583],simde_mm_xor_si128(c2[6609],simde_mm_xor_si128(c2[8585],simde_mm_xor_si128(c2[42],simde_mm_xor_si128(c2[703],simde_mm_xor_si128(c2[2684],simde_mm_xor_si128(c2[9274],simde_mm_xor_si128(c2[7325],simde_mm_xor_si128(c2[6012],simde_mm_xor_si128(c2[9311],simde_mm_xor_si128(c2[2076],simde_mm_xor_si128(c2[3396],simde_mm_xor_si128(c2[9997],simde_mm_xor_si128(c2[5379],simde_mm_xor_si128(c2[6731],simde_mm_xor_si128(c2[2767],simde_mm_xor_si128(c2[6071],simde_mm_xor_si128(c2[813],simde_mm_xor_si128(c2[8735],simde_mm_xor_si128(c2[6102],simde_mm_xor_si128(c2[183],simde_mm_xor_si128(c2[1505],simde_mm_xor_si128(c2[5460],simde_mm_xor_si128(c2[6153],simde_mm_xor_si128(c2[219],simde_mm_xor_si128(c2[4839],simde_mm_xor_si128(c2[6188],simde_mm_xor_si128(c2[6183],simde_mm_xor_si128(c2[8823],simde_mm_xor_si128(c2[1591],simde_mm_xor_si128(c2[3571],simde_mm_xor_si128(c2[3584],simde_mm_xor_si128(c2[9551],simde_mm_xor_si128(c2[962],simde_mm_xor_si128(c2[9552],simde_mm_xor_si128(c2[6940],simde_mm_xor_si128(c2[5623],simde_mm_xor_si128(c2[3641],simde_mm_xor_si128(c2[2975],simde_mm_xor_si128(c2[8945],simde_mm_xor_si128(c2[6969],simde_mm_xor_si128(c2[2354],simde_mm_xor_si128(c2[5672],simde_mm_xor_si128(c2[2383],simde_mm_xor_si128(c2[3704],simde_mm_xor_si128(c2[8343],simde_mm_xor_si128(c2[1744],simde_mm_xor_si128(c2[3068],simde_mm_xor_si128(c2[3096],simde_mm_xor_si128(c2[1773],simde_mm_xor_si128(c2[9704],simde_mm_xor_si128(c2[4451],simde_mm_xor_si128(c2[4447],simde_mm_xor_si128(c2[3790],simde_mm_xor_si128(c2[3153],simde_mm_xor_si128(c2[9093],simde_mm_xor_si128(c2[9104],simde_mm_xor_si128(c2[6491],simde_mm_xor_si128(c2[7145],simde_mm_xor_si128(c2[5832],simde_mm_xor_si128(c2[5193],simde_mm_xor_si128(c2[578],simde_mm_xor_si128(c2[572],simde_mm_xor_si128(c2[4564],simde_mm_xor_si128(c2[2592],simde_mm_xor_si128(c2[6548],simde_mm_xor_si128(c2[3900],simde_mm_xor_si128(c2[4596],simde_mm_xor_si128(c2[3941],c2[5921]))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 17
|
|
d2[255]=simde_mm_xor_si128(c2[4631],simde_mm_xor_si128(c2[427],simde_mm_xor_si128(c2[7086],simde_mm_xor_si128(c2[7783],c2[1298]))));
|
|
|
|
//row: 18
|
|
d2[270]=simde_mm_xor_si128(c2[4661],simde_mm_xor_si128(c2[4993],simde_mm_xor_si128(c2[3041],simde_mm_xor_si128(c2[10448],c2[9810]))));
|
|
|
|
//row: 19
|
|
d2[285]=simde_mm_xor_si128(c2[1991],simde_mm_xor_si128(c2[7956],simde_mm_xor_si128(c2[10119],simde_mm_xor_si128(c2[6848],c2[2952]))));
|
|
|
|
//row: 20
|
|
d2[300]=simde_mm_xor_si128(c2[5941],simde_mm_xor_si128(c2[1334],simde_mm_xor_si128(c2[9904],simde_mm_xor_si128(c2[1321],simde_mm_xor_si128(c2[8584],simde_mm_xor_si128(c2[3337],simde_mm_xor_si128(c2[3998],simde_mm_xor_si128(c2[5979],simde_mm_xor_si128(c2[61],simde_mm_xor_si128(c2[9307],simde_mm_xor_si128(c2[2047],simde_mm_xor_si128(c2[5371],simde_mm_xor_si128(c2[6691],simde_mm_xor_si128(c2[2733],simde_mm_xor_si128(c2[7361],simde_mm_xor_si128(c2[10026],simde_mm_xor_si128(c2[6062],simde_mm_xor_si128(c2[9366],simde_mm_xor_si128(c2[4123],simde_mm_xor_si128(c2[1471],simde_mm_xor_si128(c2[9397],simde_mm_xor_si128(c2[3493],simde_mm_xor_si128(c2[4800],simde_mm_xor_si128(c2[8770],simde_mm_xor_si128(c2[9463],simde_mm_xor_si128(c2[3514],simde_mm_xor_si128(c2[8134],simde_mm_xor_si128(c2[9483],simde_mm_xor_si128(c2[9493],simde_mm_xor_si128(c2[1574],simde_mm_xor_si128(c2[4901],simde_mm_xor_si128(c2[6881],simde_mm_xor_si128(c2[6879],simde_mm_xor_si128(c2[7542],simde_mm_xor_si128(c2[2287],simde_mm_xor_si128(c2[4272],simde_mm_xor_si128(c2[2288],simde_mm_xor_si128(c2[10235],simde_mm_xor_si128(c2[8918],simde_mm_xor_si128(c2[6936],simde_mm_xor_si128(c2[4960],simde_mm_xor_si128(c2[1681],simde_mm_xor_si128(c2[10264],simde_mm_xor_si128(c2[5649],simde_mm_xor_si128(c2[8982],simde_mm_xor_si128(c2[5678],simde_mm_xor_si128(c2[6999],simde_mm_xor_si128(c2[1094],simde_mm_xor_si128(c2[5054],simde_mm_xor_si128(c2[6363],simde_mm_xor_si128(c2[6391],simde_mm_xor_si128(c2[5083],simde_mm_xor_si128(c2[2440],simde_mm_xor_si128(c2[7746],simde_mm_xor_si128(c2[7742],simde_mm_xor_si128(c2[7085],simde_mm_xor_si128(c2[6463],simde_mm_xor_si128(c2[1844],simde_mm_xor_si128(c2[1840],simde_mm_xor_si128(c2[9786],simde_mm_xor_si128(c2[10440],simde_mm_xor_si128(c2[9127],simde_mm_xor_si128(c2[8503],simde_mm_xor_si128(c2[3873],simde_mm_xor_si128(c2[3882],simde_mm_xor_si128(c2[7874],simde_mm_xor_si128(c2[5887],simde_mm_xor_si128(c2[9843],simde_mm_xor_si128(c2[7891],simde_mm_xor_si128(c2[7236],c2[9216]))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 21
|
|
d2[315]=simde_mm_xor_si128(c2[3342],simde_mm_xor_si128(c2[6757],simde_mm_xor_si128(c2[5113],simde_mm_xor_si128(c2[1264],c2[5923]))));
|
|
|
|
//row: 22
|
|
d2[330]=simde_mm_xor_si128(c2[5941],simde_mm_xor_si128(c2[10262],simde_mm_xor_si128(c2[9637],c2[1841])));
|
|
|
|
//row: 23
|
|
d2[345]=simde_mm_xor_si128(c2[5981],simde_mm_xor_si128(c2[9967],simde_mm_xor_si128(c2[3607],c2[5172])));
|
|
|
|
//row: 24
|
|
d2[360]=simde_mm_xor_si128(c2[672],simde_mm_xor_si128(c2[6609],simde_mm_xor_si128(c2[4620],simde_mm_xor_si128(c2[6611],simde_mm_xor_si128(c2[2],simde_mm_xor_si128(c2[8612],simde_mm_xor_si128(c2[9273],simde_mm_xor_si128(c2[695],simde_mm_xor_si128(c2[5351],simde_mm_xor_si128(c2[4023],simde_mm_xor_si128(c2[7322],simde_mm_xor_si128(c2[102],simde_mm_xor_si128(c2[1422],simde_mm_xor_si128(c2[8023],simde_mm_xor_si128(c2[1421],simde_mm_xor_si128(c2[4742],simde_mm_xor_si128(c2[793],simde_mm_xor_si128(c2[4082],simde_mm_xor_si128(c2[1440],simde_mm_xor_si128(c2[9398],simde_mm_xor_si128(c2[6761],simde_mm_xor_si128(c2[4113],simde_mm_xor_si128(c2[8768],simde_mm_xor_si128(c2[10090],simde_mm_xor_si128(c2[3486],simde_mm_xor_si128(c2[4179],simde_mm_xor_si128(c2[8804],simde_mm_xor_si128(c2[2850],simde_mm_xor_si128(c2[4214],simde_mm_xor_si128(c2[4209],simde_mm_xor_si128(c2[6849],simde_mm_xor_si128(c2[10176],simde_mm_xor_si128(c2[1597],simde_mm_xor_si128(c2[1595],simde_mm_xor_si128(c2[7562],simde_mm_xor_si128(c2[9547],simde_mm_xor_si128(c2[7563],simde_mm_xor_si128(c2[4951],simde_mm_xor_si128(c2[3634],simde_mm_xor_si128(c2[1652],simde_mm_xor_si128(c2[8259],simde_mm_xor_si128(c2[6971],simde_mm_xor_si128(c2[4980],simde_mm_xor_si128(c2[365],simde_mm_xor_si128(c2[3698],simde_mm_xor_si128(c2[394],simde_mm_xor_si128(c2[1715],simde_mm_xor_si128(c2[6369],simde_mm_xor_si128(c2[10329],simde_mm_xor_si128(c2[1094],simde_mm_xor_si128(c2[1122],simde_mm_xor_si128(c2[10358],simde_mm_xor_si128(c2[7715],simde_mm_xor_si128(c2[2462],simde_mm_xor_si128(c2[2473],simde_mm_xor_si128(c2[1801],simde_mm_xor_si128(c2[1179],simde_mm_xor_si128(c2[7119],simde_mm_xor_si128(c2[7115],simde_mm_xor_si128(c2[4502],simde_mm_xor_si128(c2[5171],simde_mm_xor_si128(c2[3843],simde_mm_xor_si128(c2[3219],simde_mm_xor_si128(c2[9163],simde_mm_xor_si128(c2[9157],simde_mm_xor_si128(c2[2590],simde_mm_xor_si128(c2[603],simde_mm_xor_si128(c2[4574],simde_mm_xor_si128(c2[2622],simde_mm_xor_si128(c2[1952],c2[3932]))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 25
|
|
d2[375]=simde_mm_xor_si128(c2[7291],simde_mm_xor_si128(c2[8768],simde_mm_xor_si128(c2[7470],c2[3731])));
|
|
|
|
//row: 26
|
|
d2[390]=simde_mm_xor_si128(c2[1990],simde_mm_xor_si128(c2[2048],simde_mm_xor_si128(c2[6070],c2[1776])));
|
|
|
|
//row: 27
|
|
d2[405]=simde_mm_xor_si128(c2[3340],simde_mm_xor_si128(c2[5474],c2[6180]));
|
|
|
|
//row: 28
|
|
d2[420]=simde_mm_xor_si128(c2[2],simde_mm_xor_si128(c2[7382],simde_mm_xor_si128(c2[5862],c2[9222])));
|
|
|
|
//row: 29
|
|
d2[435]=simde_mm_xor_si128(c2[9914],simde_mm_xor_si128(c2[5292],simde_mm_xor_si128(c2[3303],simde_mm_xor_si128(c2[4634],simde_mm_xor_si128(c2[5294],simde_mm_xor_si128(c2[7295],simde_mm_xor_si128(c2[7956],simde_mm_xor_si128(c2[9277],simde_mm_xor_si128(c2[9937],simde_mm_xor_si128(c2[5324],simde_mm_xor_si128(c2[4034],simde_mm_xor_si128(c2[2706],simde_mm_xor_si128(c2[6005],simde_mm_xor_si128(c2[9344],simde_mm_xor_si128(c2[90],simde_mm_xor_si128(c2[6031],simde_mm_xor_si128(c2[6691],simde_mm_xor_si128(c2[3425],simde_mm_xor_si128(c2[10020],simde_mm_xor_si128(c2[2105],simde_mm_xor_si128(c2[2765],simde_mm_xor_si128(c2[8081],simde_mm_xor_si128(c2[5444],simde_mm_xor_si128(c2[2796],simde_mm_xor_si128(c2[7451],simde_mm_xor_si128(c2[8773],simde_mm_xor_si128(c2[1509],simde_mm_xor_si128(c2[2169],simde_mm_xor_si128(c2[2862],simde_mm_xor_si128(c2[7472],simde_mm_xor_si128(c2[873],simde_mm_xor_si128(c2[1533],simde_mm_xor_si128(c2[2882],simde_mm_xor_si128(c2[2892],simde_mm_xor_si128(c2[4872],simde_mm_xor_si128(c2[5532],simde_mm_xor_si128(c2[8859],simde_mm_xor_si128(c2[280],simde_mm_xor_si128(c2[278],simde_mm_xor_si128(c2[6245],simde_mm_xor_si128(c2[8230],simde_mm_xor_si128(c2[5586],simde_mm_xor_si128(c2[6246],simde_mm_xor_si128(c2[3634],simde_mm_xor_si128(c2[2317],simde_mm_xor_si128(c2[10234],simde_mm_xor_si128(c2[335],simde_mm_xor_si128(c2[5654],simde_mm_xor_si128(c2[3663],simde_mm_xor_si128(c2[8947],simde_mm_xor_si128(c2[9607],simde_mm_xor_si128(c2[2381],simde_mm_xor_si128(c2[9636],simde_mm_xor_si128(c2[10297],simde_mm_xor_si128(c2[398],simde_mm_xor_si128(c2[5052],simde_mm_xor_si128(c2[9012],simde_mm_xor_si128(c2[9661],simde_mm_xor_si128(c2[10321],simde_mm_xor_si128(c2[422],simde_mm_xor_si128(c2[10364],simde_mm_xor_si128(c2[9041],simde_mm_xor_si128(c2[6398],simde_mm_xor_si128(c2[1145],simde_mm_xor_si128(c2[1141],simde_mm_xor_si128(c2[10383],simde_mm_xor_si128(c2[484],simde_mm_xor_si128(c2[10421],simde_mm_xor_si128(c2[5802],simde_mm_xor_si128(c2[5138],simde_mm_xor_si128(c2[5798],simde_mm_xor_si128(c2[3185],simde_mm_xor_si128(c2[3854],simde_mm_xor_si128(c2[1866],simde_mm_xor_si128(c2[2526],simde_mm_xor_si128(c2[4507],simde_mm_xor_si128(c2[1902],simde_mm_xor_si128(c2[7831],simde_mm_xor_si128(c2[7840],simde_mm_xor_si128(c2[1273],simde_mm_xor_si128(c2[9845],simde_mm_xor_si128(c2[2582],simde_mm_xor_si128(c2[3242],simde_mm_xor_si128(c2[1290],simde_mm_xor_si128(c2[635],simde_mm_xor_si128(c2[1955],c2[2615]))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 30
|
|
d2[450]=simde_mm_xor_si128(c2[660],simde_mm_xor_si128(c2[6612],simde_mm_xor_si128(c2[3963],simde_mm_xor_si128(c2[4623],simde_mm_xor_si128(c2[5954],simde_mm_xor_si128(c2[6614],simde_mm_xor_si128(c2[6610],simde_mm_xor_si128(c2[8615],simde_mm_xor_si128(c2[8616],simde_mm_xor_si128(c2[9276],simde_mm_xor_si128(c2[38],simde_mm_xor_si128(c2[698],simde_mm_xor_si128(c2[5354],simde_mm_xor_si128(c2[4026],simde_mm_xor_si128(c2[6665],simde_mm_xor_si128(c2[7325],simde_mm_xor_si128(c2[90],simde_mm_xor_si128(c2[1410],simde_mm_xor_si128(c2[7351],simde_mm_xor_si128(c2[8011],simde_mm_xor_si128(c2[4745],simde_mm_xor_si128(c2[121],simde_mm_xor_si128(c2[781],simde_mm_xor_si128(c2[3425],simde_mm_xor_si128(c2[4085],simde_mm_xor_si128(c2[9401],simde_mm_xor_si128(c2[6764],simde_mm_xor_si128(c2[3456],simde_mm_xor_si128(c2[4116],simde_mm_xor_si128(c2[8771],simde_mm_xor_si128(c2[9433],simde_mm_xor_si128(c2[10093],simde_mm_xor_si128(c2[2829],simde_mm_xor_si128(c2[3489],simde_mm_xor_si128(c2[4182],simde_mm_xor_si128(c2[8132],simde_mm_xor_si128(c2[8792],simde_mm_xor_si128(c2[2193],simde_mm_xor_si128(c2[2853],simde_mm_xor_si128(c2[4202],simde_mm_xor_si128(c2[3552],simde_mm_xor_si128(c2[4212],simde_mm_xor_si128(c2[6192],simde_mm_xor_si128(c2[6852],simde_mm_xor_si128(c2[10179],simde_mm_xor_si128(c2[1600],simde_mm_xor_si128(c2[938],simde_mm_xor_si128(c2[1598],simde_mm_xor_si128(c2[7565],simde_mm_xor_si128(c2[8890],simde_mm_xor_si128(c2[9550],simde_mm_xor_si128(c2[6906],simde_mm_xor_si128(c2[7566],simde_mm_xor_si128(c2[4932],simde_mm_xor_si128(c2[4954],simde_mm_xor_si128(c2[3637],simde_mm_xor_si128(c2[995],simde_mm_xor_si128(c2[1655],simde_mm_xor_si128(c2[6974],simde_mm_xor_si128(c2[4983],simde_mm_xor_si128(c2[10267],simde_mm_xor_si128(c2[368],simde_mm_xor_si128(c2[3701],simde_mm_xor_si128(c2[10296],simde_mm_xor_si128(c2[397],simde_mm_xor_si128(c2[1058],simde_mm_xor_si128(c2[1718],simde_mm_xor_si128(c2[6991],simde_mm_xor_si128(c2[6372],simde_mm_xor_si128(c2[9672],simde_mm_xor_si128(c2[10332],simde_mm_xor_si128(c2[422],simde_mm_xor_si128(c2[1082],simde_mm_xor_si128(c2[1110],simde_mm_xor_si128(c2[10361],simde_mm_xor_si128(c2[7058],simde_mm_xor_si128(c2[7718],simde_mm_xor_si128(c2[2465],simde_mm_xor_si128(c2[2461],simde_mm_xor_si128(c2[1144],simde_mm_xor_si128(c2[1804],simde_mm_xor_si128(c2[1182],simde_mm_xor_si128(c2[6462],simde_mm_xor_si128(c2[7122],simde_mm_xor_si128(c2[6458],simde_mm_xor_si128(c2[7118],simde_mm_xor_si128(c2[4505],simde_mm_xor_si128(c2[4514],simde_mm_xor_si128(c2[5174],simde_mm_xor_si128(c2[3186],simde_mm_xor_si128(c2[3846],simde_mm_xor_si128(c2[3222],simde_mm_xor_si128(c2[9151],simde_mm_xor_si128(c2[8500],simde_mm_xor_si128(c2[9160],simde_mm_xor_si128(c2[2593],simde_mm_xor_si128(c2[10505],simde_mm_xor_si128(c2[606],simde_mm_xor_si128(c2[3902],simde_mm_xor_si128(c2[4562],simde_mm_xor_si128(c2[2610],simde_mm_xor_si128(c2[1955],simde_mm_xor_si128(c2[3275],c2[3935])))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 31
|
|
d2[465]=simde_mm_xor_si128(c2[3964],simde_mm_xor_si128(c2[2640],simde_mm_xor_si128(c2[9901],simde_mm_xor_si128(c2[8592],simde_mm_xor_si128(c2[7927],simde_mm_xor_si128(c2[6603],simde_mm_xor_si128(c2[9903],simde_mm_xor_si128(c2[7934],simde_mm_xor_si128(c2[8594],simde_mm_xor_si128(c2[1360],simde_mm_xor_si128(c2[36],simde_mm_xor_si128(c2[2021],simde_mm_xor_si128(c2[697],simde_mm_xor_si128(c2[4002],simde_mm_xor_si128(c2[2018],simde_mm_xor_si128(c2[2678],simde_mm_xor_si128(c2[5974],simde_mm_xor_si128(c2[8643],simde_mm_xor_si128(c2[7334],simde_mm_xor_si128(c2[7330],simde_mm_xor_si128(c2[6006],simde_mm_xor_si128(c2[70],simde_mm_xor_si128(c2[9305],simde_mm_xor_si128(c2[3394],simde_mm_xor_si128(c2[2070],simde_mm_xor_si128(c2[4714],simde_mm_xor_si128(c2[3390],simde_mm_xor_si128(c2[756],simde_mm_xor_si128(c2[9331],simde_mm_xor_si128(c2[9991],simde_mm_xor_si128(c2[8049],simde_mm_xor_si128(c2[6725],simde_mm_xor_si128(c2[4085],simde_mm_xor_si128(c2[2761],simde_mm_xor_si128(c2[7389],simde_mm_xor_si128(c2[5405],simde_mm_xor_si128(c2[6065],simde_mm_xor_si128(c2[2131],simde_mm_xor_si128(c2[822],simde_mm_xor_si128(c2[10053],simde_mm_xor_si128(c2[8744],simde_mm_xor_si128(c2[7420],simde_mm_xor_si128(c2[6096],simde_mm_xor_si128(c2[1501],simde_mm_xor_si128(c2[192],simde_mm_xor_si128(c2[2823],simde_mm_xor_si128(c2[1514],simde_mm_xor_si128(c2[6793],simde_mm_xor_si128(c2[4809],simde_mm_xor_si128(c2[5469],simde_mm_xor_si128(c2[7471],simde_mm_xor_si128(c2[6162],simde_mm_xor_si128(c2[1537],simde_mm_xor_si128(c2[213],simde_mm_xor_si128(c2[6157],simde_mm_xor_si128(c2[4173],simde_mm_xor_si128(c2[4833],simde_mm_xor_si128(c2[3519],simde_mm_xor_si128(c2[7506],simde_mm_xor_si128(c2[6182],simde_mm_xor_si128(c2[7501],simde_mm_xor_si128(c2[6192],simde_mm_xor_si128(c2[10141],simde_mm_xor_si128(c2[8172],simde_mm_xor_si128(c2[8832],simde_mm_xor_si128(c2[2924],simde_mm_xor_si128(c2[1600],simde_mm_xor_si128(c2[4904],simde_mm_xor_si128(c2[3580],simde_mm_xor_si128(c2[4902],simde_mm_xor_si128(c2[3578],simde_mm_xor_si128(c2[310],simde_mm_xor_si128(c2[9545],simde_mm_xor_si128(c2[2280],simde_mm_xor_si128(c2[971],simde_mm_xor_si128(c2[311],simde_mm_xor_si128(c2[8886],simde_mm_xor_si128(c2[9546],simde_mm_xor_si128(c2[8258],simde_mm_xor_si128(c2[6934],simde_mm_xor_si128(c2[6941],simde_mm_xor_si128(c2[5617],simde_mm_xor_si128(c2[4959],simde_mm_xor_si128(c2[2975],simde_mm_xor_si128(c2[3635],simde_mm_xor_si128(c2[10263],simde_mm_xor_si128(c2[8954],simde_mm_xor_si128(c2[8287],simde_mm_xor_si128(c2[6963],simde_mm_xor_si128(c2[3672],simde_mm_xor_si128(c2[1688],simde_mm_xor_si128(c2[2348],simde_mm_xor_si128(c2[6990],simde_mm_xor_si128(c2[5681],simde_mm_xor_si128(c2[3701],simde_mm_xor_si128(c2[2377],simde_mm_xor_si128(c2[5022],simde_mm_xor_si128(c2[3038],simde_mm_xor_si128(c2[3698],simde_mm_xor_si128(c2[9661],simde_mm_xor_si128(c2[8352],simde_mm_xor_si128(c2[3062],simde_mm_xor_si128(c2[1753],simde_mm_xor_si128(c2[4386],simde_mm_xor_si128(c2[2402],simde_mm_xor_si128(c2[3062],simde_mm_xor_si128(c2[4414],simde_mm_xor_si128(c2[3090],simde_mm_xor_si128(c2[3091],simde_mm_xor_si128(c2[1782],simde_mm_xor_si128(c2[463],simde_mm_xor_si128(c2[9698],simde_mm_xor_si128(c2[5769],simde_mm_xor_si128(c2[4445],simde_mm_xor_si128(c2[5765],simde_mm_xor_si128(c2[4441],simde_mm_xor_si128(c2[5108],simde_mm_xor_si128(c2[3124],simde_mm_xor_si128(c2[3784],simde_mm_xor_si128(c2[4471],simde_mm_xor_si128(c2[3162],simde_mm_xor_si128(c2[10411],simde_mm_xor_si128(c2[9102],simde_mm_xor_si128(c2[10422],simde_mm_xor_si128(c2[8438],simde_mm_xor_si128(c2[9098],simde_mm_xor_si128(c2[7809],simde_mm_xor_si128(c2[6485],simde_mm_xor_si128(c2[8463],simde_mm_xor_si128(c2[7154],simde_mm_xor_si128(c2[7150],simde_mm_xor_si128(c2[5166],simde_mm_xor_si128(c2[5826],simde_mm_xor_si128(c2[6511],simde_mm_xor_si128(c2[5202],simde_mm_xor_si128(c2[1896],simde_mm_xor_si128(c2[572],simde_mm_xor_si128(c2[1890],simde_mm_xor_si128(c2[581],simde_mm_xor_si128(c2[5882],simde_mm_xor_si128(c2[4573],simde_mm_xor_si128(c2[3910],simde_mm_xor_si128(c2[2586],simde_mm_xor_si128(c2[7866],simde_mm_xor_si128(c2[5882],simde_mm_xor_si128(c2[6542],simde_mm_xor_si128(c2[5914],simde_mm_xor_si128(c2[4590],simde_mm_xor_si128(c2[5259],simde_mm_xor_si128(c2[3935],simde_mm_xor_si128(c2[7239],simde_mm_xor_si128(c2[5255],c2[5915]))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 32
|
|
d2[480]=simde_mm_xor_si128(c2[7266],simde_mm_xor_si128(c2[2644],simde_mm_xor_si128(c2[10],simde_mm_xor_si128(c2[670],simde_mm_xor_si128(c2[1986],simde_mm_xor_si128(c2[2646],simde_mm_xor_si128(c2[4626],simde_mm_xor_si128(c2[4662],simde_mm_xor_si128(c2[4663],simde_mm_xor_si128(c2[5323],simde_mm_xor_si128(c2[6644],simde_mm_xor_si128(c2[7304],simde_mm_xor_si128(c2[1386],simde_mm_xor_si128(c2[73],simde_mm_xor_si128(c2[2712],simde_mm_xor_si128(c2[3372],simde_mm_xor_si128(c2[6696],simde_mm_xor_si128(c2[8016],simde_mm_xor_si128(c2[3398],simde_mm_xor_si128(c2[4058],simde_mm_xor_si128(c2[792],simde_mm_xor_si128(c2[6727],simde_mm_xor_si128(c2[7387],simde_mm_xor_si128(c2[10031],simde_mm_xor_si128(c2[132],simde_mm_xor_si128(c2[5433],simde_mm_xor_si128(c2[2796],simde_mm_xor_si128(c2[10062],simde_mm_xor_si128(c2[163],simde_mm_xor_si128(c2[4803],simde_mm_xor_si128(c2[5465],simde_mm_xor_si128(c2[6125],simde_mm_xor_si128(c2[9420],simde_mm_xor_si128(c2[10080],simde_mm_xor_si128(c2[214],simde_mm_xor_si128(c2[4179],simde_mm_xor_si128(c2[4839],simde_mm_xor_si128(c2[8799],simde_mm_xor_si128(c2[9459],simde_mm_xor_si128(c2[249],simde_mm_xor_si128(c2[10143],simde_mm_xor_si128(c2[244],simde_mm_xor_si128(c2[2224],simde_mm_xor_si128(c2[2884],simde_mm_xor_si128(c2[6211],simde_mm_xor_si128(c2[8191],simde_mm_xor_si128(c2[7544],simde_mm_xor_si128(c2[8204],simde_mm_xor_si128(c2[3612],simde_mm_xor_si128(c2[4922],simde_mm_xor_si128(c2[5582],simde_mm_xor_si128(c2[2953],simde_mm_xor_si128(c2[3613],simde_mm_xor_si128(c2[1001],simde_mm_xor_si128(c2[10243],simde_mm_xor_si128(c2[7601],simde_mm_xor_si128(c2[8261],simde_mm_xor_si128(c2[3006],simde_mm_xor_si128(c2[1030],simde_mm_xor_si128(c2[6314],simde_mm_xor_si128(c2[6974],simde_mm_xor_si128(c2[9606],simde_mm_xor_si128(c2[10292],simde_mm_xor_si128(c2[6343],simde_mm_xor_si128(c2[7003],simde_mm_xor_si128(c2[7664],simde_mm_xor_si128(c2[8324],simde_mm_xor_si128(c2[2404],simde_mm_xor_si128(c2[5704],simde_mm_xor_si128(c2[6364],simde_mm_xor_si128(c2[7028],simde_mm_xor_si128(c2[7688],simde_mm_xor_si128(c2[5049],simde_mm_xor_si128(c2[7716],simde_mm_xor_si128(c2[6393],simde_mm_xor_si128(c2[3090],simde_mm_xor_si128(c2[3750],simde_mm_xor_si128(c2[9071],simde_mm_xor_si128(c2[9067],simde_mm_xor_si128(c2[7750],simde_mm_xor_si128(c2[8410],simde_mm_xor_si128(c2[7773],simde_mm_xor_si128(c2[2494],simde_mm_xor_si128(c2[3154],simde_mm_xor_si128(c2[2490],simde_mm_xor_si128(c2[3150],simde_mm_xor_si128(c2[552],simde_mm_xor_si128(c2[546],simde_mm_xor_si128(c2[1206],simde_mm_xor_si128(c2[9792],simde_mm_xor_si128(c2[10452],simde_mm_xor_si128(c2[9813],simde_mm_xor_si128(c2[5198],simde_mm_xor_si128(c2[4532],simde_mm_xor_si128(c2[5192],simde_mm_xor_si128(c2[9184],simde_mm_xor_si128(c2[6552],simde_mm_xor_si128(c2[7212],simde_mm_xor_si128(c2[10508],simde_mm_xor_si128(c2[609],simde_mm_xor_si128(c2[9216],simde_mm_xor_si128(c2[8561],simde_mm_xor_si128(c2[9881],c2[10541])))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 33
|
|
d2[495]=simde_mm_xor_si128(c2[4662],simde_mm_xor_si128(c2[2708],simde_mm_xor_si128(c2[8260],c2[1294])));
|
|
|
|
//row: 34
|
|
d2[510]=simde_mm_xor_si128(c2[670],simde_mm_xor_si128(c2[8804],simde_mm_xor_si128(c2[9698],c2[3161])));
|
|
|
|
//row: 35
|
|
d2[525]=simde_mm_xor_si128(c2[7274],simde_mm_xor_si128(c2[2652],simde_mm_xor_si128(c2[663],simde_mm_xor_si128(c2[2654],simde_mm_xor_si128(c2[4655],simde_mm_xor_si128(c2[5316],simde_mm_xor_si128(c2[7297],simde_mm_xor_si128(c2[4664],simde_mm_xor_si128(c2[1394],simde_mm_xor_si128(c2[66],simde_mm_xor_si128(c2[3365],simde_mm_xor_si128(c2[6704],simde_mm_xor_si128(c2[8024],simde_mm_xor_si128(c2[4051],simde_mm_xor_si128(c2[785],simde_mm_xor_si128(c2[7380],simde_mm_xor_si128(c2[125],simde_mm_xor_si128(c2[5441],simde_mm_xor_si128(c2[2804],simde_mm_xor_si128(c2[156],simde_mm_xor_si128(c2[4811],simde_mm_xor_si128(c2[6133],simde_mm_xor_si128(c2[10088],simde_mm_xor_si128(c2[9430],simde_mm_xor_si128(c2[222],simde_mm_xor_si128(c2[4832],simde_mm_xor_si128(c2[9452],simde_mm_xor_si128(c2[242],simde_mm_xor_si128(c2[252],simde_mm_xor_si128(c2[2892],simde_mm_xor_si128(c2[6219],simde_mm_xor_si128(c2[8199],simde_mm_xor_si128(c2[8197],simde_mm_xor_si128(c2[3605],simde_mm_xor_si128(c2[5590],simde_mm_xor_si128(c2[3606],simde_mm_xor_si128(c2[994],simde_mm_xor_si128(c2[10236],simde_mm_xor_si128(c2[8254],simde_mm_xor_si128(c2[3014],simde_mm_xor_si128(c2[1023],simde_mm_xor_si128(c2[6967],simde_mm_xor_si128(c2[1029],simde_mm_xor_si128(c2[10300],simde_mm_xor_si128(c2[6996],simde_mm_xor_si128(c2[8317],simde_mm_xor_si128(c2[2412],simde_mm_xor_si128(c2[6372],simde_mm_xor_si128(c2[7681],simde_mm_xor_si128(c2[7724],simde_mm_xor_si128(c2[6401],simde_mm_xor_si128(c2[3758],simde_mm_xor_si128(c2[9064],simde_mm_xor_si128(c2[9060],simde_mm_xor_si128(c2[8403],simde_mm_xor_si128(c2[7781],simde_mm_xor_si128(c2[3162],simde_mm_xor_si128(c2[3158],simde_mm_xor_si128(c2[545],simde_mm_xor_si128(c2[1214],simde_mm_xor_si128(c2[10445],simde_mm_xor_si128(c2[9821],simde_mm_xor_si128(c2[5191],simde_mm_xor_si128(c2[5200],simde_mm_xor_si128(c2[9192],simde_mm_xor_si128(c2[7205],simde_mm_xor_si128(c2[602],simde_mm_xor_si128(c2[9224],simde_mm_xor_si128(c2[8554],c2[10534])))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 36
|
|
d2[540]=simde_mm_xor_si128(c2[7260],simde_mm_xor_si128(c2[10332],simde_mm_xor_si128(c2[7052],c2[3186])));
|
|
|
|
//row: 37
|
|
d2[555]=simde_mm_xor_si128(c2[5283],simde_mm_xor_si128(c2[5943],simde_mm_xor_si128(c2[1321],simde_mm_xor_si128(c2[9906],simde_mm_xor_si128(c2[1323],simde_mm_xor_si128(c2[2679],simde_mm_xor_si128(c2[3339],simde_mm_xor_si128(c2[4000],simde_mm_xor_si128(c2[5981],simde_mm_xor_si128(c2[7293],simde_mm_xor_si128(c2[9962],simde_mm_xor_si128(c2[63],simde_mm_xor_si128(c2[9309],simde_mm_xor_si128(c2[2049],simde_mm_xor_si128(c2[4713],simde_mm_xor_si128(c2[5373],simde_mm_xor_si128(c2[6693],simde_mm_xor_si128(c2[2735],simde_mm_xor_si128(c2[10028],simde_mm_xor_si128(c2[6064],simde_mm_xor_si128(c2[9368],simde_mm_xor_si128(c2[3450],simde_mm_xor_si128(c2[4110],simde_mm_xor_si128(c2[1473],simde_mm_xor_si128(c2[9399],simde_mm_xor_si128(c2[2820],simde_mm_xor_si128(c2[3480],simde_mm_xor_si128(c2[4802],simde_mm_xor_si128(c2[8772],simde_mm_xor_si128(c2[9450],simde_mm_xor_si128(c2[3516],simde_mm_xor_si128(c2[8136],simde_mm_xor_si128(c2[9485],simde_mm_xor_si128(c2[9480],simde_mm_xor_si128(c2[1561],simde_mm_xor_si128(c2[4243],simde_mm_xor_si128(c2[4903],simde_mm_xor_si128(c2[6883],simde_mm_xor_si128(c2[6881],simde_mm_xor_si128(c2[1629],simde_mm_xor_si128(c2[2289],simde_mm_xor_si128(c2[4274],simde_mm_xor_si128(c2[2290],simde_mm_xor_si128(c2[9577],simde_mm_xor_si128(c2[10237],simde_mm_xor_si128(c2[8920],simde_mm_xor_si128(c2[6938],simde_mm_xor_si128(c2[1023],simde_mm_xor_si128(c2[1683],simde_mm_xor_si128(c2[10266],simde_mm_xor_si128(c2[5651],simde_mm_xor_si128(c2[8324],simde_mm_xor_si128(c2[8984],simde_mm_xor_si128(c2[5680],simde_mm_xor_si128(c2[7001],simde_mm_xor_si128(c2[8322],simde_mm_xor_si128(c2[1081],simde_mm_xor_si128(c2[5041],simde_mm_xor_si128(c2[6365],simde_mm_xor_si128(c2[5733],simde_mm_xor_si128(c2[6393],simde_mm_xor_si128(c2[5070],simde_mm_xor_si128(c2[2442],simde_mm_xor_si128(c2[7088],simde_mm_xor_si128(c2[7748],simde_mm_xor_si128(c2[7744],simde_mm_xor_si128(c2[7087],simde_mm_xor_si128(c2[6450],simde_mm_xor_si128(c2[1831],simde_mm_xor_si128(c2[1842],simde_mm_xor_si128(c2[9128],simde_mm_xor_si128(c2[9788],simde_mm_xor_si128(c2[10442],simde_mm_xor_si128(c2[9129],simde_mm_xor_si128(c2[7830],simde_mm_xor_si128(c2[8490],simde_mm_xor_si128(c2[3875],simde_mm_xor_si128(c2[3884],simde_mm_xor_si128(c2[7201],simde_mm_xor_si128(c2[7861],simde_mm_xor_si128(c2[5889],simde_mm_xor_si128(c2[9845],simde_mm_xor_si128(c2[7233],simde_mm_xor_si128(c2[7893],simde_mm_xor_si128(c2[7238],c2[9218])))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 38
|
|
d2[570]=simde_mm_xor_si128(c2[5947],simde_mm_xor_si128(c2[6875],simde_mm_xor_si128(c2[6901],c2[8288])));
|
|
|
|
//row: 39
|
|
d2[585]=simde_mm_xor_si128(c2[2017],simde_mm_xor_si128(c2[8021],simde_mm_xor_si128(c2[5500],c2[3213])));
|
|
|
|
//row: 40
|
|
d2[600]=simde_mm_xor_si128(c2[2640],simde_mm_xor_si128(c2[4866],c2[9751]));
|
|
|
|
//row: 41
|
|
d2[615]=simde_mm_xor_si128(c2[3333],simde_mm_xor_si128(c2[8681],simde_mm_xor_si128(c2[4903],c2[5821])));
|
|
|
|
//row: 42
|
|
d2[630]=simde_mm_xor_si128(c2[9912],simde_mm_xor_si128(c2[5290],simde_mm_xor_si128(c2[2641],simde_mm_xor_si128(c2[3301],simde_mm_xor_si128(c2[4632],simde_mm_xor_si128(c2[5292],simde_mm_xor_si128(c2[9253],simde_mm_xor_si128(c2[7293],simde_mm_xor_si128(c2[7294],simde_mm_xor_si128(c2[7954],simde_mm_xor_si128(c2[9275],simde_mm_xor_si128(c2[9935],simde_mm_xor_si128(c2[4032],simde_mm_xor_si128(c2[2704],simde_mm_xor_si128(c2[5343],simde_mm_xor_si128(c2[6003],simde_mm_xor_si128(c2[9342],simde_mm_xor_si128(c2[103],simde_mm_xor_si128(c2[6044],simde_mm_xor_si128(c2[6704],simde_mm_xor_si128(c2[3423],simde_mm_xor_si128(c2[9373],simde_mm_xor_si128(c2[10033],simde_mm_xor_si128(c2[2103],simde_mm_xor_si128(c2[2763],simde_mm_xor_si128(c2[6730],simde_mm_xor_si128(c2[8079],simde_mm_xor_si128(c2[5442],simde_mm_xor_si128(c2[2134],simde_mm_xor_si128(c2[2794],simde_mm_xor_si128(c2[7449],simde_mm_xor_si128(c2[8111],simde_mm_xor_si128(c2[8771],simde_mm_xor_si128(c2[1507],simde_mm_xor_si128(c2[2167],simde_mm_xor_si128(c2[2860],simde_mm_xor_si128(c2[6810],simde_mm_xor_si128(c2[7470],simde_mm_xor_si128(c2[871],simde_mm_xor_si128(c2[1531],simde_mm_xor_si128(c2[2880],simde_mm_xor_si128(c2[2230],simde_mm_xor_si128(c2[2890],simde_mm_xor_si128(c2[4870],simde_mm_xor_si128(c2[5530],simde_mm_xor_si128(c2[8857],simde_mm_xor_si128(c2[278],simde_mm_xor_si128(c2[10175],simde_mm_xor_si128(c2[276],simde_mm_xor_si128(c2[6243],simde_mm_xor_si128(c2[7568],simde_mm_xor_si128(c2[8228],simde_mm_xor_si128(c2[5584],simde_mm_xor_si128(c2[6244],simde_mm_xor_si128(c2[3632],simde_mm_xor_si128(c2[2315],simde_mm_xor_si128(c2[10232],simde_mm_xor_si128(c2[333],simde_mm_xor_si128(c2[5652],simde_mm_xor_si128(c2[3661],simde_mm_xor_si128(c2[8945],simde_mm_xor_si128(c2[9605],simde_mm_xor_si128(c2[2379],simde_mm_xor_si128(c2[8974],simde_mm_xor_si128(c2[9634],simde_mm_xor_si128(c2[10295],simde_mm_xor_si128(c2[396],simde_mm_xor_si128(c2[5050],simde_mm_xor_si128(c2[8350],simde_mm_xor_si128(c2[9010],simde_mm_xor_si128(c2[9674],simde_mm_xor_si128(c2[10334],simde_mm_xor_si128(c2[10362],simde_mm_xor_si128(c2[9039],simde_mm_xor_si128(c2[5736],simde_mm_xor_si128(c2[6396],simde_mm_xor_si128(c2[1143],simde_mm_xor_si128(c2[1154],simde_mm_xor_si128(c2[10381],simde_mm_xor_si128(c2[482],simde_mm_xor_si128(c2[10419],simde_mm_xor_si128(c2[5140],simde_mm_xor_si128(c2[5800],simde_mm_xor_si128(c2[5136],simde_mm_xor_si128(c2[5796],simde_mm_xor_si128(c2[3183],simde_mm_xor_si128(c2[3192],simde_mm_xor_si128(c2[3852],simde_mm_xor_si128(c2[1864],simde_mm_xor_si128(c2[2524],simde_mm_xor_si128(c2[1900],simde_mm_xor_si128(c2[7844],simde_mm_xor_si128(c2[7178],simde_mm_xor_si128(c2[7838],simde_mm_xor_si128(c2[1271],simde_mm_xor_si128(c2[9183],simde_mm_xor_si128(c2[9843],simde_mm_xor_si128(c2[2580],simde_mm_xor_si128(c2[3240],simde_mm_xor_si128(c2[1303],simde_mm_xor_si128(c2[633],simde_mm_xor_si128(c2[1953],c2[2613]))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 43
|
|
d2[645]=simde_mm_xor_si128(c2[3301],simde_mm_xor_si128(c2[9253],simde_mm_xor_si128(c2[7264],simde_mm_xor_si128(c2[8580],simde_mm_xor_si128(c2[9240],simde_mm_xor_si128(c2[697],simde_mm_xor_si128(c2[1358],simde_mm_xor_si128(c2[2679],simde_mm_xor_si128(c2[3339],simde_mm_xor_si128(c2[3991],simde_mm_xor_si128(c2[7980],simde_mm_xor_si128(c2[6667],simde_mm_xor_si128(c2[9966],simde_mm_xor_si128(c2[2731],simde_mm_xor_si128(c2[4051],simde_mm_xor_si128(c2[9992],simde_mm_xor_si128(c2[93],simde_mm_xor_si128(c2[7386],simde_mm_xor_si128(c2[3422],simde_mm_xor_si128(c2[6066],simde_mm_xor_si128(c2[6726],simde_mm_xor_si128(c2[1483],simde_mm_xor_si128(c2[9390],simde_mm_xor_si128(c2[6757],simde_mm_xor_si128(c2[853],simde_mm_xor_si128(c2[2160],simde_mm_xor_si128(c2[5470],simde_mm_xor_si128(c2[6130],simde_mm_xor_si128(c2[6823],simde_mm_xor_si128(c2[874],simde_mm_xor_si128(c2[4834],simde_mm_xor_si128(c2[5494],simde_mm_xor_si128(c2[6843],simde_mm_xor_si128(c2[6853],simde_mm_xor_si128(c2[8833],simde_mm_xor_si128(c2[9493],simde_mm_xor_si128(c2[2261],simde_mm_xor_si128(c2[4241],simde_mm_xor_si128(c2[4239],simde_mm_xor_si128(c2[10206],simde_mm_xor_si128(c2[1632],simde_mm_xor_si128(c2[9547],simde_mm_xor_si128(c2[10207],simde_mm_xor_si128(c2[7595],simde_mm_xor_si128(c2[6278],simde_mm_xor_si128(c2[3636],simde_mm_xor_si128(c2[4296],simde_mm_xor_si128(c2[9600],simde_mm_xor_si128(c2[7624],simde_mm_xor_si128(c2[2349],simde_mm_xor_si128(c2[3009],simde_mm_xor_si128(c2[6342],simde_mm_xor_si128(c2[3038],simde_mm_xor_si128(c2[3699],simde_mm_xor_si128(c2[4359],simde_mm_xor_si128(c2[9013],simde_mm_xor_si128(c2[2414],simde_mm_xor_si128(c2[3063],simde_mm_xor_si128(c2[3723],simde_mm_xor_si128(c2[3751],simde_mm_xor_si128(c2[2443],simde_mm_xor_si128(c2[10359],simde_mm_xor_si128(c2[5106],simde_mm_xor_si128(c2[5102],simde_mm_xor_si128(c2[3785],simde_mm_xor_si128(c2[4445],simde_mm_xor_si128(c2[10387],simde_mm_xor_si128(c2[3823],simde_mm_xor_si128(c2[9763],simde_mm_xor_si128(c2[9099],simde_mm_xor_si128(c2[9759],simde_mm_xor_si128(c2[7146],simde_mm_xor_si128(c2[7800],simde_mm_xor_si128(c2[5827],simde_mm_xor_si128(c2[6487],simde_mm_xor_si128(c2[1203],simde_mm_xor_si128(c2[5863],simde_mm_xor_si128(c2[1233],simde_mm_xor_si128(c2[1242],simde_mm_xor_si128(c2[5234],simde_mm_xor_si128(c2[3247],simde_mm_xor_si128(c2[6543],simde_mm_xor_si128(c2[7203],simde_mm_xor_si128(c2[5251],simde_mm_xor_si128(c2[4596],simde_mm_xor_si128(c2[5916],c2[6576]))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 44
|
|
d2[660]=simde_mm_xor_si128(c2[7262],simde_mm_xor_si128(c2[2640],simde_mm_xor_si128(c2[666],simde_mm_xor_si128(c2[2642],simde_mm_xor_si128(c2[9911],simde_mm_xor_si128(c2[4658],simde_mm_xor_si128(c2[5319],simde_mm_xor_si128(c2[7300],simde_mm_xor_si128(c2[1382],simde_mm_xor_si128(c2[69],simde_mm_xor_si128(c2[3368],simde_mm_xor_si128(c2[6692],simde_mm_xor_si128(c2[8012],simde_mm_xor_si128(c2[4054],simde_mm_xor_si128(c2[788],simde_mm_xor_si128(c2[7383],simde_mm_xor_si128(c2[128],simde_mm_xor_si128(c2[5444],simde_mm_xor_si128(c2[2792],simde_mm_xor_si128(c2[159],simde_mm_xor_si128(c2[4814],simde_mm_xor_si128(c2[6121],simde_mm_xor_si128(c2[10091],simde_mm_xor_si128(c2[210],simde_mm_xor_si128(c2[4835],simde_mm_xor_si128(c2[9455],simde_mm_xor_si128(c2[2203],simde_mm_xor_si128(c2[245],simde_mm_xor_si128(c2[240],simde_mm_xor_si128(c2[2880],simde_mm_xor_si128(c2[6222],simde_mm_xor_si128(c2[8202],simde_mm_xor_si128(c2[8200],simde_mm_xor_si128(c2[7541],simde_mm_xor_si128(c2[3608],simde_mm_xor_si128(c2[5593],simde_mm_xor_si128(c2[3609],simde_mm_xor_si128(c2[997],simde_mm_xor_si128(c2[10239],simde_mm_xor_si128(c2[8257],simde_mm_xor_si128(c2[3002],simde_mm_xor_si128(c2[1026],simde_mm_xor_si128(c2[6970],simde_mm_xor_si128(c2[10303],simde_mm_xor_si128(c2[6999],simde_mm_xor_si128(c2[8320],simde_mm_xor_si128(c2[2400],simde_mm_xor_si128(c2[6360],simde_mm_xor_si128(c2[7684],simde_mm_xor_si128(c2[7712],simde_mm_xor_si128(c2[6404],simde_mm_xor_si128(c2[3761],simde_mm_xor_si128(c2[9067],simde_mm_xor_si128(c2[9063],simde_mm_xor_si128(c2[8406],simde_mm_xor_si128(c2[7784],simde_mm_xor_si128(c2[3150],simde_mm_xor_si128(c2[3161],simde_mm_xor_si128(c2[548],simde_mm_xor_si128(c2[1202],simde_mm_xor_si128(c2[10448],simde_mm_xor_si128(c2[9824],simde_mm_xor_si128(c2[5194],simde_mm_xor_si128(c2[5203],simde_mm_xor_si128(c2[9180],simde_mm_xor_si128(c2[7208],simde_mm_xor_si128(c2[605],simde_mm_xor_si128(c2[9212],simde_mm_xor_si128(c2[8557],c2[10537])))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 45
|
|
d2[675]=simde_mm_xor_si128(c2[701],simde_mm_xor_si128(c2[1507],c2[8885]));
|
|
}
|
|
}
|
|
#endif
|