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
139 lines
42 KiB
C
139 lines
42 KiB
C
#include "PHY/sse_intrin.h"
|
|
// generated code for Zc=80, byte encoding
|
|
static inline __attribute__ ((no_sanitize("address", "undefined"))) void ldpc_BG2_Zc80_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<5; i2++) {
|
|
c2=&csimd[i2];
|
|
d2=&dsimd[i2];
|
|
|
|
//row: 0
|
|
d2[0]=simde_mm_xor_si128(c2[1504],simde_mm_xor_si128(c2[803],simde_mm_xor_si128(c2[301],simde_mm_xor_si128(c2[1514],simde_mm_xor_si128(c2[1310],simde_mm_xor_si128(c2[512],simde_mm_xor_si128(c2[1524],simde_mm_xor_si128(c2[1420],simde_mm_xor_si128(c2[1534],simde_mm_xor_si128(c2[1132],simde_mm_xor_si128(c2[231],simde_mm_xor_si128(c2[1544],simde_mm_xor_si128(c2[840],simde_mm_xor_si128(c2[541],simde_mm_xor_si128(c2[1554],simde_mm_xor_si128(c2[154],simde_mm_xor_si128(c2[1564],simde_mm_xor_si128(c2[760],simde_mm_xor_si128(c2[1160],simde_mm_xor_si128(c2[1574],simde_mm_xor_si128(c2[873],simde_mm_xor_si128(c2[1584],simde_mm_xor_si128(c2[1181],simde_mm_xor_si128(c2[483],simde_mm_xor_si128(c2[1594],simde_mm_xor_si128(c2[693],c2[1392]))))))))))))))))))))))))));
|
|
|
|
//row: 1
|
|
d2[5]=simde_mm_xor_si128(c2[0],simde_mm_xor_si128(c2[1504],simde_mm_xor_si128(c2[803],simde_mm_xor_si128(c2[301],simde_mm_xor_si128(c2[10],simde_mm_xor_si128(c2[1514],simde_mm_xor_si128(c2[1310],simde_mm_xor_si128(c2[512],simde_mm_xor_si128(c2[20],simde_mm_xor_si128(c2[1524],simde_mm_xor_si128(c2[1420],simde_mm_xor_si128(c2[30],simde_mm_xor_si128(c2[1534],simde_mm_xor_si128(c2[1132],simde_mm_xor_si128(c2[231],simde_mm_xor_si128(c2[1544],simde_mm_xor_si128(c2[840],simde_mm_xor_si128(c2[541],simde_mm_xor_si128(c2[1554],simde_mm_xor_si128(c2[154],simde_mm_xor_si128(c2[60],simde_mm_xor_si128(c2[1564],simde_mm_xor_si128(c2[760],simde_mm_xor_si128(c2[1160],simde_mm_xor_si128(c2[1574],simde_mm_xor_si128(c2[873],simde_mm_xor_si128(c2[1584],simde_mm_xor_si128(c2[1181],simde_mm_xor_si128(c2[483],simde_mm_xor_si128(c2[90],simde_mm_xor_si128(c2[1594],simde_mm_xor_si128(c2[693],c2[1392]))))))))))))))))))))))))))))))));
|
|
|
|
//row: 2
|
|
d2[10]=simde_mm_xor_si128(c2[0],simde_mm_xor_si128(c2[1504],simde_mm_xor_si128(c2[903],simde_mm_xor_si128(c2[803],simde_mm_xor_si128(c2[301],simde_mm_xor_si128(c2[10],simde_mm_xor_si128(c2[1514],simde_mm_xor_si128(c2[1310],simde_mm_xor_si128(c2[512],simde_mm_xor_si128(c2[20],simde_mm_xor_si128(c2[1524],simde_mm_xor_si128(c2[1420],simde_mm_xor_si128(c2[30],simde_mm_xor_si128(c2[1534],simde_mm_xor_si128(c2[1232],simde_mm_xor_si128(c2[1132],simde_mm_xor_si128(c2[231],simde_mm_xor_si128(c2[40],simde_mm_xor_si128(c2[1544],simde_mm_xor_si128(c2[840],simde_mm_xor_si128(c2[541],simde_mm_xor_si128(c2[50],simde_mm_xor_si128(c2[1554],simde_mm_xor_si128(c2[154],simde_mm_xor_si128(c2[60],simde_mm_xor_si128(c2[1564],simde_mm_xor_si128(c2[860],simde_mm_xor_si128(c2[760],simde_mm_xor_si128(c2[1160],simde_mm_xor_si128(c2[70],simde_mm_xor_si128(c2[1574],simde_mm_xor_si128(c2[873],simde_mm_xor_si128(c2[80],simde_mm_xor_si128(c2[1584],simde_mm_xor_si128(c2[1181],simde_mm_xor_si128(c2[483],simde_mm_xor_si128(c2[90],simde_mm_xor_si128(c2[1594],simde_mm_xor_si128(c2[793],simde_mm_xor_si128(c2[693],c2[1392]))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 3
|
|
d2[15]=simde_mm_xor_si128(c2[1504],simde_mm_xor_si128(c2[803],simde_mm_xor_si128(c2[301],simde_mm_xor_si128(c2[1514],simde_mm_xor_si128(c2[1310],simde_mm_xor_si128(c2[612],simde_mm_xor_si128(c2[512],simde_mm_xor_si128(c2[1524],simde_mm_xor_si128(c2[1520],simde_mm_xor_si128(c2[1420],simde_mm_xor_si128(c2[1534],simde_mm_xor_si128(c2[1132],simde_mm_xor_si128(c2[231],simde_mm_xor_si128(c2[1544],simde_mm_xor_si128(c2[840],simde_mm_xor_si128(c2[641],simde_mm_xor_si128(c2[541],simde_mm_xor_si128(c2[1554],simde_mm_xor_si128(c2[254],simde_mm_xor_si128(c2[154],simde_mm_xor_si128(c2[1564],simde_mm_xor_si128(c2[760],simde_mm_xor_si128(c2[1260],simde_mm_xor_si128(c2[1160],simde_mm_xor_si128(c2[1574],simde_mm_xor_si128(c2[973],simde_mm_xor_si128(c2[873],simde_mm_xor_si128(c2[1584],simde_mm_xor_si128(c2[1181],simde_mm_xor_si128(c2[583],simde_mm_xor_si128(c2[483],simde_mm_xor_si128(c2[1594],simde_mm_xor_si128(c2[693],simde_mm_xor_si128(c2[1492],c2[1392]))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 4
|
|
d2[20]=simde_mm_xor_si128(c2[1304],simde_mm_xor_si128(c2[1204],simde_mm_xor_si128(c2[503],simde_mm_xor_si128(c2[1],simde_mm_xor_si128(c2[0],simde_mm_xor_si128(c2[1314],simde_mm_xor_si128(c2[1214],simde_mm_xor_si128(c2[1010],simde_mm_xor_si128(c2[212],simde_mm_xor_si128(c2[813],simde_mm_xor_si128(c2[1324],simde_mm_xor_si128(c2[1224],simde_mm_xor_si128(c2[1120],simde_mm_xor_si128(c2[1334],simde_mm_xor_si128(c2[1234],simde_mm_xor_si128(c2[832],simde_mm_xor_si128(c2[1530],simde_mm_xor_si128(c2[1244],simde_mm_xor_si128(c2[540],simde_mm_xor_si128(c2[241],simde_mm_xor_si128(c2[1254],simde_mm_xor_si128(c2[1453],simde_mm_xor_si128(c2[1364],simde_mm_xor_si128(c2[1264],simde_mm_xor_si128(c2[460],simde_mm_xor_si128(c2[860],simde_mm_xor_si128(c2[1274],simde_mm_xor_si128(c2[573],simde_mm_xor_si128(c2[1284],simde_mm_xor_si128(c2[881],simde_mm_xor_si128(c2[183],simde_mm_xor_si128(c2[1394],simde_mm_xor_si128(c2[1294],simde_mm_xor_si128(c2[393],c2[1092]))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 5
|
|
d2[25]=simde_mm_xor_si128(c2[4],simde_mm_xor_si128(c2[1503],simde_mm_xor_si128(c2[802],simde_mm_xor_si128(c2[300],simde_mm_xor_si128(c2[0],simde_mm_xor_si128(c2[14],simde_mm_xor_si128(c2[1513],simde_mm_xor_si128(c2[1314],simde_mm_xor_si128(c2[511],simde_mm_xor_si128(c2[313],simde_mm_xor_si128(c2[24],simde_mm_xor_si128(c2[1523],simde_mm_xor_si128(c2[1424],simde_mm_xor_si128(c2[34],simde_mm_xor_si128(c2[1533],simde_mm_xor_si128(c2[1131],simde_mm_xor_si128(c2[230],simde_mm_xor_si128(c2[1543],simde_mm_xor_si128(c2[844],simde_mm_xor_si128(c2[540],simde_mm_xor_si128(c2[1553],simde_mm_xor_si128(c2[153],simde_mm_xor_si128(c2[1453],simde_mm_xor_si128(c2[64],simde_mm_xor_si128(c2[1563],simde_mm_xor_si128(c2[764],simde_mm_xor_si128(c2[1164],simde_mm_xor_si128(c2[1573],simde_mm_xor_si128(c2[872],simde_mm_xor_si128(c2[1373],simde_mm_xor_si128(c2[1583],simde_mm_xor_si128(c2[1180],simde_mm_xor_si128(c2[482],simde_mm_xor_si128(c2[94],simde_mm_xor_si128(c2[1593],simde_mm_xor_si128(c2[692],c2[1391]))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 6
|
|
d2[30]=simde_mm_xor_si128(c2[404],simde_mm_xor_si128(c2[304],simde_mm_xor_si128(c2[1202],simde_mm_xor_si128(c2[700],simde_mm_xor_si128(c2[0],simde_mm_xor_si128(c2[414],simde_mm_xor_si128(c2[314],simde_mm_xor_si128(c2[110],simde_mm_xor_si128(c2[911],simde_mm_xor_si128(c2[424],simde_mm_xor_si128(c2[324],simde_mm_xor_si128(c2[220],simde_mm_xor_si128(c2[434],simde_mm_xor_si128(c2[334],simde_mm_xor_si128(c2[1531],simde_mm_xor_si128(c2[630],simde_mm_xor_si128(c2[344],simde_mm_xor_si128(c2[1244],simde_mm_xor_si128(c2[940],simde_mm_xor_si128(c2[354],simde_mm_xor_si128(c2[553],simde_mm_xor_si128(c2[1252],simde_mm_xor_si128(c2[464],simde_mm_xor_si128(c2[364],simde_mm_xor_si128(c2[1164],simde_mm_xor_si128(c2[1564],simde_mm_xor_si128(c2[374],simde_mm_xor_si128(c2[1272],simde_mm_xor_si128(c2[371],simde_mm_xor_si128(c2[384],simde_mm_xor_si128(c2[1580],simde_mm_xor_si128(c2[882],simde_mm_xor_si128(c2[494],simde_mm_xor_si128(c2[394],simde_mm_xor_si128(c2[1092],simde_mm_xor_si128(c2[192],c2[1392]))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 7
|
|
d2[35]=simde_mm_xor_si128(c2[1],simde_mm_xor_si128(c2[1500],simde_mm_xor_si128(c2[1304],simde_mm_xor_si128(c2[804],simde_mm_xor_si128(c2[603],simde_mm_xor_si128(c2[302],simde_mm_xor_si128(c2[101],simde_mm_xor_si128(c2[11],simde_mm_xor_si128(c2[1510],simde_mm_xor_si128(c2[1314],simde_mm_xor_si128(c2[1311],simde_mm_xor_si128(c2[1110],simde_mm_xor_si128(c2[513],simde_mm_xor_si128(c2[412],simde_mm_xor_si128(c2[312],simde_mm_xor_si128(c2[10],simde_mm_xor_si128(c2[21],simde_mm_xor_si128(c2[1520],simde_mm_xor_si128(c2[1324],simde_mm_xor_si128(c2[1421],simde_mm_xor_si128(c2[1320],simde_mm_xor_si128(c2[1220],simde_mm_xor_si128(c2[31],simde_mm_xor_si128(c2[1530],simde_mm_xor_si128(c2[1334],simde_mm_xor_si128(c2[1133],simde_mm_xor_si128(c2[932],simde_mm_xor_si128(c2[232],simde_mm_xor_si128(c2[31],simde_mm_xor_si128(c2[1540],simde_mm_xor_si128(c2[1344],simde_mm_xor_si128(c2[841],simde_mm_xor_si128(c2[640],simde_mm_xor_si128(c2[542],simde_mm_xor_si128(c2[441],simde_mm_xor_si128(c2[341],simde_mm_xor_si128(c2[1550],simde_mm_xor_si128(c2[1354],simde_mm_xor_si128(c2[150],simde_mm_xor_si128(c2[54],simde_mm_xor_si128(c2[1553],simde_mm_xor_si128(c2[1352],simde_mm_xor_si128(c2[61],simde_mm_xor_si128(c2[1560],simde_mm_xor_si128(c2[1364],simde_mm_xor_si128(c2[761],simde_mm_xor_si128(c2[560],simde_mm_xor_si128(c2[1161],simde_mm_xor_si128(c2[1060],simde_mm_xor_si128(c2[960],simde_mm_xor_si128(c2[1570],simde_mm_xor_si128(c2[1374],simde_mm_xor_si128(c2[874],simde_mm_xor_si128(c2[773],simde_mm_xor_si128(c2[673],simde_mm_xor_si128(c2[474],simde_mm_xor_si128(c2[1580],simde_mm_xor_si128(c2[1384],simde_mm_xor_si128(c2[1182],simde_mm_xor_si128(c2[981],simde_mm_xor_si128(c2[484],simde_mm_xor_si128(c2[383],simde_mm_xor_si128(c2[283],simde_mm_xor_si128(c2[91],simde_mm_xor_si128(c2[1590],simde_mm_xor_si128(c2[1394],simde_mm_xor_si128(c2[694],simde_mm_xor_si128(c2[493],simde_mm_xor_si128(c2[1393],simde_mm_xor_si128(c2[1292],c2[1192]))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 8
|
|
d2[40]=simde_mm_xor_si128(c2[700],simde_mm_xor_si128(c2[600],simde_mm_xor_si128(c2[4],simde_mm_xor_si128(c2[1503],simde_mm_xor_si128(c2[1001],simde_mm_xor_si128(c2[0],simde_mm_xor_si128(c2[710],simde_mm_xor_si128(c2[610],simde_mm_xor_si128(c2[411],simde_mm_xor_si128(c2[1212],simde_mm_xor_si128(c2[114],simde_mm_xor_si128(c2[720],simde_mm_xor_si128(c2[620],simde_mm_xor_si128(c2[521],simde_mm_xor_si128(c2[730],simde_mm_xor_si128(c2[630],simde_mm_xor_si128(c2[333],simde_mm_xor_si128(c2[233],simde_mm_xor_si128(c2[931],simde_mm_xor_si128(c2[740],simde_mm_xor_si128(c2[640],simde_mm_xor_si128(c2[1540],simde_mm_xor_si128(c2[1241],simde_mm_xor_si128(c2[750],simde_mm_xor_si128(c2[650],simde_mm_xor_si128(c2[854],simde_mm_xor_si128(c2[760],simde_mm_xor_si128(c2[660],simde_mm_xor_si128(c2[1560],simde_mm_xor_si128(c2[1460],simde_mm_xor_si128(c2[261],simde_mm_xor_si128(c2[770],simde_mm_xor_si128(c2[670],simde_mm_xor_si128(c2[1573],simde_mm_xor_si128(c2[780],simde_mm_xor_si128(c2[680],simde_mm_xor_si128(c2[282],simde_mm_xor_si128(c2[1183],simde_mm_xor_si128(c2[790],simde_mm_xor_si128(c2[690],simde_mm_xor_si128(c2[1493],simde_mm_xor_si128(c2[1393],c2[493]))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 9
|
|
d2[45]=simde_mm_xor_si128(c2[203],simde_mm_xor_si128(c2[500],simde_mm_xor_si128(c2[400],simde_mm_xor_si128(c2[1101],simde_mm_xor_si128(c2[1303],simde_mm_xor_si128(c2[604],simde_mm_xor_si128(c2[801],simde_mm_xor_si128(c2[213],simde_mm_xor_si128(c2[510],simde_mm_xor_si128(c2[410],simde_mm_xor_si128(c2[14],simde_mm_xor_si128(c2[211],simde_mm_xor_si128(c2[810],simde_mm_xor_si128(c2[1012],simde_mm_xor_si128(c2[10],simde_mm_xor_si128(c2[223],simde_mm_xor_si128(c2[520],simde_mm_xor_si128(c2[420],simde_mm_xor_si128(c2[124],simde_mm_xor_si128(c2[321],simde_mm_xor_si128(c2[233],simde_mm_xor_si128(c2[530],simde_mm_xor_si128(c2[430],simde_mm_xor_si128(c2[1430],simde_mm_xor_si128(c2[33],simde_mm_xor_si128(c2[534],simde_mm_xor_si128(c2[731],simde_mm_xor_si128(c2[243],simde_mm_xor_si128(c2[440],simde_mm_xor_si128(c2[1143],simde_mm_xor_si128(c2[1340],simde_mm_xor_si128(c2[844],simde_mm_xor_si128(c2[1041],simde_mm_xor_si128(c2[253],simde_mm_xor_si128(c2[450],simde_mm_xor_si128(c2[452],simde_mm_xor_si128(c2[654],simde_mm_xor_si128(c2[263],simde_mm_xor_si128(c2[560],simde_mm_xor_si128(c2[460],simde_mm_xor_si128(c2[1063],simde_mm_xor_si128(c2[1260],simde_mm_xor_si128(c2[1463],simde_mm_xor_si128(c2[61],simde_mm_xor_si128(c2[273],simde_mm_xor_si128(c2[470],simde_mm_xor_si128(c2[1171],simde_mm_xor_si128(c2[1373],simde_mm_xor_si128(c2[283],simde_mm_xor_si128(c2[480],simde_mm_xor_si128(c2[1484],simde_mm_xor_si128(c2[82],simde_mm_xor_si128(c2[781],simde_mm_xor_si128(c2[983],simde_mm_xor_si128(c2[181],simde_mm_xor_si128(c2[293],simde_mm_xor_si128(c2[590],simde_mm_xor_si128(c2[490],simde_mm_xor_si128(c2[991],simde_mm_xor_si128(c2[1193],simde_mm_xor_si128(c2[91],c2[293])))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 10
|
|
d2[50]=simde_mm_xor_si128(c2[0],simde_mm_xor_si128(c2[111],simde_mm_xor_si128(c2[1264],c2[471])));
|
|
|
|
//row: 11
|
|
d2[55]=simde_mm_xor_si128(c2[100],simde_mm_xor_si128(c2[1003],simde_mm_xor_si128(c2[501],simde_mm_xor_si128(c2[0],simde_mm_xor_si128(c2[110],simde_mm_xor_si128(c2[1510],simde_mm_xor_si128(c2[812],simde_mm_xor_si128(c2[712],simde_mm_xor_si128(c2[120],simde_mm_xor_si128(c2[121],simde_mm_xor_si128(c2[21],simde_mm_xor_si128(c2[130],simde_mm_xor_si128(c2[1332],simde_mm_xor_si128(c2[431],simde_mm_xor_si128(c2[140],simde_mm_xor_si128(c2[1040],simde_mm_xor_si128(c2[841],simde_mm_xor_si128(c2[741],simde_mm_xor_si128(c2[150],simde_mm_xor_si128(c2[454],simde_mm_xor_si128(c2[354],simde_mm_xor_si128(c2[160],simde_mm_xor_si128(c2[960],simde_mm_xor_si128(c2[1460],simde_mm_xor_si128(c2[1360],simde_mm_xor_si128(c2[170],simde_mm_xor_si128(c2[1173],simde_mm_xor_si128(c2[1073],simde_mm_xor_si128(c2[770],simde_mm_xor_si128(c2[180],simde_mm_xor_si128(c2[1381],simde_mm_xor_si128(c2[783],simde_mm_xor_si128(c2[683],simde_mm_xor_si128(c2[190],simde_mm_xor_si128(c2[893],simde_mm_xor_si128(c2[93],simde_mm_xor_si128(c2[1592],c2[490])))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 12
|
|
d2[60]=simde_mm_xor_si128(c2[3],simde_mm_xor_si128(c2[1502],simde_mm_xor_si128(c2[801],simde_mm_xor_si128(c2[304],simde_mm_xor_si128(c2[13],simde_mm_xor_si128(c2[1512],simde_mm_xor_si128(c2[1313],simde_mm_xor_si128(c2[510],simde_mm_xor_si128(c2[10],simde_mm_xor_si128(c2[23],simde_mm_xor_si128(c2[1522],simde_mm_xor_si128(c2[1423],simde_mm_xor_si128(c2[33],simde_mm_xor_si128(c2[1532],simde_mm_xor_si128(c2[1130],simde_mm_xor_si128(c2[234],simde_mm_xor_si128(c2[132],simde_mm_xor_si128(c2[1542],simde_mm_xor_si128(c2[843],simde_mm_xor_si128(c2[544],simde_mm_xor_si128(c2[1552],simde_mm_xor_si128(c2[152],simde_mm_xor_si128(c2[63],simde_mm_xor_si128(c2[1562],simde_mm_xor_si128(c2[763],simde_mm_xor_si128(c2[1163],simde_mm_xor_si128(c2[1572],simde_mm_xor_si128(c2[871],simde_mm_xor_si128(c2[1582],simde_mm_xor_si128(c2[1184],simde_mm_xor_si128(c2[481],simde_mm_xor_si128(c2[93],simde_mm_xor_si128(c2[1592],simde_mm_xor_si128(c2[691],c2[1390]))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 13
|
|
d2[65]=simde_mm_xor_si128(c2[901],simde_mm_xor_si128(c2[200],simde_mm_xor_si128(c2[1302],simde_mm_xor_si128(c2[0],simde_mm_xor_si128(c2[911],simde_mm_xor_si128(c2[712],simde_mm_xor_si128(c2[14],simde_mm_xor_si128(c2[1513],simde_mm_xor_si128(c2[12],simde_mm_xor_si128(c2[921],simde_mm_xor_si128(c2[922],simde_mm_xor_si128(c2[822],simde_mm_xor_si128(c2[931],simde_mm_xor_si128(c2[534],simde_mm_xor_si128(c2[1232],simde_mm_xor_si128(c2[941],simde_mm_xor_si128(c2[242],simde_mm_xor_si128(c2[43],simde_mm_xor_si128(c2[1542],simde_mm_xor_si128(c2[951],simde_mm_xor_si128(c2[1250],simde_mm_xor_si128(c2[1150],simde_mm_xor_si128(c2[961],simde_mm_xor_si128(c2[162],simde_mm_xor_si128(c2[662],simde_mm_xor_si128(c2[562],simde_mm_xor_si128(c2[971],simde_mm_xor_si128(c2[370],simde_mm_xor_si128(c2[270],simde_mm_xor_si128(c2[981],simde_mm_xor_si128(c2[583],simde_mm_xor_si128(c2[1584],simde_mm_xor_si128(c2[1484],simde_mm_xor_si128(c2[681],simde_mm_xor_si128(c2[991],simde_mm_xor_si128(c2[90],simde_mm_xor_si128(c2[894],c2[794])))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 14
|
|
d2[70]=simde_mm_xor_si128(c2[903],simde_mm_xor_si128(c2[803],simde_mm_xor_si128(c2[1001],simde_mm_xor_si128(c2[102],simde_mm_xor_si128(c2[300],simde_mm_xor_si128(c2[1204],simde_mm_xor_si128(c2[1402],simde_mm_xor_si128(c2[913],simde_mm_xor_si128(c2[813],simde_mm_xor_si128(c2[1011],simde_mm_xor_si128(c2[614],simde_mm_xor_si128(c2[812],simde_mm_xor_si128(c2[1410],simde_mm_xor_si128(c2[114],simde_mm_xor_si128(c2[14],simde_mm_xor_si128(c2[10],simde_mm_xor_si128(c2[923],simde_mm_xor_si128(c2[823],simde_mm_xor_si128(c2[1021],simde_mm_xor_si128(c2[724],simde_mm_xor_si128(c2[1022],simde_mm_xor_si128(c2[922],simde_mm_xor_si128(c2[933],simde_mm_xor_si128(c2[833],simde_mm_xor_si128(c2[1031],simde_mm_xor_si128(c2[431],simde_mm_xor_si128(c2[634],simde_mm_xor_si128(c2[1134],simde_mm_xor_si128(c2[1332],simde_mm_xor_si128(c2[843],simde_mm_xor_si128(c2[1041],simde_mm_xor_si128(c2[144],simde_mm_xor_si128(c2[342],simde_mm_xor_si128(c2[1444],simde_mm_xor_si128(c2[143],simde_mm_xor_si128(c2[43],simde_mm_xor_si128(c2[853],simde_mm_xor_si128(c2[1051],simde_mm_xor_si128(c2[1052],simde_mm_xor_si128(c2[1350],simde_mm_xor_si128(c2[1250],simde_mm_xor_si128(c2[963],simde_mm_xor_si128(c2[863],simde_mm_xor_si128(c2[1061],simde_mm_xor_si128(c2[64],simde_mm_xor_si128(c2[262],simde_mm_xor_si128(c2[464],simde_mm_xor_si128(c2[762],simde_mm_xor_si128(c2[662],simde_mm_xor_si128(c2[1063],simde_mm_xor_si128(c2[873],simde_mm_xor_si128(c2[1071],simde_mm_xor_si128(c2[172],simde_mm_xor_si128(c2[470],simde_mm_xor_si128(c2[370],simde_mm_xor_si128(c2[883],simde_mm_xor_si128(c2[1081],simde_mm_xor_si128(c2[480],simde_mm_xor_si128(c2[683],simde_mm_xor_si128(c2[1381],simde_mm_xor_si128(c2[80],simde_mm_xor_si128(c2[1584],simde_mm_xor_si128(c2[993],simde_mm_xor_si128(c2[893],simde_mm_xor_si128(c2[1091],simde_mm_xor_si128(c2[1591],simde_mm_xor_si128(c2[190],simde_mm_xor_si128(c2[691],simde_mm_xor_si128(c2[994],c2[894])))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 15
|
|
d2[75]=simde_mm_xor_si128(c2[804],simde_mm_xor_si128(c2[301],simde_mm_xor_si128(c2[201],simde_mm_xor_si128(c2[103],simde_mm_xor_si128(c2[1104],simde_mm_xor_si128(c2[1200],simde_mm_xor_si128(c2[602],simde_mm_xor_si128(c2[0],simde_mm_xor_si128(c2[814],simde_mm_xor_si128(c2[311],simde_mm_xor_si128(c2[211],simde_mm_xor_si128(c2[610],simde_mm_xor_si128(c2[12],simde_mm_xor_si128(c2[1411],simde_mm_xor_si128(c2[813],simde_mm_xor_si128(c2[824],simde_mm_xor_si128(c2[321],simde_mm_xor_si128(c2[221],simde_mm_xor_si128(c2[720],simde_mm_xor_si128(c2[122],simde_mm_xor_si128(c2[834],simde_mm_xor_si128(c2[331],simde_mm_xor_si128(c2[231],simde_mm_xor_si128(c2[432],simde_mm_xor_si128(c2[1433],simde_mm_xor_si128(c2[1130],simde_mm_xor_si128(c2[532],simde_mm_xor_si128(c2[844],simde_mm_xor_si128(c2[241],simde_mm_xor_si128(c2[140],simde_mm_xor_si128(c2[1141],simde_mm_xor_si128(c2[1440],simde_mm_xor_si128(c2[842],simde_mm_xor_si128(c2[854],simde_mm_xor_si128(c2[251],simde_mm_xor_si128(c2[1053],simde_mm_xor_si128(c2[450],simde_mm_xor_si128(c2[864],simde_mm_xor_si128(c2[361],simde_mm_xor_si128(c2[261],simde_mm_xor_si128(c2[60],simde_mm_xor_si128(c2[1061],simde_mm_xor_si128(c2[460],simde_mm_xor_si128(c2[1461],simde_mm_xor_si128(c2[874],simde_mm_xor_si128(c2[271],simde_mm_xor_si128(c2[173],simde_mm_xor_si128(c2[1174],simde_mm_xor_si128(c2[884],simde_mm_xor_si128(c2[281],simde_mm_xor_si128(c2[481],simde_mm_xor_si128(c2[1482],simde_mm_xor_si128(c2[1382],simde_mm_xor_si128(c2[784],simde_mm_xor_si128(c2[894],simde_mm_xor_si128(c2[391],simde_mm_xor_si128(c2[291],simde_mm_xor_si128(c2[1592],simde_mm_xor_si128(c2[994],simde_mm_xor_si128(c2[692],c2[94]))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 16
|
|
d2[80]=simde_mm_xor_si128(c2[1501],simde_mm_xor_si128(c2[1401],simde_mm_xor_si128(c2[1503],simde_mm_xor_si128(c2[1403],simde_mm_xor_si128(c2[700],simde_mm_xor_si128(c2[802],simde_mm_xor_si128(c2[702],simde_mm_xor_si128(c2[203],simde_mm_xor_si128(c2[200],simde_mm_xor_si128(c2[1511],simde_mm_xor_si128(c2[1411],simde_mm_xor_si128(c2[1513],simde_mm_xor_si128(c2[1413],simde_mm_xor_si128(c2[1212],simde_mm_xor_si128(c2[1214],simde_mm_xor_si128(c2[414],simde_mm_xor_si128(c2[411],simde_mm_xor_si128(c2[10],simde_mm_xor_si128(c2[1521],simde_mm_xor_si128(c2[1421],simde_mm_xor_si128(c2[1523],simde_mm_xor_si128(c2[1423],simde_mm_xor_si128(c2[1322],simde_mm_xor_si128(c2[1324],simde_mm_xor_si128(c2[1531],simde_mm_xor_si128(c2[1431],simde_mm_xor_si128(c2[1533],simde_mm_xor_si128(c2[1433],simde_mm_xor_si128(c2[1034],simde_mm_xor_si128(c2[1131],simde_mm_xor_si128(c2[1031],simde_mm_xor_si128(c2[133],simde_mm_xor_si128(c2[130],simde_mm_xor_si128(c2[1441],simde_mm_xor_si128(c2[1543],simde_mm_xor_si128(c2[1443],simde_mm_xor_si128(c2[742],simde_mm_xor_si128(c2[744],simde_mm_xor_si128(c2[443],simde_mm_xor_si128(c2[440],simde_mm_xor_si128(c2[1451],simde_mm_xor_si128(c2[1553],simde_mm_xor_si128(c2[1453],simde_mm_xor_si128(c2[51],simde_mm_xor_si128(c2[53],simde_mm_xor_si128(c2[1561],simde_mm_xor_si128(c2[1461],simde_mm_xor_si128(c2[1563],simde_mm_xor_si128(c2[1463],simde_mm_xor_si128(c2[662],simde_mm_xor_si128(c2[764],simde_mm_xor_si128(c2[664],simde_mm_xor_si128(c2[1062],simde_mm_xor_si128(c2[1064],simde_mm_xor_si128(c2[1471],simde_mm_xor_si128(c2[1573],simde_mm_xor_si128(c2[1473],simde_mm_xor_si128(c2[770],simde_mm_xor_si128(c2[772],simde_mm_xor_si128(c2[1481],simde_mm_xor_si128(c2[1583],simde_mm_xor_si128(c2[1483],simde_mm_xor_si128(c2[1083],simde_mm_xor_si128(c2[1080],simde_mm_xor_si128(c2[380],simde_mm_xor_si128(c2[382],simde_mm_xor_si128(c2[1591],simde_mm_xor_si128(c2[1491],simde_mm_xor_si128(c2[1593],simde_mm_xor_si128(c2[1493],simde_mm_xor_si128(c2[590],simde_mm_xor_si128(c2[692],simde_mm_xor_si128(c2[592],simde_mm_xor_si128(c2[1294],simde_mm_xor_si128(c2[1291],c2[1594])))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 17
|
|
d2[85]=simde_mm_xor_si128(c2[1301],simde_mm_xor_si128(c2[1201],simde_mm_xor_si128(c2[201],simde_mm_xor_si128(c2[101],simde_mm_xor_si128(c2[500],simde_mm_xor_si128(c2[1104],simde_mm_xor_si128(c2[1004],simde_mm_xor_si128(c2[3],simde_mm_xor_si128(c2[502],simde_mm_xor_si128(c2[1311],simde_mm_xor_si128(c2[1211],simde_mm_xor_si128(c2[211],simde_mm_xor_si128(c2[111],simde_mm_xor_si128(c2[1012],simde_mm_xor_si128(c2[1511],simde_mm_xor_si128(c2[214],simde_mm_xor_si128(c2[713],simde_mm_xor_si128(c2[10],simde_mm_xor_si128(c2[1321],simde_mm_xor_si128(c2[1221],simde_mm_xor_si128(c2[221],simde_mm_xor_si128(c2[121],simde_mm_xor_si128(c2[1122],simde_mm_xor_si128(c2[22],simde_mm_xor_si128(c2[1331],simde_mm_xor_si128(c2[1231],simde_mm_xor_si128(c2[231],simde_mm_xor_si128(c2[131],simde_mm_xor_si128(c2[834],simde_mm_xor_si128(c2[1433],simde_mm_xor_si128(c2[1333],simde_mm_xor_si128(c2[1532],simde_mm_xor_si128(c2[432],simde_mm_xor_si128(c2[1241],simde_mm_xor_si128(c2[241],simde_mm_xor_si128(c2[141],simde_mm_xor_si128(c2[542],simde_mm_xor_si128(c2[1041],simde_mm_xor_si128(c2[243],simde_mm_xor_si128(c2[742],simde_mm_xor_si128(c2[1251],simde_mm_xor_si128(c2[251],simde_mm_xor_si128(c2[151],simde_mm_xor_si128(c2[1450],simde_mm_xor_si128(c2[350],simde_mm_xor_si128(c2[851],simde_mm_xor_si128(c2[1361],simde_mm_xor_si128(c2[1261],simde_mm_xor_si128(c2[261],simde_mm_xor_si128(c2[161],simde_mm_xor_si128(c2[462],simde_mm_xor_si128(c2[1061],simde_mm_xor_si128(c2[961],simde_mm_xor_si128(c2[862],simde_mm_xor_si128(c2[1361],simde_mm_xor_si128(c2[1271],simde_mm_xor_si128(c2[271],simde_mm_xor_si128(c2[171],simde_mm_xor_si128(c2[570],simde_mm_xor_si128(c2[1074],simde_mm_xor_si128(c2[1281],simde_mm_xor_si128(c2[281],simde_mm_xor_si128(c2[181],simde_mm_xor_si128(c2[883],simde_mm_xor_si128(c2[1382],simde_mm_xor_si128(c2[180],simde_mm_xor_si128(c2[684],simde_mm_xor_si128(c2[1391],simde_mm_xor_si128(c2[1291],simde_mm_xor_si128(c2[291],simde_mm_xor_si128(c2[191],simde_mm_xor_si128(c2[390],simde_mm_xor_si128(c2[994],simde_mm_xor_si128(c2[894],simde_mm_xor_si128(c2[1094],c2[1593])))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 18
|
|
d2[90]=simde_mm_xor_si128(c2[0],simde_mm_xor_si128(c2[261],c2[670]));
|
|
|
|
//row: 19
|
|
d2[95]=simde_mm_xor_si128(c2[904],simde_mm_xor_si128(c2[203],simde_mm_xor_si128(c2[1300],simde_mm_xor_si128(c2[0],simde_mm_xor_si128(c2[914],simde_mm_xor_si128(c2[710],simde_mm_xor_si128(c2[1511],simde_mm_xor_si128(c2[1414],simde_mm_xor_si128(c2[924],simde_mm_xor_si128(c2[820],simde_mm_xor_si128(c2[934],simde_mm_xor_si128(c2[532],simde_mm_xor_si128(c2[1230],simde_mm_xor_si128(c2[944],simde_mm_xor_si128(c2[240],simde_mm_xor_si128(c2[1540],simde_mm_xor_si128(c2[954],simde_mm_xor_si128(c2[1153],simde_mm_xor_si128(c2[964],simde_mm_xor_si128(c2[160],simde_mm_xor_si128(c2[560],simde_mm_xor_si128(c2[974],simde_mm_xor_si128(c2[273],simde_mm_xor_si128(c2[984],simde_mm_xor_si128(c2[581],simde_mm_xor_si128(c2[1482],simde_mm_xor_si128(c2[994],simde_mm_xor_si128(c2[93],c2[792]))))))))))))))))))))))))))));
|
|
|
|
//row: 20
|
|
d2[100]=simde_mm_xor_si128(c2[801],simde_mm_xor_si128(c2[701],simde_mm_xor_si128(c2[0],simde_mm_xor_si128(c2[1102],simde_mm_xor_si128(c2[811],simde_mm_xor_si128(c2[711],simde_mm_xor_si128(c2[512],simde_mm_xor_si128(c2[1313],simde_mm_xor_si128(c2[10],simde_mm_xor_si128(c2[821],simde_mm_xor_si128(c2[721],simde_mm_xor_si128(c2[622],simde_mm_xor_si128(c2[831],simde_mm_xor_si128(c2[731],simde_mm_xor_si128(c2[334],simde_mm_xor_si128(c2[1032],simde_mm_xor_si128(c2[741],simde_mm_xor_si128(c2[42],simde_mm_xor_si128(c2[1342],simde_mm_xor_si128(c2[444],simde_mm_xor_si128(c2[751],simde_mm_xor_si128(c2[950],simde_mm_xor_si128(c2[861],simde_mm_xor_si128(c2[761],simde_mm_xor_si128(c2[1561],simde_mm_xor_si128(c2[362],simde_mm_xor_si128(c2[771],simde_mm_xor_si128(c2[70],simde_mm_xor_si128(c2[781],simde_mm_xor_si128(c2[383],simde_mm_xor_si128(c2[1284],simde_mm_xor_si128(c2[891],simde_mm_xor_si128(c2[791],simde_mm_xor_si128(c2[1494],c2[594]))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 21
|
|
d2[105]=simde_mm_xor_si128(c2[2],simde_mm_xor_si128(c2[900],simde_mm_xor_si128(c2[403],simde_mm_xor_si128(c2[0],simde_mm_xor_si128(c2[12],simde_mm_xor_si128(c2[1412],simde_mm_xor_si128(c2[714],simde_mm_xor_si128(c2[614],simde_mm_xor_si128(c2[22],simde_mm_xor_si128(c2[23],simde_mm_xor_si128(c2[1522],simde_mm_xor_si128(c2[32],simde_mm_xor_si128(c2[1234],simde_mm_xor_si128(c2[333],simde_mm_xor_si128(c2[42],simde_mm_xor_si128(c2[942],simde_mm_xor_si128(c2[743],simde_mm_xor_si128(c2[643],simde_mm_xor_si128(c2[52],simde_mm_xor_si128(c2[351],simde_mm_xor_si128(c2[251],simde_mm_xor_si128(c2[62],simde_mm_xor_si128(c2[862],simde_mm_xor_si128(c2[1362],simde_mm_xor_si128(c2[1262],simde_mm_xor_si128(c2[72],simde_mm_xor_si128(c2[1070],simde_mm_xor_si128(c2[970],simde_mm_xor_si128(c2[82],simde_mm_xor_si128(c2[1283],simde_mm_xor_si128(c2[680],simde_mm_xor_si128(c2[580],simde_mm_xor_si128(c2[181],simde_mm_xor_si128(c2[92],simde_mm_xor_si128(c2[790],simde_mm_xor_si128(c2[1594],c2[1494]))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 22
|
|
d2[110]=simde_mm_xor_si128(c2[10],c2[420]);
|
|
|
|
//row: 23
|
|
d2[115]=simde_mm_xor_si128(c2[0],simde_mm_xor_si128(c2[1134],c2[1454]));
|
|
|
|
//row: 24
|
|
d2[120]=simde_mm_xor_si128(c2[10],simde_mm_xor_si128(c2[524],c2[790]));
|
|
|
|
//row: 25
|
|
d2[125]=simde_mm_xor_si128(c2[0],c2[154]);
|
|
|
|
//row: 26
|
|
d2[130]=simde_mm_xor_si128(c2[1300],simde_mm_xor_si128(c2[1200],simde_mm_xor_si128(c2[600],simde_mm_xor_si128(c2[604],simde_mm_xor_si128(c2[504],simde_mm_xor_si128(c2[1503],simde_mm_xor_si128(c2[2],simde_mm_xor_si128(c2[1001],simde_mm_xor_si128(c2[1310],simde_mm_xor_si128(c2[1210],simde_mm_xor_si128(c2[610],simde_mm_xor_si128(c2[1011],simde_mm_xor_si128(c2[411],simde_mm_xor_si128(c2[213],simde_mm_xor_si128(c2[1312],simde_mm_xor_si128(c2[1212],simde_mm_xor_si128(c2[1320],simde_mm_xor_si128(c2[1220],simde_mm_xor_si128(c2[620],simde_mm_xor_si128(c2[1121],simde_mm_xor_si128(c2[621],simde_mm_xor_si128(c2[521],simde_mm_xor_si128(c2[20],simde_mm_xor_si128(c2[1330],simde_mm_xor_si128(c2[1230],simde_mm_xor_si128(c2[630],simde_mm_xor_si128(c2[933],simde_mm_xor_si128(c2[833],simde_mm_xor_si128(c2[233],simde_mm_xor_si128(c2[1531],simde_mm_xor_si128(c2[931],simde_mm_xor_si128(c2[1340],simde_mm_xor_si128(c2[1240],simde_mm_xor_si128(c2[640],simde_mm_xor_si128(c2[541],simde_mm_xor_si128(c2[1540],simde_mm_xor_si128(c2[242],simde_mm_xor_si128(c2[1341],simde_mm_xor_si128(c2[1241],simde_mm_xor_si128(c2[1350],simde_mm_xor_si128(c2[1250],simde_mm_xor_si128(c2[650],simde_mm_xor_si128(c2[1454],simde_mm_xor_si128(c2[954],simde_mm_xor_si128(c2[854],simde_mm_xor_si128(c2[1360],simde_mm_xor_si128(c2[1260],simde_mm_xor_si128(c2[660],simde_mm_xor_si128(c2[561],simde_mm_xor_si128(c2[461],simde_mm_xor_si128(c2[1460],simde_mm_xor_si128(c2[861],simde_mm_xor_si128(c2[361],simde_mm_xor_si128(c2[261],simde_mm_xor_si128(c2[1370],simde_mm_xor_si128(c2[1270],simde_mm_xor_si128(c2[670],simde_mm_xor_si128(c2[574],simde_mm_xor_si128(c2[74],simde_mm_xor_si128(c2[1573],simde_mm_xor_si128(c2[471],simde_mm_xor_si128(c2[1380],simde_mm_xor_si128(c2[1280],simde_mm_xor_si128(c2[680],simde_mm_xor_si128(c2[882],simde_mm_xor_si128(c2[282],simde_mm_xor_si128(c2[184],simde_mm_xor_si128(c2[1283],simde_mm_xor_si128(c2[1183],simde_mm_xor_si128(c2[1390],simde_mm_xor_si128(c2[1290],simde_mm_xor_si128(c2[690],simde_mm_xor_si128(c2[494],simde_mm_xor_si128(c2[394],simde_mm_xor_si128(c2[1393],simde_mm_xor_si128(c2[1093],simde_mm_xor_si128(c2[593],c2[493])))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 27
|
|
d2[135]=simde_mm_xor_si128(c2[0],c2[62]);
|
|
|
|
//row: 28
|
|
d2[140]=simde_mm_xor_si128(c2[10],simde_mm_xor_si128(c2[1422],c2[1451]));
|
|
|
|
//row: 29
|
|
d2[145]=simde_mm_xor_si128(c2[0],c2[1044]);
|
|
|
|
//row: 30
|
|
d2[150]=simde_mm_xor_si128(c2[20],simde_mm_xor_si128(c2[352],simde_mm_xor_si128(c2[373],c2[693])));
|
|
|
|
//row: 31
|
|
d2[155]=simde_mm_xor_si128(c2[301],simde_mm_xor_si128(c2[1204],simde_mm_xor_si128(c2[702],simde_mm_xor_si128(c2[311],simde_mm_xor_si128(c2[112],simde_mm_xor_si128(c2[1013],simde_mm_xor_si128(c2[913],simde_mm_xor_si128(c2[10],simde_mm_xor_si128(c2[321],simde_mm_xor_si128(c2[322],simde_mm_xor_si128(c2[222],simde_mm_xor_si128(c2[331],simde_mm_xor_si128(c2[1533],simde_mm_xor_si128(c2[632],simde_mm_xor_si128(c2[341],simde_mm_xor_si128(c2[1241],simde_mm_xor_si128(c2[1042],simde_mm_xor_si128(c2[942],simde_mm_xor_si128(c2[351],simde_mm_xor_si128(c2[650],simde_mm_xor_si128(c2[550],simde_mm_xor_si128(c2[361],simde_mm_xor_si128(c2[1161],simde_mm_xor_si128(c2[62],simde_mm_xor_si128(c2[1561],simde_mm_xor_si128(c2[371],simde_mm_xor_si128(c2[1374],simde_mm_xor_si128(c2[1274],simde_mm_xor_si128(c2[381],simde_mm_xor_si128(c2[1582],simde_mm_xor_si128(c2[984],simde_mm_xor_si128(c2[884],simde_mm_xor_si128(c2[391],simde_mm_xor_si128(c2[1094],simde_mm_xor_si128(c2[294],c2[194])))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 32
|
|
d2[160]=simde_mm_xor_si128(c2[1002],simde_mm_xor_si128(c2[902],simde_mm_xor_si128(c2[301],simde_mm_xor_si128(c2[201],simde_mm_xor_si128(c2[1303],simde_mm_xor_si128(c2[0],simde_mm_xor_si128(c2[1012],simde_mm_xor_si128(c2[912],simde_mm_xor_si128(c2[713],simde_mm_xor_si128(c2[1514],simde_mm_xor_si128(c2[1022],simde_mm_xor_si128(c2[922],simde_mm_xor_si128(c2[823],simde_mm_xor_si128(c2[1032],simde_mm_xor_si128(c2[932],simde_mm_xor_si128(c2[630],simde_mm_xor_si128(c2[530],simde_mm_xor_si128(c2[1233],simde_mm_xor_si128(c2[1042],simde_mm_xor_si128(c2[942],simde_mm_xor_si128(c2[243],simde_mm_xor_si128(c2[1543],simde_mm_xor_si128(c2[1052],simde_mm_xor_si128(c2[952],simde_mm_xor_si128(c2[1151],simde_mm_xor_si128(c2[451],simde_mm_xor_si128(c2[1062],simde_mm_xor_si128(c2[962],simde_mm_xor_si128(c2[263],simde_mm_xor_si128(c2[163],simde_mm_xor_si128(c2[563],simde_mm_xor_si128(c2[1072],simde_mm_xor_si128(c2[972],simde_mm_xor_si128(c2[271],simde_mm_xor_si128(c2[1082],simde_mm_xor_si128(c2[982],simde_mm_xor_si128(c2[584],simde_mm_xor_si128(c2[1480],simde_mm_xor_si128(c2[1092],simde_mm_xor_si128(c2[992],simde_mm_xor_si128(c2[191],simde_mm_xor_si128(c2[91],c2[790]))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 33
|
|
d2[165]=simde_mm_xor_si128(c2[1200],simde_mm_xor_si128(c2[504],simde_mm_xor_si128(c2[2],simde_mm_xor_si128(c2[1210],simde_mm_xor_si128(c2[1011],simde_mm_xor_si128(c2[213],simde_mm_xor_si128(c2[1220],simde_mm_xor_si128(c2[1121],simde_mm_xor_si128(c2[20],simde_mm_xor_si128(c2[1230],simde_mm_xor_si128(c2[833],simde_mm_xor_si128(c2[1531],simde_mm_xor_si128(c2[1240],simde_mm_xor_si128(c2[541],simde_mm_xor_si128(c2[242],simde_mm_xor_si128(c2[1250],simde_mm_xor_si128(c2[1454],simde_mm_xor_si128(c2[1260],simde_mm_xor_si128(c2[461],simde_mm_xor_si128(c2[861],simde_mm_xor_si128(c2[1270],simde_mm_xor_si128(c2[574],simde_mm_xor_si128(c2[870],simde_mm_xor_si128(c2[1280],simde_mm_xor_si128(c2[882],simde_mm_xor_si128(c2[184],simde_mm_xor_si128(c2[1290],simde_mm_xor_si128(c2[394],c2[1093]))))))))))))))))))))))))))));
|
|
|
|
//row: 34
|
|
d2[170]=simde_mm_xor_si128(c2[301],simde_mm_xor_si128(c2[201],simde_mm_xor_si128(c2[1304],simde_mm_xor_si128(c2[1204],simde_mm_xor_si128(c2[1104],simde_mm_xor_si128(c2[603],simde_mm_xor_si128(c2[602],simde_mm_xor_si128(c2[101],simde_mm_xor_si128(c2[0],simde_mm_xor_si128(c2[311],simde_mm_xor_si128(c2[211],simde_mm_xor_si128(c2[1314],simde_mm_xor_si128(c2[12],simde_mm_xor_si128(c2[1110],simde_mm_xor_si128(c2[813],simde_mm_xor_si128(c2[412],simde_mm_xor_si128(c2[312],simde_mm_xor_si128(c2[321],simde_mm_xor_si128(c2[221],simde_mm_xor_si128(c2[1324],simde_mm_xor_si128(c2[122],simde_mm_xor_si128(c2[1320],simde_mm_xor_si128(c2[1220],simde_mm_xor_si128(c2[331],simde_mm_xor_si128(c2[231],simde_mm_xor_si128(c2[1334],simde_mm_xor_si128(c2[1533],simde_mm_xor_si128(c2[1433],simde_mm_xor_si128(c2[932],simde_mm_xor_si128(c2[532],simde_mm_xor_si128(c2[31],simde_mm_xor_si128(c2[341],simde_mm_xor_si128(c2[241],simde_mm_xor_si128(c2[1344],simde_mm_xor_si128(c2[1141],simde_mm_xor_si128(c2[640],simde_mm_xor_si128(c2[842],simde_mm_xor_si128(c2[441],simde_mm_xor_si128(c2[341],simde_mm_xor_si128(c2[351],simde_mm_xor_si128(c2[251],simde_mm_xor_si128(c2[1354],simde_mm_xor_si128(c2[450],simde_mm_xor_si128(c2[54],simde_mm_xor_si128(c2[1553],simde_mm_xor_si128(c2[361],simde_mm_xor_si128(c2[261],simde_mm_xor_si128(c2[1364],simde_mm_xor_si128(c2[1161],simde_mm_xor_si128(c2[1061],simde_mm_xor_si128(c2[560],simde_mm_xor_si128(c2[1461],simde_mm_xor_si128(c2[1060],simde_mm_xor_si128(c2[960],simde_mm_xor_si128(c2[371],simde_mm_xor_si128(c2[271],simde_mm_xor_si128(c2[1374],simde_mm_xor_si128(c2[1174],simde_mm_xor_si128(c2[773],simde_mm_xor_si128(c2[673],simde_mm_xor_si128(c2[381],simde_mm_xor_si128(c2[281],simde_mm_xor_si128(c2[1384],simde_mm_xor_si128(c2[1482],simde_mm_xor_si128(c2[981],simde_mm_xor_si128(c2[784],simde_mm_xor_si128(c2[383],simde_mm_xor_si128(c2[283],simde_mm_xor_si128(c2[391],simde_mm_xor_si128(c2[291],simde_mm_xor_si128(c2[1394],simde_mm_xor_si128(c2[1094],simde_mm_xor_si128(c2[994],simde_mm_xor_si128(c2[493],simde_mm_xor_si128(c2[94],simde_mm_xor_si128(c2[1292],c2[1192]))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 35
|
|
d2[175]=simde_mm_xor_si128(c2[600],simde_mm_xor_si128(c2[500],simde_mm_xor_si128(c2[1403],simde_mm_xor_si128(c2[901],simde_mm_xor_si128(c2[610],simde_mm_xor_si128(c2[510],simde_mm_xor_si128(c2[311],simde_mm_xor_si128(c2[1112],simde_mm_xor_si128(c2[10],simde_mm_xor_si128(c2[620],simde_mm_xor_si128(c2[520],simde_mm_xor_si128(c2[421],simde_mm_xor_si128(c2[630],simde_mm_xor_si128(c2[530],simde_mm_xor_si128(c2[133],simde_mm_xor_si128(c2[831],simde_mm_xor_si128(c2[540],simde_mm_xor_si128(c2[1440],simde_mm_xor_si128(c2[1141],simde_mm_xor_si128(c2[550],simde_mm_xor_si128(c2[754],simde_mm_xor_si128(c2[1354],simde_mm_xor_si128(c2[660],simde_mm_xor_si128(c2[560],simde_mm_xor_si128(c2[1360],simde_mm_xor_si128(c2[161],simde_mm_xor_si128(c2[570],simde_mm_xor_si128(c2[1473],simde_mm_xor_si128(c2[580],simde_mm_xor_si128(c2[182],simde_mm_xor_si128(c2[1083],simde_mm_xor_si128(c2[690],simde_mm_xor_si128(c2[590],simde_mm_xor_si128(c2[1293],c2[393]))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 36
|
|
d2[180]=simde_mm_xor_si128(c2[0],simde_mm_xor_si128(c2[1523],c2[270]));
|
|
|
|
//row: 37
|
|
d2[185]=simde_mm_xor_si128(c2[1504],simde_mm_xor_si128(c2[1503],simde_mm_xor_si128(c2[803],simde_mm_xor_si128(c2[802],simde_mm_xor_si128(c2[301],simde_mm_xor_si128(c2[300],simde_mm_xor_si128(c2[1514],simde_mm_xor_si128(c2[1513],simde_mm_xor_si128(c2[1310],simde_mm_xor_si128(c2[1314],simde_mm_xor_si128(c2[512],simde_mm_xor_si128(c2[611],simde_mm_xor_si128(c2[511],simde_mm_xor_si128(c2[1524],simde_mm_xor_si128(c2[1523],simde_mm_xor_si128(c2[1420],simde_mm_xor_si128(c2[1524],simde_mm_xor_si128(c2[1424],simde_mm_xor_si128(c2[1534],simde_mm_xor_si128(c2[1533],simde_mm_xor_si128(c2[1132],simde_mm_xor_si128(c2[1131],simde_mm_xor_si128(c2[231],simde_mm_xor_si128(c2[230],simde_mm_xor_si128(c2[1544],simde_mm_xor_si128(c2[1543],simde_mm_xor_si128(c2[840],simde_mm_xor_si128(c2[844],simde_mm_xor_si128(c2[541],simde_mm_xor_si128(c2[640],simde_mm_xor_si128(c2[540],simde_mm_xor_si128(c2[1554],simde_mm_xor_si128(c2[1553],simde_mm_xor_si128(c2[154],simde_mm_xor_si128(c2[253],simde_mm_xor_si128(c2[153],simde_mm_xor_si128(c2[1564],simde_mm_xor_si128(c2[1563],simde_mm_xor_si128(c2[760],simde_mm_xor_si128(c2[764],simde_mm_xor_si128(c2[1160],simde_mm_xor_si128(c2[1264],simde_mm_xor_si128(c2[1164],simde_mm_xor_si128(c2[1574],simde_mm_xor_si128(c2[1573],simde_mm_xor_si128(c2[873],simde_mm_xor_si128(c2[972],simde_mm_xor_si128(c2[872],simde_mm_xor_si128(c2[1584],simde_mm_xor_si128(c2[1583],simde_mm_xor_si128(c2[1181],simde_mm_xor_si128(c2[1180],simde_mm_xor_si128(c2[483],simde_mm_xor_si128(c2[582],simde_mm_xor_si128(c2[482],simde_mm_xor_si128(c2[1594],simde_mm_xor_si128(c2[1593],simde_mm_xor_si128(c2[693],simde_mm_xor_si128(c2[692],simde_mm_xor_si128(c2[1392],simde_mm_xor_si128(c2[1491],c2[1391])))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 38
|
|
d2[190]=simde_mm_xor_si128(c2[301],simde_mm_xor_si128(c2[201],simde_mm_xor_si128(c2[1104],simde_mm_xor_si128(c2[602],simde_mm_xor_si128(c2[311],simde_mm_xor_si128(c2[211],simde_mm_xor_si128(c2[12],simde_mm_xor_si128(c2[813],simde_mm_xor_si128(c2[10],simde_mm_xor_si128(c2[321],simde_mm_xor_si128(c2[221],simde_mm_xor_si128(c2[122],simde_mm_xor_si128(c2[331],simde_mm_xor_si128(c2[231],simde_mm_xor_si128(c2[1433],simde_mm_xor_si128(c2[532],simde_mm_xor_si128(c2[241],simde_mm_xor_si128(c2[1141],simde_mm_xor_si128(c2[842],simde_mm_xor_si128(c2[251],simde_mm_xor_si128(c2[450],simde_mm_xor_si128(c2[1350],simde_mm_xor_si128(c2[361],simde_mm_xor_si128(c2[261],simde_mm_xor_si128(c2[1061],simde_mm_xor_si128(c2[1461],simde_mm_xor_si128(c2[271],simde_mm_xor_si128(c2[1174],simde_mm_xor_si128(c2[281],simde_mm_xor_si128(c2[1482],simde_mm_xor_si128(c2[784],simde_mm_xor_si128(c2[391],simde_mm_xor_si128(c2[291],simde_mm_xor_si128(c2[994],c2[94]))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 39
|
|
d2[195]=simde_mm_xor_si128(c2[1003],simde_mm_xor_si128(c2[903],simde_mm_xor_si128(c2[302],simde_mm_xor_si128(c2[202],simde_mm_xor_si128(c2[1304],simde_mm_xor_si128(c2[0],simde_mm_xor_si128(c2[1013],simde_mm_xor_si128(c2[913],simde_mm_xor_si128(c2[714],simde_mm_xor_si128(c2[1510],simde_mm_xor_si128(c2[1023],simde_mm_xor_si128(c2[923],simde_mm_xor_si128(c2[824],simde_mm_xor_si128(c2[1033],simde_mm_xor_si128(c2[933],simde_mm_xor_si128(c2[631],simde_mm_xor_si128(c2[531],simde_mm_xor_si128(c2[1234],simde_mm_xor_si128(c2[1043],simde_mm_xor_si128(c2[943],simde_mm_xor_si128(c2[244],simde_mm_xor_si128(c2[1544],simde_mm_xor_si128(c2[1053],simde_mm_xor_si128(c2[953],simde_mm_xor_si128(c2[1152],simde_mm_xor_si128(c2[1063],simde_mm_xor_si128(c2[963],simde_mm_xor_si128(c2[264],simde_mm_xor_si128(c2[164],simde_mm_xor_si128(c2[564],simde_mm_xor_si128(c2[1073],simde_mm_xor_si128(c2[973],simde_mm_xor_si128(c2[272],simde_mm_xor_si128(c2[871],simde_mm_xor_si128(c2[1083],simde_mm_xor_si128(c2[983],simde_mm_xor_si128(c2[580],simde_mm_xor_si128(c2[1481],simde_mm_xor_si128(c2[1093],simde_mm_xor_si128(c2[993],simde_mm_xor_si128(c2[192],simde_mm_xor_si128(c2[92],c2[791]))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 40
|
|
d2[200]=simde_mm_xor_si128(c2[302],simde_mm_xor_si128(c2[1403],simde_mm_xor_si128(c2[1200],simde_mm_xor_si128(c2[702],simde_mm_xor_si128(c2[703],simde_mm_xor_si128(c2[200],simde_mm_xor_si128(c2[312],simde_mm_xor_si128(c2[1413],simde_mm_xor_si128(c2[113],simde_mm_xor_si128(c2[1214],simde_mm_xor_si128(c2[914],simde_mm_xor_si128(c2[511],simde_mm_xor_si128(c2[411],simde_mm_xor_si128(c2[322],simde_mm_xor_si128(c2[1423],simde_mm_xor_si128(c2[223],simde_mm_xor_si128(c2[1424],simde_mm_xor_si128(c2[1324],simde_mm_xor_si128(c2[20],simde_mm_xor_si128(c2[332],simde_mm_xor_si128(c2[1433],simde_mm_xor_si128(c2[1534],simde_mm_xor_si128(c2[1031],simde_mm_xor_si128(c2[633],simde_mm_xor_si128(c2[130],simde_mm_xor_si128(c2[342],simde_mm_xor_si128(c2[1443],simde_mm_xor_si128(c2[1242],simde_mm_xor_si128(c2[744],simde_mm_xor_si128(c2[943],simde_mm_xor_si128(c2[540],simde_mm_xor_si128(c2[440],simde_mm_xor_si128(c2[352],simde_mm_xor_si128(c2[1453],simde_mm_xor_si128(c2[551],simde_mm_xor_si128(c2[153],simde_mm_xor_si128(c2[53],simde_mm_xor_si128(c2[362],simde_mm_xor_si128(c2[1463],simde_mm_xor_si128(c2[1162],simde_mm_xor_si128(c2[664],simde_mm_xor_si128(c2[1562],simde_mm_xor_si128(c2[1164],simde_mm_xor_si128(c2[1064],simde_mm_xor_si128(c2[372],simde_mm_xor_si128(c2[1473],simde_mm_xor_si128(c2[1270],simde_mm_xor_si128(c2[872],simde_mm_xor_si128(c2[772],simde_mm_xor_si128(c2[382],simde_mm_xor_si128(c2[1483],simde_mm_xor_si128(c2[1583],simde_mm_xor_si128(c2[1080],simde_mm_xor_si128(c2[880],simde_mm_xor_si128(c2[482],simde_mm_xor_si128(c2[382],simde_mm_xor_si128(c2[392],simde_mm_xor_si128(c2[1493],simde_mm_xor_si128(c2[1090],simde_mm_xor_si128(c2[592],simde_mm_xor_si128(c2[190],simde_mm_xor_si128(c2[1391],c2[1291]))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
|
|
|
|
//row: 41
|
|
d2[205]=simde_mm_xor_si128(c2[703],simde_mm_xor_si128(c2[603],simde_mm_xor_si128(c2[1501],simde_mm_xor_si128(c2[1004],simde_mm_xor_si128(c2[713],simde_mm_xor_si128(c2[613],simde_mm_xor_si128(c2[414],simde_mm_xor_si128(c2[1210],simde_mm_xor_si128(c2[10],simde_mm_xor_si128(c2[723],simde_mm_xor_si128(c2[623],simde_mm_xor_si128(c2[524],simde_mm_xor_si128(c2[733],simde_mm_xor_si128(c2[633],simde_mm_xor_si128(c2[231],simde_mm_xor_si128(c2[934],simde_mm_xor_si128(c2[643],simde_mm_xor_si128(c2[1543],simde_mm_xor_si128(c2[1244],simde_mm_xor_si128(c2[653],simde_mm_xor_si128(c2[852],simde_mm_xor_si128(c2[250],simde_mm_xor_si128(c2[763],simde_mm_xor_si128(c2[663],simde_mm_xor_si128(c2[1463],simde_mm_xor_si128(c2[264],simde_mm_xor_si128(c2[673],simde_mm_xor_si128(c2[1571],simde_mm_xor_si128(c2[683],simde_mm_xor_si128(c2[280],simde_mm_xor_si128(c2[1181],simde_mm_xor_si128(c2[793],simde_mm_xor_si128(c2[693],simde_mm_xor_si128(c2[1391],c2[491]))))))))))))))))))))))))))))))))));
|
|
}
|
|
}
|