Files
openairinterface5g/openair1/PHY/CODING/nrLDPC_encoder/ldpc_BG2_Zc208_byte.c
T
Raymond Knopp a7bc282302 First-level of support for new aarch64 machines
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
2023-09-13 17:19:20 +02:00

139 lines
42 KiB
C

#include "PHY/sse_intrin.h"
// generated code for Zc=208, byte encoding
static inline __attribute__ ((no_sanitize("address", "undefined"))) void ldpc_BG2_Zc208_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<13; i2++) {
c2=&csimd[i2];
d2=&dsimd[i2];
//row: 0
d2[0]=simde_mm_xor_si128(c2[3648],simde_mm_xor_si128(c2[261],simde_mm_xor_si128(c2[3387],simde_mm_xor_si128(c2[547],simde_mm_xor_si128(c2[556],simde_mm_xor_si128(c2[808],simde_mm_xor_si128(c2[3962],simde_mm_xor_si128(c2[3954],simde_mm_xor_si128(c2[1128],simde_mm_xor_si128(c2[2679],simde_mm_xor_si128(c2[3720],simde_mm_xor_si128(c2[624],simde_mm_xor_si128(c2[1675],simde_mm_xor_si128(c2[365],simde_mm_xor_si128(c2[1436],simde_mm_xor_si128(c2[3776],simde_mm_xor_si128(c2[948],simde_mm_xor_si128(c2[2247],simde_mm_xor_si128(c2[2768],simde_mm_xor_si128(c2[183],simde_mm_xor_si128(c2[702],simde_mm_xor_si128(c2[3588],simde_mm_xor_si128(c2[996],simde_mm_xor_si128(c2[3859],simde_mm_xor_si128(c2[3354],simde_mm_xor_si128(c2[1025],c2[4143]))))))))))))))))))))))))));
//row: 1
d2[13]=simde_mm_xor_si128(c2[3908],simde_mm_xor_si128(c2[3648],simde_mm_xor_si128(c2[261],simde_mm_xor_si128(c2[3387],simde_mm_xor_si128(c2[807],simde_mm_xor_si128(c2[547],simde_mm_xor_si128(c2[556],simde_mm_xor_si128(c2[808],simde_mm_xor_si128(c2[63],simde_mm_xor_si128(c2[3962],simde_mm_xor_si128(c2[3954],simde_mm_xor_si128(c2[1388],simde_mm_xor_si128(c2[1128],simde_mm_xor_si128(c2[2679],simde_mm_xor_si128(c2[3720],simde_mm_xor_si128(c2[624],simde_mm_xor_si128(c2[1675],simde_mm_xor_si128(c2[365],simde_mm_xor_si128(c2[1436],simde_mm_xor_si128(c2[3776],simde_mm_xor_si128(c2[1208],simde_mm_xor_si128(c2[948],simde_mm_xor_si128(c2[2247],simde_mm_xor_si128(c2[2768],simde_mm_xor_si128(c2[183],simde_mm_xor_si128(c2[702],simde_mm_xor_si128(c2[3588],simde_mm_xor_si128(c2[996],simde_mm_xor_si128(c2[3859],simde_mm_xor_si128(c2[3614],simde_mm_xor_si128(c2[3354],simde_mm_xor_si128(c2[1025],c2[4143]))))))))))))))))))))))))))))))));
//row: 2
d2[26]=simde_mm_xor_si128(c2[3908],simde_mm_xor_si128(c2[3648],simde_mm_xor_si128(c2[521],simde_mm_xor_si128(c2[261],simde_mm_xor_si128(c2[3387],simde_mm_xor_si128(c2[807],simde_mm_xor_si128(c2[547],simde_mm_xor_si128(c2[556],simde_mm_xor_si128(c2[808],simde_mm_xor_si128(c2[63],simde_mm_xor_si128(c2[3962],simde_mm_xor_si128(c2[3954],simde_mm_xor_si128(c2[1388],simde_mm_xor_si128(c2[1128],simde_mm_xor_si128(c2[2939],simde_mm_xor_si128(c2[2679],simde_mm_xor_si128(c2[3720],simde_mm_xor_si128(c2[884],simde_mm_xor_si128(c2[624],simde_mm_xor_si128(c2[1675],simde_mm_xor_si128(c2[365],simde_mm_xor_si128(c2[1696],simde_mm_xor_si128(c2[1436],simde_mm_xor_si128(c2[3776],simde_mm_xor_si128(c2[1208],simde_mm_xor_si128(c2[948],simde_mm_xor_si128(c2[2507],simde_mm_xor_si128(c2[2247],simde_mm_xor_si128(c2[2768],simde_mm_xor_si128(c2[443],simde_mm_xor_si128(c2[183],simde_mm_xor_si128(c2[702],simde_mm_xor_si128(c2[3848],simde_mm_xor_si128(c2[3588],simde_mm_xor_si128(c2[996],simde_mm_xor_si128(c2[3859],simde_mm_xor_si128(c2[3614],simde_mm_xor_si128(c2[3354],simde_mm_xor_si128(c2[1285],simde_mm_xor_si128(c2[1025],c2[4143]))))))))))))))))))))))))))))))))))))))));
//row: 3
d2[39]=simde_mm_xor_si128(c2[3648],simde_mm_xor_si128(c2[261],simde_mm_xor_si128(c2[3387],simde_mm_xor_si128(c2[547],simde_mm_xor_si128(c2[556],simde_mm_xor_si128(c2[1068],simde_mm_xor_si128(c2[808],simde_mm_xor_si128(c2[3962],simde_mm_xor_si128(c2[55],simde_mm_xor_si128(c2[3954],simde_mm_xor_si128(c2[1128],simde_mm_xor_si128(c2[2679],simde_mm_xor_si128(c2[3720],simde_mm_xor_si128(c2[624],simde_mm_xor_si128(c2[1675],simde_mm_xor_si128(c2[625],simde_mm_xor_si128(c2[365],simde_mm_xor_si128(c2[1436],simde_mm_xor_si128(c2[4036],simde_mm_xor_si128(c2[3776],simde_mm_xor_si128(c2[948],simde_mm_xor_si128(c2[2247],simde_mm_xor_si128(c2[3028],simde_mm_xor_si128(c2[2768],simde_mm_xor_si128(c2[183],simde_mm_xor_si128(c2[962],simde_mm_xor_si128(c2[702],simde_mm_xor_si128(c2[3588],simde_mm_xor_si128(c2[996],simde_mm_xor_si128(c2[4119],simde_mm_xor_si128(c2[3859],simde_mm_xor_si128(c2[3354],simde_mm_xor_si128(c2[1025],simde_mm_xor_si128(c2[244],c2[4143]))))))))))))))))))))))))))))))))));
//row: 4
d2[52]=simde_mm_xor_si128(c2[1043],simde_mm_xor_si128(c2[783],simde_mm_xor_si128(c2[1568],simde_mm_xor_si128(c2[522],simde_mm_xor_si128(c2[2862],simde_mm_xor_si128(c2[2114],simde_mm_xor_si128(c2[1854],simde_mm_xor_si128(c2[1850],simde_mm_xor_si128(c2[2115],simde_mm_xor_si128(c2[2887],simde_mm_xor_si128(c2[1357],simde_mm_xor_si128(c2[1097],simde_mm_xor_si128(c2[1102],simde_mm_xor_si128(c2[2682],simde_mm_xor_si128(c2[2422],simde_mm_xor_si128(c2[3986],simde_mm_xor_si128(c2[868],simde_mm_xor_si128(c2[1931],simde_mm_xor_si128(c2[2969],simde_mm_xor_si128(c2[1672],simde_mm_xor_si128(c2[2730],simde_mm_xor_si128(c2[911],simde_mm_xor_si128(c2[2502],simde_mm_xor_si128(c2[2242],simde_mm_xor_si128(c2[3541],simde_mm_xor_si128(c2[4062],simde_mm_xor_si128(c2[1490],simde_mm_xor_si128(c2[2009],simde_mm_xor_si128(c2[736],simde_mm_xor_si128(c2[2290],simde_mm_xor_si128(c2[994],simde_mm_xor_si128(c2[762],simde_mm_xor_si128(c2[502],simde_mm_xor_si128(c2[2319],c2[1278]))))))))))))))))))))))))))))))))));
//row: 5
d2[65]=simde_mm_xor_si128(c2[3392],simde_mm_xor_si128(c2[3132],simde_mm_xor_si128(c2[3904],simde_mm_xor_si128(c2[2871],simde_mm_xor_si128(c2[2088],simde_mm_xor_si128(c2[291],simde_mm_xor_si128(c2[31],simde_mm_xor_si128(c2[27],simde_mm_xor_si128(c2[292],simde_mm_xor_si128(c2[289],simde_mm_xor_si128(c2[3693],simde_mm_xor_si128(c2[3433],simde_mm_xor_si128(c2[3438],simde_mm_xor_si128(c2[859],simde_mm_xor_si128(c2[599],simde_mm_xor_si128(c2[2163],simde_mm_xor_si128(c2[3204],simde_mm_xor_si128(c2[108],simde_mm_xor_si128(c2[1146],simde_mm_xor_si128(c2[4008],simde_mm_xor_si128(c2[920],simde_mm_xor_si128(c2[3260],simde_mm_xor_si128(c2[1172],simde_mm_xor_si128(c2[679],simde_mm_xor_si128(c2[419],simde_mm_xor_si128(c2[1718],simde_mm_xor_si128(c2[2239],simde_mm_xor_si128(c2[3826],simde_mm_xor_si128(c2[186],simde_mm_xor_si128(c2[1230],simde_mm_xor_si128(c2[3072],simde_mm_xor_si128(c2[480],simde_mm_xor_si128(c2[3330],simde_mm_xor_si128(c2[3098],simde_mm_xor_si128(c2[2838],simde_mm_xor_si128(c2[496],c2[3614]))))))))))))))))))))))))))))))))))));
//row: 6
d2[78]=simde_mm_xor_si128(c2[2869],simde_mm_xor_si128(c2[2609],simde_mm_xor_si128(c2[3381],simde_mm_xor_si128(c2[2348],simde_mm_xor_si128(c2[1820],simde_mm_xor_si128(c2[3927],simde_mm_xor_si128(c2[3667],simde_mm_xor_si128(c2[3676],simde_mm_xor_si128(c2[3928],simde_mm_xor_si128(c2[3183],simde_mm_xor_si128(c2[2923],simde_mm_xor_si128(c2[2915],simde_mm_xor_si128(c2[349],simde_mm_xor_si128(c2[89],simde_mm_xor_si128(c2[1640],simde_mm_xor_si128(c2[2681],simde_mm_xor_si128(c2[3744],simde_mm_xor_si128(c2[636],simde_mm_xor_si128(c2[3485],simde_mm_xor_si128(c2[397],simde_mm_xor_si128(c2[2737],simde_mm_xor_si128(c2[652],simde_mm_xor_si128(c2[156],simde_mm_xor_si128(c2[4068],simde_mm_xor_si128(c2[1208],simde_mm_xor_si128(c2[1716],simde_mm_xor_si128(c2[3303],simde_mm_xor_si128(c2[3822],simde_mm_xor_si128(c2[1754],simde_mm_xor_si128(c2[2549],simde_mm_xor_si128(c2[4116],simde_mm_xor_si128(c2[2820],simde_mm_xor_si128(c2[2575],simde_mm_xor_si128(c2[2315],simde_mm_xor_si128(c2[4145],simde_mm_xor_si128(c2[3104],c2[2324]))))))))))))))))))))))))))))))))))));
//row: 7
d2[91]=simde_mm_xor_si128(c2[2602],simde_mm_xor_si128(c2[2342],simde_mm_xor_si128(c2[2092],simde_mm_xor_si128(c2[3127],simde_mm_xor_si128(c2[2864],simde_mm_xor_si128(c2[2081],simde_mm_xor_si128(c2[1831],simde_mm_xor_si128(c2[3673],simde_mm_xor_si128(c2[3413],simde_mm_xor_si128(c2[3150],simde_mm_xor_si128(c2[3409],simde_mm_xor_si128(c2[3146],simde_mm_xor_si128(c2[3674],simde_mm_xor_si128(c2[3671],simde_mm_xor_si128(c2[3411],simde_mm_xor_si128(c2[816],simde_mm_xor_si128(c2[2916],simde_mm_xor_si128(c2[2656],simde_mm_xor_si128(c2[2393],simde_mm_xor_si128(c2[2661],simde_mm_xor_si128(c2[2658],simde_mm_xor_si128(c2[2398],simde_mm_xor_si128(c2[82],simde_mm_xor_si128(c2[3981],simde_mm_xor_si128(c2[3718],simde_mm_xor_si128(c2[1386],simde_mm_xor_si128(c2[1123],simde_mm_xor_si128(c2[2427],simde_mm_xor_si128(c2[2164],simde_mm_xor_si128(c2[3490],simde_mm_xor_si128(c2[3227],simde_mm_xor_si128(c2[369],simde_mm_xor_si128(c2[106],simde_mm_xor_si128(c2[3231],simde_mm_xor_si128(c2[3228],simde_mm_xor_si128(c2[2968],simde_mm_xor_si128(c2[130],simde_mm_xor_si128(c2[4039],simde_mm_xor_si128(c2[2470],simde_mm_xor_si128(c2[2480],simde_mm_xor_si128(c2[2220],simde_mm_xor_si128(c2[3774],simde_mm_xor_si128(c2[4061],simde_mm_xor_si128(c2[3801],simde_mm_xor_si128(c2[3538],simde_mm_xor_si128(c2[941],simde_mm_xor_si128(c2[678],simde_mm_xor_si128(c2[1462],simde_mm_xor_si128(c2[1459],simde_mm_xor_si128(c2[1199],simde_mm_xor_si128(c2[3049],simde_mm_xor_si128(c2[2786],simde_mm_xor_si128(c2[3568],simde_mm_xor_si128(c2[3565],simde_mm_xor_si128(c2[3305],simde_mm_xor_si128(c2[4090],simde_mm_xor_si128(c2[2295],simde_mm_xor_si128(c2[2032],simde_mm_xor_si128(c2[3849],simde_mm_xor_si128(c2[3599],simde_mm_xor_si128(c2[2553],simde_mm_xor_si128(c2[2550],simde_mm_xor_si128(c2[2290],simde_mm_xor_si128(c2[2321],simde_mm_xor_si128(c2[2061],simde_mm_xor_si128(c2[1798],simde_mm_xor_si128(c2[3878],simde_mm_xor_si128(c2[3615],simde_mm_xor_si128(c2[2837],simde_mm_xor_si128(c2[2834],c2[2574]))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
//row: 8
d2[104]=simde_mm_xor_si128(c2[1310],simde_mm_xor_si128(c2[1050],simde_mm_xor_si128(c2[2082],simde_mm_xor_si128(c2[1822],simde_mm_xor_si128(c2[789],simde_mm_xor_si128(c2[1306],simde_mm_xor_si128(c2[2368],simde_mm_xor_si128(c2[2108],simde_mm_xor_si128(c2[2117],simde_mm_xor_si128(c2[2369],simde_mm_xor_si128(c2[297],simde_mm_xor_si128(c2[1624],simde_mm_xor_si128(c2[1364],simde_mm_xor_si128(c2[1356],simde_mm_xor_si128(c2[2949],simde_mm_xor_si128(c2[2689],simde_mm_xor_si128(c2[341],simde_mm_xor_si128(c2[81],simde_mm_xor_si128(c2[1122],simde_mm_xor_si128(c2[2445],simde_mm_xor_si128(c2[2185],simde_mm_xor_si128(c2[3236],simde_mm_xor_si128(c2[1926],simde_mm_xor_si128(c2[3257],simde_mm_xor_si128(c2[2997],simde_mm_xor_si128(c2[1178],simde_mm_xor_si128(c2[2756],simde_mm_xor_si128(c2[2496],simde_mm_xor_si128(c2[4068],simde_mm_xor_si128(c2[3808],simde_mm_xor_si128(c2[157],simde_mm_xor_si128(c2[2004],simde_mm_xor_si128(c2[1744],simde_mm_xor_si128(c2[2263],simde_mm_xor_si128(c2[1250],simde_mm_xor_si128(c2[990],simde_mm_xor_si128(c2[2557],simde_mm_xor_si128(c2[1248],simde_mm_xor_si128(c2[1016],simde_mm_xor_si128(c2[756],simde_mm_xor_si128(c2[2846],simde_mm_xor_si128(c2[2586],c2[1545]))))))))))))))))))))))))))))))))))))))))));
//row: 9
d2[117]=simde_mm_xor_si128(c2[2868],simde_mm_xor_si128(c2[1],simde_mm_xor_si128(c2[3900],simde_mm_xor_si128(c2[3640],simde_mm_xor_si128(c2[526],simde_mm_xor_si128(c2[2607],simde_mm_xor_si128(c2[3652],simde_mm_xor_si128(c2[3926],simde_mm_xor_si128(c2[1072],simde_mm_xor_si128(c2[812],simde_mm_xor_si128(c2[3935],simde_mm_xor_si128(c2[808],simde_mm_xor_si128(c2[28],simde_mm_xor_si128(c2[1073],simde_mm_xor_si128(c2[2637],simde_mm_xor_si128(c2[3182],simde_mm_xor_si128(c2[315],simde_mm_xor_si128(c2[55],simde_mm_xor_si128(c2[3174],simde_mm_xor_si128(c2[60],simde_mm_xor_si128(c2[348],simde_mm_xor_si128(c2[1640],simde_mm_xor_si128(c2[1380],simde_mm_xor_si128(c2[1899],simde_mm_xor_si128(c2[2944],simde_mm_xor_si128(c2[2940],simde_mm_xor_si128(c2[3985],simde_mm_xor_si128(c2[4016],simde_mm_xor_si128(c2[889],simde_mm_xor_si128(c2[895],simde_mm_xor_si128(c2[1927],simde_mm_xor_si128(c2[3744],simde_mm_xor_si128(c2[630],simde_mm_xor_si128(c2[656],simde_mm_xor_si128(c2[1701],simde_mm_xor_si128(c2[2996],simde_mm_xor_si128(c2[4041],simde_mm_xor_si128(c2[168],simde_mm_xor_si128(c2[1460],simde_mm_xor_si128(c2[1200],simde_mm_xor_si128(c2[1467],simde_mm_xor_si128(c2[2499],simde_mm_xor_si128(c2[1988],simde_mm_xor_si128(c2[3020],simde_mm_xor_si128(c2[3562],simde_mm_xor_si128(c2[448],simde_mm_xor_si128(c2[4094],simde_mm_xor_si128(c2[967],simde_mm_xor_si128(c2[2808],simde_mm_xor_si128(c2[3853],simde_mm_xor_si128(c2[216],simde_mm_xor_si128(c2[1248],simde_mm_xor_si128(c2[3079],simde_mm_xor_si128(c2[4111],simde_mm_xor_si128(c2[3069],simde_mm_xor_si128(c2[2574],simde_mm_xor_si128(c2[3879],simde_mm_xor_si128(c2[3619],simde_mm_xor_si128(c2[245],simde_mm_xor_si128(c2[1277],simde_mm_xor_si128(c2[3363],c2[236])))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
//row: 10
d2[130]=simde_mm_xor_si128(c2[3387],simde_mm_xor_si128(c2[3149],simde_mm_xor_si128(c2[427],c2[965])));
//row: 11
d2[143]=simde_mm_xor_si128(c2[1569],simde_mm_xor_si128(c2[2341],simde_mm_xor_si128(c2[1308],simde_mm_xor_si128(c2[1822],simde_mm_xor_si128(c2[2627],simde_mm_xor_si128(c2[2636],simde_mm_xor_si128(c2[3148],simde_mm_xor_si128(c2[2888],simde_mm_xor_si128(c2[1883],simde_mm_xor_si128(c2[2135],simde_mm_xor_si128(c2[1875],simde_mm_xor_si128(c2[3208],simde_mm_xor_si128(c2[600],simde_mm_xor_si128(c2[1641],simde_mm_xor_si128(c2[2704],simde_mm_xor_si128(c2[3755],simde_mm_xor_si128(c2[2705],simde_mm_xor_si128(c2[2445],simde_mm_xor_si128(c2[3516],simde_mm_xor_si128(c2[1957],simde_mm_xor_si128(c2[1697],simde_mm_xor_si128(c2[3028],simde_mm_xor_si128(c2[168],simde_mm_xor_si128(c2[936],simde_mm_xor_si128(c2[676],simde_mm_xor_si128(c2[2263],simde_mm_xor_si128(c2[3042],simde_mm_xor_si128(c2[2782],simde_mm_xor_si128(c2[3563],simde_mm_xor_si128(c2[1509],simde_mm_xor_si128(c2[3076],simde_mm_xor_si128(c2[2040],simde_mm_xor_si128(c2[1780],simde_mm_xor_si128(c2[1275],simde_mm_xor_si128(c2[3105],simde_mm_xor_si128(c2[2324],simde_mm_xor_si128(c2[2064],c2[1016])))))))))))))))))))))))))))))))))))));
//row: 12
d2[156]=simde_mm_xor_si128(c2[12],simde_mm_xor_si128(c2[3911],simde_mm_xor_si128(c2[524],simde_mm_xor_si128(c2[3650],simde_mm_xor_si128(c2[1070],simde_mm_xor_si128(c2[810],simde_mm_xor_si128(c2[806],simde_mm_xor_si128(c2[1071],simde_mm_xor_si128(c2[547],simde_mm_xor_si128(c2[313],simde_mm_xor_si128(c2[53],simde_mm_xor_si128(c2[58],simde_mm_xor_si128(c2[1638],simde_mm_xor_si128(c2[1378],simde_mm_xor_si128(c2[2942],simde_mm_xor_si128(c2[3983],simde_mm_xor_si128(c2[2947],simde_mm_xor_si128(c2[887],simde_mm_xor_si128(c2[1925],simde_mm_xor_si128(c2[628],simde_mm_xor_si128(c2[1699],simde_mm_xor_si128(c2[4039],simde_mm_xor_si128(c2[1458],simde_mm_xor_si128(c2[1198],simde_mm_xor_si128(c2[2497],simde_mm_xor_si128(c2[3018],simde_mm_xor_si128(c2[446],simde_mm_xor_si128(c2[965],simde_mm_xor_si128(c2[3851],simde_mm_xor_si128(c2[1259],simde_mm_xor_si128(c2[4109],simde_mm_xor_si128(c2[3877],simde_mm_xor_si128(c2[3617],simde_mm_xor_si128(c2[1275],c2[234]))))))))))))))))))))))))))))))))));
//row: 13
d2[169]=simde_mm_xor_si128(c2[2087],simde_mm_xor_si128(c2[2872],simde_mm_xor_si128(c2[1826],simde_mm_xor_si128(c2[2],simde_mm_xor_si128(c2[3158],simde_mm_xor_si128(c2[3154],simde_mm_xor_si128(c2[3666],simde_mm_xor_si128(c2[3406],simde_mm_xor_si128(c2[1329],simde_mm_xor_si128(c2[2401],simde_mm_xor_si128(c2[2653],simde_mm_xor_si128(c2[2393],simde_mm_xor_si128(c2[3726],simde_mm_xor_si128(c2[1118],simde_mm_xor_si128(c2[2159],simde_mm_xor_si128(c2[3235],simde_mm_xor_si128(c2[114],simde_mm_xor_si128(c2[3236],simde_mm_xor_si128(c2[2976],simde_mm_xor_si128(c2[4034],simde_mm_xor_si128(c2[2475],simde_mm_xor_si128(c2[2215],simde_mm_xor_si128(c2[3546],simde_mm_xor_si128(c2[686],simde_mm_xor_si128(c2[1467],simde_mm_xor_si128(c2[1207],simde_mm_xor_si128(c2[2794],simde_mm_xor_si128(c2[3573],simde_mm_xor_si128(c2[3313],simde_mm_xor_si128(c2[2040],simde_mm_xor_si128(c2[3594],simde_mm_xor_si128(c2[2558],simde_mm_xor_si128(c2[2298],simde_mm_xor_si128(c2[4113],simde_mm_xor_si128(c2[1806],simde_mm_xor_si128(c2[3623],simde_mm_xor_si128(c2[2842],c2[2582])))))))))))))))))))))))))))))))))))));
//row: 14
d2[182]=simde_mm_xor_si128(c2[792],simde_mm_xor_si128(c2[532],simde_mm_xor_si128(c2[2862],simde_mm_xor_si128(c2[1304],simde_mm_xor_si128(c2[3647],simde_mm_xor_si128(c2[271],simde_mm_xor_si128(c2[2601],simde_mm_xor_si128(c2[1850],simde_mm_xor_si128(c2[1590],simde_mm_xor_si128(c2[3933],simde_mm_xor_si128(c2[1586],simde_mm_xor_si128(c2[3929],simde_mm_xor_si128(c2[1851],simde_mm_xor_si128(c2[295],simde_mm_xor_si128(c2[35],simde_mm_xor_si128(c2[2891],simde_mm_xor_si128(c2[1093],simde_mm_xor_si128(c2[833],simde_mm_xor_si128(c2[3176],simde_mm_xor_si128(c2[838],simde_mm_xor_si128(c2[3441],simde_mm_xor_si128(c2[3181],simde_mm_xor_si128(c2[2418],simde_mm_xor_si128(c2[2158],simde_mm_xor_si128(c2[342],simde_mm_xor_si128(c2[3722],simde_mm_xor_si128(c2[1906],simde_mm_xor_si128(c2[604],simde_mm_xor_si128(c2[2947],simde_mm_xor_si128(c2[1667],simde_mm_xor_si128(c2[4010],simde_mm_xor_si128(c2[2705],simde_mm_xor_si128(c2[889],simde_mm_xor_si128(c2[1408],simde_mm_xor_si128(c2[4011],simde_mm_xor_si128(c2[3751],simde_mm_xor_si128(c2[2479],simde_mm_xor_si128(c2[650],simde_mm_xor_si128(c2[660],simde_mm_xor_si128(c2[3250],simde_mm_xor_si128(c2[2990],simde_mm_xor_si128(c2[2238],simde_mm_xor_si128(c2[1978],simde_mm_xor_si128(c2[162],simde_mm_xor_si128(c2[3277],simde_mm_xor_si128(c2[1461],simde_mm_xor_si128(c2[3798],simde_mm_xor_si128(c2[2242],simde_mm_xor_si128(c2[1982],simde_mm_xor_si128(c2[1197],simde_mm_xor_si128(c2[1226],simde_mm_xor_si128(c2[3569],simde_mm_xor_si128(c2[1745],simde_mm_xor_si128(c2[189],simde_mm_xor_si128(c2[4088],simde_mm_xor_si128(c2[472],simde_mm_xor_si128(c2[2815],simde_mm_xor_si128(c2[2039],simde_mm_xor_si128(c2[210],simde_mm_xor_si128(c2[730],simde_mm_xor_si128(c2[3333],simde_mm_xor_si128(c2[3073],simde_mm_xor_si128(c2[498],simde_mm_xor_si128(c2[238],simde_mm_xor_si128(c2[2581],simde_mm_xor_si128(c2[2055],simde_mm_xor_si128(c2[239],simde_mm_xor_si128(c2[1014],simde_mm_xor_si128(c2[3617],c2[3357])))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
//row: 15
d2[195]=simde_mm_xor_si128(c2[2602],simde_mm_xor_si128(c2[1302],simde_mm_xor_si128(c2[1042],simde_mm_xor_si128(c2[3387],simde_mm_xor_si128(c2[1827],simde_mm_xor_si128(c2[2341],simde_mm_xor_si128(c2[781],simde_mm_xor_si128(c2[3650],simde_mm_xor_si128(c2[3673],simde_mm_xor_si128(c2[2373],simde_mm_xor_si128(c2[2113],simde_mm_xor_si128(c2[3669],simde_mm_xor_si128(c2[2109],simde_mm_xor_si128(c2[3934],simde_mm_xor_si128(c2[2374],simde_mm_xor_si128(c2[2916],simde_mm_xor_si128(c2[1616],simde_mm_xor_si128(c2[1356],simde_mm_xor_si128(c2[2921],simde_mm_xor_si128(c2[1361],simde_mm_xor_si128(c2[82],simde_mm_xor_si128(c2[2941],simde_mm_xor_si128(c2[2681],simde_mm_xor_si128(c2[1646],simde_mm_xor_si128(c2[86],simde_mm_xor_si128(c2[2687],simde_mm_xor_si128(c2[1127],simde_mm_xor_si128(c2[3750],simde_mm_xor_si128(c2[2190],simde_mm_xor_si128(c2[629],simde_mm_xor_si128(c2[3228],simde_mm_xor_si128(c2[3491],simde_mm_xor_si128(c2[1931],simde_mm_xor_si128(c2[390],simde_mm_xor_si128(c2[3002],simde_mm_xor_si128(c2[2730],simde_mm_xor_si128(c2[1170],simde_mm_xor_si128(c2[4061],simde_mm_xor_si128(c2[2761],simde_mm_xor_si128(c2[2501],simde_mm_xor_si128(c2[1201],simde_mm_xor_si128(c2[3800],simde_mm_xor_si128(c2[1722],simde_mm_xor_si128(c2[162],simde_mm_xor_si128(c2[3309],simde_mm_xor_si128(c2[1749],simde_mm_xor_si128(c2[3828],simde_mm_xor_si128(c2[2268],simde_mm_xor_si128(c2[2555],simde_mm_xor_si128(c2[995],simde_mm_xor_si128(c2[4109],simde_mm_xor_si128(c2[2549],simde_mm_xor_si128(c2[2813],simde_mm_xor_si128(c2[1253],simde_mm_xor_si128(c2[2321],simde_mm_xor_si128(c2[1021],simde_mm_xor_si128(c2[761],simde_mm_xor_si128(c2[4138],simde_mm_xor_si128(c2[2578],simde_mm_xor_si128(c2[3097],c2[1537]))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
//row: 16
d2[208]=simde_mm_xor_si128(c2[1312],simde_mm_xor_si128(c2[1052],simde_mm_xor_si128(c2[3906],simde_mm_xor_si128(c2[3646],simde_mm_xor_si128(c2[1824],simde_mm_xor_si128(c2[532],simde_mm_xor_si128(c2[272],simde_mm_xor_si128(c2[791],simde_mm_xor_si128(c2[3385],simde_mm_xor_si128(c2[2370],simde_mm_xor_si128(c2[2110],simde_mm_xor_si128(c2[818],simde_mm_xor_si128(c2[558],simde_mm_xor_si128(c2[2106],simde_mm_xor_si128(c2[554],simde_mm_xor_si128(c2[2371],simde_mm_xor_si128(c2[806],simde_mm_xor_si128(c2[3413],simde_mm_xor_si128(c2[1613],simde_mm_xor_si128(c2[1353],simde_mm_xor_si128(c2[61],simde_mm_xor_si128(c2[3960],simde_mm_xor_si128(c2[1358],simde_mm_xor_si128(c2[3952],simde_mm_xor_si128(c2[2938],simde_mm_xor_si128(c2[2678],simde_mm_xor_si128(c2[1386],simde_mm_xor_si128(c2[1126],simde_mm_xor_si128(c2[83],simde_mm_xor_si128(c2[2950],simde_mm_xor_si128(c2[2690],simde_mm_xor_si128(c2[1124],simde_mm_xor_si128(c2[3718],simde_mm_xor_si128(c2[2187],simde_mm_xor_si128(c2[895],simde_mm_xor_si128(c2[635],simde_mm_xor_si128(c2[3225],simde_mm_xor_si128(c2[1673],simde_mm_xor_si128(c2[1928],simde_mm_xor_si128(c2[376],simde_mm_xor_si128(c2[2999],simde_mm_xor_si128(c2[1694],simde_mm_xor_si128(c2[1434],simde_mm_xor_si128(c2[1180],simde_mm_xor_si128(c2[3774],simde_mm_xor_si128(c2[2758],simde_mm_xor_si128(c2[2498],simde_mm_xor_si128(c2[1206],simde_mm_xor_si128(c2[946],simde_mm_xor_si128(c2[3797],simde_mm_xor_si128(c2[2505],simde_mm_xor_si128(c2[2245],simde_mm_xor_si128(c2[159],simde_mm_xor_si128(c2[2766],simde_mm_xor_si128(c2[1746],simde_mm_xor_si128(c2[454],simde_mm_xor_si128(c2[194],simde_mm_xor_si128(c2[2265],simde_mm_xor_si128(c2[713],simde_mm_xor_si128(c2[992],simde_mm_xor_si128(c2[3859],simde_mm_xor_si128(c2[3599],simde_mm_xor_si128(c2[2559],simde_mm_xor_si128(c2[994],simde_mm_xor_si128(c2[1250],simde_mm_xor_si128(c2[3857],simde_mm_xor_si128(c2[1018],simde_mm_xor_si128(c2[758],simde_mm_xor_si128(c2[3625],simde_mm_xor_si128(c2[3365],simde_mm_xor_si128(c2[2575],simde_mm_xor_si128(c2[1283],simde_mm_xor_si128(c2[1023],simde_mm_xor_si128(c2[1534],simde_mm_xor_si128(c2[4141],c2[4135])))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
//row: 17
d2[221]=simde_mm_xor_si128(c2[3384],simde_mm_xor_si128(c2[3124],simde_mm_xor_si128(c2[531],simde_mm_xor_si128(c2[271],simde_mm_xor_si128(c2[3909],simde_mm_xor_si128(c2[1303],simde_mm_xor_si128(c2[1043],simde_mm_xor_si128(c2[2863],simde_mm_xor_si128(c2[10],simde_mm_xor_si128(c2[296],simde_mm_xor_si128(c2[36],simde_mm_xor_si128(c2[1589],simde_mm_xor_si128(c2[1329],simde_mm_xor_si128(c2[32],simde_mm_xor_si128(c2[1338],simde_mm_xor_si128(c2[297],simde_mm_xor_si128(c2[1590],simde_mm_xor_si128(c2[2369],simde_mm_xor_si128(c2[3698],simde_mm_xor_si128(c2[3438],simde_mm_xor_si128(c2[832],simde_mm_xor_si128(c2[572],simde_mm_xor_si128(c2[3443],simde_mm_xor_si128(c2[577],simde_mm_xor_si128(c2[864],simde_mm_xor_si128(c2[604],simde_mm_xor_si128(c2[2170],simde_mm_xor_si128(c2[1910],simde_mm_xor_si128(c2[2168],simde_mm_xor_si128(c2[3721],simde_mm_xor_si128(c2[3461],simde_mm_xor_si128(c2[3209],simde_mm_xor_si128(c2[343],simde_mm_xor_si128(c2[113],simde_mm_xor_si128(c2[1666],simde_mm_xor_si128(c2[1406],simde_mm_xor_si128(c2[1151],simde_mm_xor_si128(c2[2444],simde_mm_xor_si128(c2[4013],simde_mm_xor_si128(c2[1147],simde_mm_xor_si128(c2[912],simde_mm_xor_si128(c2[2478],simde_mm_xor_si128(c2[2218],simde_mm_xor_si128(c2[3252],simde_mm_xor_si128(c2[399],simde_mm_xor_si128(c2[2482],simde_mm_xor_si128(c2[684],simde_mm_xor_si128(c2[424],simde_mm_xor_si128(c2[1977],simde_mm_xor_si128(c2[1717],simde_mm_xor_si128(c2[1723],simde_mm_xor_si128(c2[3276],simde_mm_xor_si128(c2[3016],simde_mm_xor_si128(c2[2244],simde_mm_xor_si128(c2[3537],simde_mm_xor_si128(c2[3831],simde_mm_xor_si128(c2[1225],simde_mm_xor_si128(c2[965],simde_mm_xor_si128(c2[191],simde_mm_xor_si128(c2[1484],simde_mm_xor_si128(c2[3077],simde_mm_xor_si128(c2[471],simde_mm_xor_si128(c2[211],simde_mm_xor_si128(c2[472],simde_mm_xor_si128(c2[1778],simde_mm_xor_si128(c2[3335],simde_mm_xor_si128(c2[469],simde_mm_xor_si128(c2[3103],simde_mm_xor_si128(c2[2843],simde_mm_xor_si128(c2[237],simde_mm_xor_si128(c2[4136],simde_mm_xor_si128(c2[501],simde_mm_xor_si128(c2[2054],simde_mm_xor_si128(c2[1794],simde_mm_xor_si128(c2[3619],c2[766])))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
//row: 18
d2[234]=simde_mm_xor_si128(c2[268],simde_mm_xor_si128(c2[3028],c2[3310]));
//row: 19
d2[247]=simde_mm_xor_si128(c2[532],simde_mm_xor_si128(c2[1304],simde_mm_xor_si128(c2[271],simde_mm_xor_si128(c2[3646],simde_mm_xor_si128(c2[1590],simde_mm_xor_si128(c2[1586],simde_mm_xor_si128(c2[1851],simde_mm_xor_si128(c2[3153],simde_mm_xor_si128(c2[833],simde_mm_xor_si128(c2[838],simde_mm_xor_si128(c2[2158],simde_mm_xor_si128(c2[3722],simde_mm_xor_si128(c2[604],simde_mm_xor_si128(c2[1667],simde_mm_xor_si128(c2[2705],simde_mm_xor_si128(c2[1408],simde_mm_xor_si128(c2[2479],simde_mm_xor_si128(c2[660],simde_mm_xor_si128(c2[1978],simde_mm_xor_si128(c2[3277],simde_mm_xor_si128(c2[3798],simde_mm_xor_si128(c2[1226],simde_mm_xor_si128(c2[1745],simde_mm_xor_si128(c2[472],simde_mm_xor_si128(c2[2039],simde_mm_xor_si128(c2[730],simde_mm_xor_si128(c2[238],simde_mm_xor_si128(c2[2055],c2[1014]))))))))))))))))))))))))))));
//row: 20
d2[260]=simde_mm_xor_si128(c2[263],simde_mm_xor_si128(c2[3],simde_mm_xor_si128(c2[788],simde_mm_xor_si128(c2[3901],simde_mm_xor_si128(c2[1334],simde_mm_xor_si128(c2[1074],simde_mm_xor_si128(c2[1070],simde_mm_xor_si128(c2[1335],simde_mm_xor_si128(c2[1078],simde_mm_xor_si128(c2[577],simde_mm_xor_si128(c2[317],simde_mm_xor_si128(c2[322],simde_mm_xor_si128(c2[1902],simde_mm_xor_si128(c2[1642],simde_mm_xor_si128(c2[3206],simde_mm_xor_si128(c2[88],simde_mm_xor_si128(c2[1151],simde_mm_xor_si128(c2[2189],simde_mm_xor_si128(c2[892],simde_mm_xor_si128(c2[886],simde_mm_xor_si128(c2[1950],simde_mm_xor_si128(c2[131],simde_mm_xor_si128(c2[1722],simde_mm_xor_si128(c2[1462],simde_mm_xor_si128(c2[2761],simde_mm_xor_si128(c2[3282],simde_mm_xor_si128(c2[710],simde_mm_xor_si128(c2[1229],simde_mm_xor_si128(c2[4115],simde_mm_xor_si128(c2[1510],simde_mm_xor_si128(c2[214],simde_mm_xor_si128(c2[4141],simde_mm_xor_si128(c2[3881],simde_mm_xor_si128(c2[1539],c2[498]))))))))))))))))))))))))))))))))));
//row: 21
d2[273]=simde_mm_xor_si128(c2[1310],simde_mm_xor_si128(c2[2082],simde_mm_xor_si128(c2[1049],simde_mm_xor_si128(c2[2600],simde_mm_xor_si128(c2[2368],simde_mm_xor_si128(c2[2377],simde_mm_xor_si128(c2[2889],simde_mm_xor_si128(c2[2629],simde_mm_xor_si128(c2[1624],simde_mm_xor_si128(c2[1876],simde_mm_xor_si128(c2[1616],simde_mm_xor_si128(c2[2949],simde_mm_xor_si128(c2[341],simde_mm_xor_si128(c2[1382],simde_mm_xor_si128(c2[2445],simde_mm_xor_si128(c2[3496],simde_mm_xor_si128(c2[2446],simde_mm_xor_si128(c2[2186],simde_mm_xor_si128(c2[3257],simde_mm_xor_si128(c2[1698],simde_mm_xor_si128(c2[1438],simde_mm_xor_si128(c2[2756],simde_mm_xor_si128(c2[4068],simde_mm_xor_si128(c2[677],simde_mm_xor_si128(c2[417],simde_mm_xor_si128(c2[2004],simde_mm_xor_si128(c2[2783],simde_mm_xor_si128(c2[2523],simde_mm_xor_si128(c2[1250],simde_mm_xor_si128(c2[2817],simde_mm_xor_si128(c2[1768],simde_mm_xor_si128(c2[1508],simde_mm_xor_si128(c2[2815],simde_mm_xor_si128(c2[1016],simde_mm_xor_si128(c2[2846],simde_mm_xor_si128(c2[2065],c2[1805]))))))))))))))))))))))))))))))))))));
//row: 22
d2[286]=simde_mm_xor_si128(c2[2638],c2[3699]);
//row: 23
d2[299]=simde_mm_xor_si128(c2[1043],simde_mm_xor_si128(c2[2688],c2[3510]));
//row: 24
d2[312]=simde_mm_xor_si128(c2[293],simde_mm_xor_si128(c2[322],c2[2319]));
//row: 25
d2[325]=simde_mm_xor_si128(c2[1312],c2[662]);
//row: 26
d2[338]=simde_mm_xor_si128(c2[12],simde_mm_xor_si128(c2[3911],simde_mm_xor_si128(c2[3905],simde_mm_xor_si128(c2[784],simde_mm_xor_si128(c2[524],simde_mm_xor_si128(c2[531],simde_mm_xor_si128(c2[3650],simde_mm_xor_si128(c2[3644],simde_mm_xor_si128(c2[1070],simde_mm_xor_si128(c2[810],simde_mm_xor_si128(c2[817],simde_mm_xor_si128(c2[806],simde_mm_xor_si128(c2[813],simde_mm_xor_si128(c2[1071],simde_mm_xor_si128(c2[1338],simde_mm_xor_si128(c2[1078],simde_mm_xor_si128(c2[313],simde_mm_xor_si128(c2[53],simde_mm_xor_si128(c2[60],simde_mm_xor_si128(c2[58],simde_mm_xor_si128(c2[312],simde_mm_xor_si128(c2[52],simde_mm_xor_si128(c2[1102],simde_mm_xor_si128(c2[1638],simde_mm_xor_si128(c2[1378],simde_mm_xor_si128(c2[1385],simde_mm_xor_si128(c2[3202],simde_mm_xor_si128(c2[2942],simde_mm_xor_si128(c2[2949],simde_mm_xor_si128(c2[3983],simde_mm_xor_si128(c2[3990],simde_mm_xor_si128(c2[1147],simde_mm_xor_si128(c2[887],simde_mm_xor_si128(c2[894],simde_mm_xor_si128(c2[1925],simde_mm_xor_si128(c2[1932],simde_mm_xor_si128(c2[628],simde_mm_xor_si128(c2[895],simde_mm_xor_si128(c2[635],simde_mm_xor_si128(c2[1959],simde_mm_xor_si128(c2[1699],simde_mm_xor_si128(c2[1693],simde_mm_xor_si128(c2[4039],simde_mm_xor_si128(c2[134],simde_mm_xor_si128(c2[4033],simde_mm_xor_si128(c2[1458],simde_mm_xor_si128(c2[1198],simde_mm_xor_si128(c2[1205],simde_mm_xor_si128(c2[2757],simde_mm_xor_si128(c2[2497],simde_mm_xor_si128(c2[2504],simde_mm_xor_si128(c2[3018],simde_mm_xor_si128(c2[3285],simde_mm_xor_si128(c2[3025],simde_mm_xor_si128(c2[706],simde_mm_xor_si128(c2[446],simde_mm_xor_si128(c2[453],simde_mm_xor_si128(c2[965],simde_mm_xor_si128(c2[1232],simde_mm_xor_si128(c2[972],simde_mm_xor_si128(c2[3312],simde_mm_xor_si128(c2[4111],simde_mm_xor_si128(c2[3851],simde_mm_xor_si128(c2[3858],simde_mm_xor_si128(c2[1259],simde_mm_xor_si128(c2[1253],simde_mm_xor_si128(c2[4109],simde_mm_xor_si128(c2[217],simde_mm_xor_si128(c2[4116],simde_mm_xor_si128(c2[3877],simde_mm_xor_si128(c2[3617],simde_mm_xor_si128(c2[3624],simde_mm_xor_si128(c2[1535],simde_mm_xor_si128(c2[1275],simde_mm_xor_si128(c2[1282],simde_mm_xor_si128(c2[234],simde_mm_xor_si128(c2[501],c2[241])))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
//row: 27
d2[351]=simde_mm_xor_si128(c2[2090],c2[428]);
//row: 28
d2[364]=simde_mm_xor_si128(c2[3666],simde_mm_xor_si128(c2[2663],c2[3772]));
//row: 29
d2[377]=simde_mm_xor_si128(c2[523],c2[2965]);
//row: 30
d2[390]=simde_mm_xor_si128(c2[1616],simde_mm_xor_si128(c2[391],simde_mm_xor_si128(c2[705],c2[1794])));
//row: 31
d2[403]=simde_mm_xor_si128(c2[2867],simde_mm_xor_si128(c2[3652],simde_mm_xor_si128(c2[2606],simde_mm_xor_si128(c2[3938],simde_mm_xor_si128(c2[3934],simde_mm_xor_si128(c2[287],simde_mm_xor_si128(c2[27],simde_mm_xor_si128(c2[813],simde_mm_xor_si128(c2[3181],simde_mm_xor_si128(c2[3433],simde_mm_xor_si128(c2[3173],simde_mm_xor_si128(c2[347],simde_mm_xor_si128(c2[1898],simde_mm_xor_si128(c2[2939],simde_mm_xor_si128(c2[4015],simde_mm_xor_si128(c2[894],simde_mm_xor_si128(c2[4016],simde_mm_xor_si128(c2[3756],simde_mm_xor_si128(c2[655],simde_mm_xor_si128(c2[3255],simde_mm_xor_si128(c2[2995],simde_mm_xor_si128(c2[167],simde_mm_xor_si128(c2[1466],simde_mm_xor_si128(c2[2247],simde_mm_xor_si128(c2[1987],simde_mm_xor_si128(c2[3574],simde_mm_xor_si128(c2[194],simde_mm_xor_si128(c2[4093],simde_mm_xor_si128(c2[2820],simde_mm_xor_si128(c2[215],simde_mm_xor_si128(c2[3338],simde_mm_xor_si128(c2[3078],simde_mm_xor_si128(c2[2586],simde_mm_xor_si128(c2[244],simde_mm_xor_si128(c2[3622],c2[3362])))))))))))))))))))))))))))))))))));
//row: 32
d2[416]=simde_mm_xor_si128(c2[526],simde_mm_xor_si128(c2[266],simde_mm_xor_si128(c2[1311],simde_mm_xor_si128(c2[1051],simde_mm_xor_si128(c2[5],simde_mm_xor_si128(c2[3646],simde_mm_xor_si128(c2[1597],simde_mm_xor_si128(c2[1337],simde_mm_xor_si128(c2[1333],simde_mm_xor_si128(c2[1598],simde_mm_xor_si128(c2[840],simde_mm_xor_si128(c2[580],simde_mm_xor_si128(c2[572],simde_mm_xor_si128(c2[2165],simde_mm_xor_si128(c2[1905],simde_mm_xor_si128(c2[3729],simde_mm_xor_si128(c2[3469],simde_mm_xor_si128(c2[338],simde_mm_xor_si128(c2[1674],simde_mm_xor_si128(c2[1414],simde_mm_xor_si128(c2[2452],simde_mm_xor_si128(c2[1155],simde_mm_xor_si128(c2[2473],simde_mm_xor_si128(c2[2213],simde_mm_xor_si128(c2[394],simde_mm_xor_si128(c2[130],simde_mm_xor_si128(c2[1985],simde_mm_xor_si128(c2[1725],simde_mm_xor_si128(c2[3284],simde_mm_xor_si128(c2[3024],simde_mm_xor_si128(c2[3545],simde_mm_xor_si128(c2[1233],simde_mm_xor_si128(c2[973],simde_mm_xor_si128(c2[1492],simde_mm_xor_si128(c2[479],simde_mm_xor_si128(c2[219],simde_mm_xor_si128(c2[1773],simde_mm_xor_si128(c2[477],simde_mm_xor_si128(c2[245],simde_mm_xor_si128(c2[4144],simde_mm_xor_si128(c2[2062],simde_mm_xor_si128(c2[1802],c2[761]))))))))))))))))))))))))))))))))))))))))));
//row: 33
d2[429]=simde_mm_xor_si128(c2[267],simde_mm_xor_si128(c2[1052],simde_mm_xor_si128(c2[6],simde_mm_xor_si128(c2[1338],simde_mm_xor_si128(c2[1334],simde_mm_xor_si128(c2[1586],simde_mm_xor_si128(c2[581],simde_mm_xor_si128(c2[573],simde_mm_xor_si128(c2[842],simde_mm_xor_si128(c2[1906],simde_mm_xor_si128(c2[3470],simde_mm_xor_si128(c2[339],simde_mm_xor_si128(c2[1415],simde_mm_xor_si128(c2[2453],simde_mm_xor_si128(c2[1156],simde_mm_xor_si128(c2[2214],simde_mm_xor_si128(c2[395],simde_mm_xor_si128(c2[1726],simde_mm_xor_si128(c2[3025],simde_mm_xor_si128(c2[3546],simde_mm_xor_si128(c2[974],simde_mm_xor_si128(c2[1493],simde_mm_xor_si128(c2[3572],simde_mm_xor_si128(c2[220],simde_mm_xor_si128(c2[1774],simde_mm_xor_si128(c2[478],simde_mm_xor_si128(c2[4145],simde_mm_xor_si128(c2[1803],c2[762]))))))))))))))))))))))))))));
//row: 34
d2[442]=simde_mm_xor_si128(c2[3647],simde_mm_xor_si128(c2[3387],simde_mm_xor_si128(c2[3907],simde_mm_xor_si128(c2[260],simde_mm_xor_si128(c2[0],simde_mm_xor_si128(c2[520],simde_mm_xor_si128(c2[3126],simde_mm_xor_si128(c2[3646],simde_mm_xor_si128(c2[1312],simde_mm_xor_si128(c2[546],simde_mm_xor_si128(c2[286],simde_mm_xor_si128(c2[806],simde_mm_xor_si128(c2[295],simde_mm_xor_si128(c2[815],simde_mm_xor_si128(c2[547],simde_mm_xor_si128(c2[1327],simde_mm_xor_si128(c2[1067],simde_mm_xor_si128(c2[3961],simde_mm_xor_si128(c2[3701],simde_mm_xor_si128(c2[62],simde_mm_xor_si128(c2[3693],simde_mm_xor_si128(c2[314],simde_mm_xor_si128(c2[54],simde_mm_xor_si128(c2[1127],simde_mm_xor_si128(c2[867],simde_mm_xor_si128(c2[1387],simde_mm_xor_si128(c2[2678],simde_mm_xor_si128(c2[2418],simde_mm_xor_si128(c2[2938],simde_mm_xor_si128(c2[3459],simde_mm_xor_si128(c2[3979],simde_mm_xor_si128(c2[636],simde_mm_xor_si128(c2[376],simde_mm_xor_si128(c2[896],simde_mm_xor_si128(c2[1414],simde_mm_xor_si128(c2[1934],simde_mm_xor_si128(c2[104],simde_mm_xor_si128(c2[884],simde_mm_xor_si128(c2[624],simde_mm_xor_si128(c2[1435],simde_mm_xor_si128(c2[1175],simde_mm_xor_si128(c2[1695],simde_mm_xor_si128(c2[3515],simde_mm_xor_si128(c2[136],simde_mm_xor_si128(c2[4035],simde_mm_xor_si128(c2[947],simde_mm_xor_si128(c2[687],simde_mm_xor_si128(c2[1207],simde_mm_xor_si128(c2[2246],simde_mm_xor_si128(c2[1986],simde_mm_xor_si128(c2[2506],simde_mm_xor_si128(c2[2507],simde_mm_xor_si128(c2[3287],simde_mm_xor_si128(c2[3027],simde_mm_xor_si128(c2[182],simde_mm_xor_si128(c2[4094],simde_mm_xor_si128(c2[442],simde_mm_xor_si128(c2[454],simde_mm_xor_si128(c2[1234],simde_mm_xor_si128(c2[974],simde_mm_xor_si128(c2[3600],simde_mm_xor_si128(c2[3340],simde_mm_xor_si128(c2[3860],simde_mm_xor_si128(c2[735],simde_mm_xor_si128(c2[1255],simde_mm_xor_si128(c2[3598],simde_mm_xor_si128(c2[219],simde_mm_xor_si128(c2[4118],simde_mm_xor_si128(c2[3366],simde_mm_xor_si128(c2[3106],simde_mm_xor_si128(c2[3626],simde_mm_xor_si128(c2[1024],simde_mm_xor_si128(c2[764],simde_mm_xor_si128(c2[1284],simde_mm_xor_si128(c2[3882],simde_mm_xor_si128(c2[503],c2[243]))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
//row: 35
d2[455]=simde_mm_xor_si128(c2[1047],simde_mm_xor_si128(c2[787],simde_mm_xor_si128(c2[1572],simde_mm_xor_si128(c2[526],simde_mm_xor_si128(c2[2118],simde_mm_xor_si128(c2[1858],simde_mm_xor_si128(c2[1854],simde_mm_xor_si128(c2[2106],simde_mm_xor_si128(c2[3415],simde_mm_xor_si128(c2[1361],simde_mm_xor_si128(c2[1101],simde_mm_xor_si128(c2[1093],simde_mm_xor_si128(c2[2686],simde_mm_xor_si128(c2[2426],simde_mm_xor_si128(c2[3990],simde_mm_xor_si128(c2[859],simde_mm_xor_si128(c2[1935],simde_mm_xor_si128(c2[2973],simde_mm_xor_si128(c2[1676],simde_mm_xor_si128(c2[2734],simde_mm_xor_si128(c2[915],simde_mm_xor_si128(c2[1960],simde_mm_xor_si128(c2[2506],simde_mm_xor_si128(c2[2246],simde_mm_xor_si128(c2[3545],simde_mm_xor_si128(c2[4066],simde_mm_xor_si128(c2[1494],simde_mm_xor_si128(c2[2013],simde_mm_xor_si128(c2[740],simde_mm_xor_si128(c2[2294],simde_mm_xor_si128(c2[998],simde_mm_xor_si128(c2[766],simde_mm_xor_si128(c2[506],simde_mm_xor_si128(c2[2323],c2[1282]))))))))))))))))))))))))))))))))));
//row: 36
d2[468]=simde_mm_xor_si128(c2[1312],simde_mm_xor_si128(c2[1882],c2[973]));
//row: 37
d2[481]=simde_mm_xor_si128(c2[787],simde_mm_xor_si128(c2[3907],simde_mm_xor_si128(c2[1572],simde_mm_xor_si128(c2[520],simde_mm_xor_si128(c2[526],simde_mm_xor_si128(c2[3646],simde_mm_xor_si128(c2[1858],simde_mm_xor_si128(c2[806],simde_mm_xor_si128(c2[1854],simde_mm_xor_si128(c2[815],simde_mm_xor_si128(c2[2106],simde_mm_xor_si128(c2[1327],simde_mm_xor_si128(c2[1067],simde_mm_xor_si128(c2[1101],simde_mm_xor_si128(c2[62],simde_mm_xor_si128(c2[1093],simde_mm_xor_si128(c2[314],simde_mm_xor_si128(c2[54],simde_mm_xor_si128(c2[2426],simde_mm_xor_si128(c2[1387],simde_mm_xor_si128(c2[3990],simde_mm_xor_si128(c2[2938],simde_mm_xor_si128(c2[859],simde_mm_xor_si128(c2[3979],simde_mm_xor_si128(c2[1935],simde_mm_xor_si128(c2[896],simde_mm_xor_si128(c2[2973],simde_mm_xor_si128(c2[1934],simde_mm_xor_si128(c2[1676],simde_mm_xor_si128(c2[884],simde_mm_xor_si128(c2[624],simde_mm_xor_si128(c2[2734],simde_mm_xor_si128(c2[1695],simde_mm_xor_si128(c2[915],simde_mm_xor_si128(c2[136],simde_mm_xor_si128(c2[4035],simde_mm_xor_si128(c2[2246],simde_mm_xor_si128(c2[1207],simde_mm_xor_si128(c2[3545],simde_mm_xor_si128(c2[2506],simde_mm_xor_si128(c2[4066],simde_mm_xor_si128(c2[3287],simde_mm_xor_si128(c2[3027],simde_mm_xor_si128(c2[1494],simde_mm_xor_si128(c2[442],simde_mm_xor_si128(c2[2013],simde_mm_xor_si128(c2[1234],simde_mm_xor_si128(c2[974],simde_mm_xor_si128(c2[740],simde_mm_xor_si128(c2[3860],simde_mm_xor_si128(c2[2294],simde_mm_xor_si128(c2[1255],simde_mm_xor_si128(c2[998],simde_mm_xor_si128(c2[219],simde_mm_xor_si128(c2[4118],simde_mm_xor_si128(c2[506],simde_mm_xor_si128(c2[3626],simde_mm_xor_si128(c2[2323],simde_mm_xor_si128(c2[1284],simde_mm_xor_si128(c2[1282],simde_mm_xor_si128(c2[503],c2[243])))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
//row: 38
d2[494]=simde_mm_xor_si128(c2[3647],simde_mm_xor_si128(c2[3387],simde_mm_xor_si128(c2[0],simde_mm_xor_si128(c2[3126],simde_mm_xor_si128(c2[546],simde_mm_xor_si128(c2[286],simde_mm_xor_si128(c2[295],simde_mm_xor_si128(c2[547],simde_mm_xor_si128(c2[3415],simde_mm_xor_si128(c2[3961],simde_mm_xor_si128(c2[3701],simde_mm_xor_si128(c2[3693],simde_mm_xor_si128(c2[1127],simde_mm_xor_si128(c2[867],simde_mm_xor_si128(c2[2418],simde_mm_xor_si128(c2[3459],simde_mm_xor_si128(c2[376],simde_mm_xor_si128(c2[1414],simde_mm_xor_si128(c2[104],simde_mm_xor_si128(c2[1175],simde_mm_xor_si128(c2[3515],simde_mm_xor_si128(c2[3520],simde_mm_xor_si128(c2[947],simde_mm_xor_si128(c2[687],simde_mm_xor_si128(c2[1986],simde_mm_xor_si128(c2[2507],simde_mm_xor_si128(c2[4094],simde_mm_xor_si128(c2[454],simde_mm_xor_si128(c2[3340],simde_mm_xor_si128(c2[735],simde_mm_xor_si128(c2[3598],simde_mm_xor_si128(c2[3366],simde_mm_xor_si128(c2[3106],simde_mm_xor_si128(c2[764],c2[3882]))))))))))))))))))))))))))))))))));
//row: 39
d2[507]=simde_mm_xor_si128(c2[3126],simde_mm_xor_si128(c2[2866],simde_mm_xor_si128(c2[3911],simde_mm_xor_si128(c2[3651],simde_mm_xor_si128(c2[2605],simde_mm_xor_si128(c2[1311],simde_mm_xor_si128(c2[38],simde_mm_xor_si128(c2[3937],simde_mm_xor_si128(c2[3933],simde_mm_xor_si128(c2[26],simde_mm_xor_si128(c2[3440],simde_mm_xor_si128(c2[3180],simde_mm_xor_si128(c2[3172],simde_mm_xor_si128(c2[606],simde_mm_xor_si128(c2[346],simde_mm_xor_si128(c2[2170],simde_mm_xor_si128(c2[1910],simde_mm_xor_si128(c2[2938],simde_mm_xor_si128(c2[115],simde_mm_xor_si128(c2[4014],simde_mm_xor_si128(c2[893],simde_mm_xor_si128(c2[3755],simde_mm_xor_si128(c2[914],simde_mm_xor_si128(c2[654],simde_mm_xor_si128(c2[2994],simde_mm_xor_si128(c2[426],simde_mm_xor_si128(c2[166],simde_mm_xor_si128(c2[1725],simde_mm_xor_si128(c2[1465],simde_mm_xor_si128(c2[1986],simde_mm_xor_si128(c2[3833],simde_mm_xor_si128(c2[3573],simde_mm_xor_si128(c2[4092],simde_mm_xor_si128(c2[3571],simde_mm_xor_si128(c2[3079],simde_mm_xor_si128(c2[2819],simde_mm_xor_si128(c2[214],simde_mm_xor_si128(c2[3077],simde_mm_xor_si128(c2[2845],simde_mm_xor_si128(c2[2585],simde_mm_xor_si128(c2[503],simde_mm_xor_si128(c2[243],c2[3361]))))))))))))))))))))))))))))))))))))))))));
//row: 40
d2[520]=simde_mm_xor_si128(c2[266],simde_mm_xor_si128(c2[267],simde_mm_xor_si128(c2[1051],simde_mm_xor_si128(c2[1052],simde_mm_xor_si128(c2[5],simde_mm_xor_si128(c2[6],simde_mm_xor_si128(c2[1337],simde_mm_xor_si128(c2[1338],simde_mm_xor_si128(c2[1333],simde_mm_xor_si128(c2[1334],simde_mm_xor_si128(c2[1598],simde_mm_xor_si128(c2[1846],simde_mm_xor_si128(c2[1586],simde_mm_xor_si128(c2[580],simde_mm_xor_si128(c2[581],simde_mm_xor_si128(c2[572],simde_mm_xor_si128(c2[833],simde_mm_xor_si128(c2[573],simde_mm_xor_si128(c2[324],simde_mm_xor_si128(c2[1905],simde_mm_xor_si128(c2[1906],simde_mm_xor_si128(c2[3469],simde_mm_xor_si128(c2[3470],simde_mm_xor_si128(c2[338],simde_mm_xor_si128(c2[339],simde_mm_xor_si128(c2[1414],simde_mm_xor_si128(c2[1415],simde_mm_xor_si128(c2[2452],simde_mm_xor_si128(c2[2453],simde_mm_xor_si128(c2[1155],simde_mm_xor_si128(c2[1416],simde_mm_xor_si128(c2[1156],simde_mm_xor_si128(c2[2213],simde_mm_xor_si128(c2[2214],simde_mm_xor_si128(c2[394],simde_mm_xor_si128(c2[655],simde_mm_xor_si128(c2[395],simde_mm_xor_si128(c2[1725],simde_mm_xor_si128(c2[1726],simde_mm_xor_si128(c2[3024],simde_mm_xor_si128(c2[3025],simde_mm_xor_si128(c2[3545],simde_mm_xor_si128(c2[3806],simde_mm_xor_si128(c2[3546],simde_mm_xor_si128(c2[973],simde_mm_xor_si128(c2[974],simde_mm_xor_si128(c2[1492],simde_mm_xor_si128(c2[1753],simde_mm_xor_si128(c2[1493],simde_mm_xor_si128(c2[219],simde_mm_xor_si128(c2[220],simde_mm_xor_si128(c2[1773],simde_mm_xor_si128(c2[1774],simde_mm_xor_si128(c2[477],simde_mm_xor_si128(c2[738],simde_mm_xor_si128(c2[478],simde_mm_xor_si128(c2[4144],simde_mm_xor_si128(c2[4145],simde_mm_xor_si128(c2[1802],simde_mm_xor_si128(c2[1803],simde_mm_xor_si128(c2[761],simde_mm_xor_si128(c2[1022],c2[762]))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
//row: 41
d2[533]=simde_mm_xor_si128(c2[1566],simde_mm_xor_si128(c2[1306],simde_mm_xor_si128(c2[2091],simde_mm_xor_si128(c2[1045],simde_mm_xor_si128(c2[2637],simde_mm_xor_si128(c2[2377],simde_mm_xor_si128(c2[2373],simde_mm_xor_si128(c2[2638],simde_mm_xor_si128(c2[3937],simde_mm_xor_si128(c2[1880],simde_mm_xor_si128(c2[1620],simde_mm_xor_si128(c2[1612],simde_mm_xor_si128(c2[3205],simde_mm_xor_si128(c2[2945],simde_mm_xor_si128(c2[350],simde_mm_xor_si128(c2[1378],simde_mm_xor_si128(c2[2454],simde_mm_xor_si128(c2[3492],simde_mm_xor_si128(c2[2195],simde_mm_xor_si128(c2[3253],simde_mm_xor_si128(c2[1434],simde_mm_xor_si128(c2[1442],simde_mm_xor_si128(c2[3025],simde_mm_xor_si128(c2[2765],simde_mm_xor_si128(c2[4064],simde_mm_xor_si128(c2[426],simde_mm_xor_si128(c2[2013],simde_mm_xor_si128(c2[2532],simde_mm_xor_si128(c2[1259],simde_mm_xor_si128(c2[2813],simde_mm_xor_si128(c2[1517],simde_mm_xor_si128(c2[1285],simde_mm_xor_si128(c2[1025],simde_mm_xor_si128(c2[2842],c2[1801]))))))))))))))))))))))))))))))))));
}
}