Implementation notes: aarch64, rockpi4, crypto_kem/r5n13kem0d

Computer: rockpi4
Architecture: aarch64
CPU ID: unknown CPU ID
SUPERCOP version: 20190816
Operation: crypto_kem
Primitive: r5n13kem0d
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
2135746923818 0 053945 864 1584optclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019121420190816
2159329232746 0 060544 952 1568avx2gcc_-funroll-loops_-O_-fomit-frame-pointer2019121420190816
2180681317734 0 049848 936 1552optgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019121420190816
2181300817734 0 049848 936 1552optgcc_-Os_-fomit-frame-pointer2019121420190816
2258614417726 0 049896 936 1552optgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019121420190816
2381936223818 0 053993 864 1584avx2clang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019121420190816
2390691825270 0 053592 952 1584optgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019121420190816
2392302524086 0 054089 864 1584optclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019121420190816
2396391223818 0 053945 864 1584avx2clang_-O3_-fomit-frame-pointer_-Qunused-arguments2019121420190816
2424227432746 0 060544 952 1568avx2gcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019121420190816
2429844219634 0 051608 952 1568optgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019121420190816
2437443423818 0 053993 864 1584avx2clang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019121420190816
2440086632746 0 060544 952 1568optgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019121420190816
2469781331218 0 057808 952 1584optgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019121420190816
2488903231878 0 058128 952 1584optgcc_-funroll-loops_-O3_-fomit-frame-pointer2019121420190816
2499104330654 0 057616 952 1568optgcc_-funroll-loops_-O2_-fomit-frame-pointer2019121420190816
2499393419454 0 051272 952 1568avx2gcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019121420190816
2536274323818 0 053993 864 1584optclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019121420190816
2572494420882 0 052504 952 1568optgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019121420190816
2748308520882 0 052504 952 1568avx2gcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019121420190816
6724507330178 0 057488 952 1568optgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019121420190816
6734667131218 0 057808 952 1584avx2gcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019121420190816
6745033430178 0 057488 952 1568avx2gcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019121420190816
6766013825514 0 053672 952 1584avx2gcc_-O3_-fomit-frame-pointer2019121420190816
6769483025778 0 053896 952 1584avx2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019121420190816
6773282623818 0 053993 864 1584optclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019121420190816
6774480325514 0 053672 952 1584optgcc_-O3_-fomit-frame-pointer2019121420190816
6781129625270 0 053592 952 1584avx2gcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019121420190816
6794139130654 0 057616 952 1568avx2gcc_-funroll-loops_-O2_-fomit-frame-pointer2019121420190816
6809048424086 0 054089 864 1584avx2clang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019121420190816
6814169623818 0 053993 864 1584avx2clang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019121420190816
6814954323818 0 053993 864 1584optclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019121420190816
6850183231878 0 058128 952 1584avx2gcc_-funroll-loops_-O3_-fomit-frame-pointer2019121420190816
7067379925778 0 053896 952 1584optgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019121420190816
7418595119634 0 051608 952 1568avx2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019121420190816
7419379819402 0 051384 952 1568avx2gcc_-O2_-fomit-frame-pointer2019121420190816
7444696719402 0 051384 952 1568optgcc_-O2_-fomit-frame-pointer2019121420190816
7457210617726 0 049896 936 1552optgcc_-funroll-loops_-Os_-fomit-frame-pointer2019121420190816
7488970319454 0 051272 952 1568optgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019121420190816
7500575617726 0 049896 936 1552avx2gcc_-funroll-loops_-Os_-fomit-frame-pointer2019121420190816
7516806517734 0 049848 936 1552avx2gcc_-Os_-fomit-frame-pointer2019121420190816
7539273717734 0 049848 936 1552optgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019121420190816
7617537217734 0 049848 936 1552avx2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019121420190816
7671475017734 0 049848 936 1552avx2gcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019121420190816
7801446117726 0 049896 936 1552avx2gcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019121420190816
8045653032746 0 060544 952 1568optgcc_-funroll-loops_-O_-fomit-frame-pointer2019121420190816
8724170720882 0 052504 952 1568avx2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019121420190816
8742301420882 0 052504 952 1568avx2gcc_-O_-fomit-frame-pointer2019121420190816
8773317720882 0 052504 952 1568optgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019121420190816
8972796720882 0 052504 952 1568optgcc_-O_-fomit-frame-pointer2019121420190816
14229543338999 0 060248 936 1568avx2gcc_-funroll-loops2019121420190816
16304042338999 0 060248 936 1568optgcc2019121420190816
42249321838999 0 060248 936 1568optcc2019121420190816
42464825238999 0 060248 936 1568avx2cc2019121420190816
42514426538999 0 060248 936 1568avx2gcc2019121420190816
43365743438999 0 060248 936 1568optgcc_-funroll-loops2019121420190816
160544953131037 648 50069046 1488 2096refclang_-O3_-fwrapv_-mavx2_-fomit-frame-pointer_-Qunused-arguments2019121420190816
163245105841471 652 49677713 1608 2064refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019121420190816
164753010139429 652 49675233 1608 2080refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019121420190816
166448003454545 652 49689089 1608 2080refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019121420190816
167949299739781 652 49675633 1608 2080refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019121420190816
170123001330961 648 50068918 1488 2096refclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019121420190816
174673683130491 652 49666777 1608 2064refgcc_-O_-fomit-frame-pointer2019121420190816
174761032626616 652 49666669 1648 2048refgcc_-Os_-fomit-frame-pointer2019121420190816
174922598229287 652 49666241 1608 2064refgcc_-O2_-fomit-frame-pointer2019121420190816
176391432726616 652 49666669 1648 2048refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019121420190816
176742276226580 652 49666685 1648 2048refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019121420190816
216120463331037 648 50069046 1488 2096refclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019121420190816
342343299239968 652 49681669 1648 2064refgcc2019121420190816
347907070039968 652 49681669 1648 2064refgcc_-funroll-loops2019121420190816
397983320029503 652 49666225 1608 2064refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019121420190816
401217812130491 652 49666777 1608 2064refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019121420190816
402663312130471 652 49666753 1608 2064refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019121420190816
407222006129575 652 49666513 1608 2064refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019121420190816
409204612640959 652 49676225 1608 2064refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019121420190816
409718549841471 652 49677713 1608 2064refgcc_-funroll-loops_-O_-fomit-frame-pointer2019121420190816
413816253239485 652 49675393 1608 2080refgcc_-O3_-fomit-frame-pointer2019121420190816
414632176040999 652 49676153 1608 2064refgcc_-funroll-loops_-O2_-fomit-frame-pointer2019121420190816
417010477826616 652 49666669 1648 2048refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019121420190816
417433885431037 648 50069046 1488 2096refclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019121420190816
417638692154801 652 49689257 1608 2080refgcc_-funroll-loops_-O3_-fomit-frame-pointer2019121420190816
421504991631453 648 50069254 1488 2096refclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019121420190816
424651803826580 652 49666685 1648 2048refgcc_-funroll-loops_-Os_-fomit-frame-pointer2019121420190816
846705465939968 652 49681669 1648 2064refcc2019121420190816

Compiler output

Implementation: avx2
Security model: unknown
Compiler: cc
a_fixed.c: In file included from a_fixed.h:13,
a_fixed.c: from a_fixed.c:10:
a_fixed.c: r5_parameter_sets.h:142:2: warning: #warning AVX2 not supported by platform [-Wcpp]
a_fixed.c: #warning AVX2 not supported by platform
a_fixed.c: ^~~~~~~
a_random.c: In file included from a_random.h:13,
a_random.c: from a_random.c:10:
a_random.c: r5_parameter_sets.h:142:2: warning: #warning AVX2 not supported by platform [-Wcpp]
a_random.c: #warning AVX2 not supported by platform
a_random.c: ^~~~~~~
cca_encrypt.c: In file included from cca_encrypt.h:14,
cca_encrypt.c: from cca_encrypt.c:11:
cca_encrypt.c: r5_parameter_sets.h:142:2: warning: #warning AVX2 not supported by platform [-Wcpp]
cca_encrypt.c: #warning AVX2 not supported by platform
cca_encrypt.c: ^~~~~~~
cpa_kem.c: In file included from cpa_kem.h:13,
cpa_kem.c: from cpa_kem.c:12:
cpa_kem.c: r5_parameter_sets.h:142:2: warning: #warning AVX2 not supported by platform [-Wcpp]
cpa_kem.c: #warning AVX2 not supported by platform
cpa_kem.c: ^~~~~~~
drbg.c: In file included from drbg.h:13,
drbg.c: from drbg.c:18:
drbg.c: r5_parameter_sets.h:142:2: warning: #warning AVX2 not supported by platform [-Wcpp]
drbg.c: #warning AVX2 not supported by platform
drbg.c: ^~~~~~~
matmul.c: In file included from matmul.h:8,
matmul.c: from matmul.c:8:
matmul.c: r5_parameter_sets.h:142:2: warning: #warning AVX2 not supported by platform [-Wcpp]
matmul.c: #warning AVX2 not supported by platform
matmul.c: ^~~~~~~
matmul_avx2.c: In file included from matmul.h:8,
matmul_avx2.c: from matmul_avx2.c:8:
matmul_avx2.c: r5_parameter_sets.h:142:2: warning: #warning AVX2 not supported by platform [-Wcpp]
matmul_avx2.c: #warning AVX2 not supported by platform
matmul_avx2.c: ^~~~~~~
matmul_cm.c: In file included from matmul.h:8,
matmul_cm.c: from matmul_cm.c:7:
matmul_cm.c: r5_parameter_sets.h:142:2: warning: #warning AVX2 not supported by platform [-Wcpp]
matmul_cm.c: #warning AVX2 not supported by platform
matmul_cm.c: ^~~~~~~
probe_cm.c: In file included from probe_cm.c:6:
probe_cm.c: r5_parameter_sets.h:142:2: warning: #warning AVX2 not supported by platform [-Wcpp]
probe_cm.c: #warning AVX2 not supported by platform
probe_cm.c: ^~~~~~~
r5_cca_kem.c: In file included from r5_cca_kem.c:7:
r5_cca_kem.c: r5_parameter_sets.h:142:2: warning: #warning AVX2 not supported by platform [-Wcpp]
r5_cca_kem.c: #warning AVX2 not supported by platform
r5_cca_kem.c: ^~~~~~~
r5_cca_pke.c: In file included from r5_cca_pke.c:12:
r5_cca_pke.c: r5_parameter_sets.h:142:2: warning: #warning AVX2 not supported by platform [-Wcpp]
r5_cca_pke.c: #warning AVX2 not supported by platform
r5_cca_pke.c: ^~~~~~~
r5_cpa_kem.c: In file included from r5_cpa_kem.c:9:
r5_cpa_kem.c: r5_parameter_sets.h:142:2: warning: #warning AVX2 not supported by platform [-Wcpp]
r5_cpa_kem.c: #warning AVX2 not supported by platform
r5_cpa_kem.c: ^~~~~~~
r5_cpa_pke_n1.c: In file included from r5_cpa_pke_n1.c:6:
r5_cpa_pke_n1.c: r5_parameter_sets.h:142:2: warning: #warning AVX2 not supported by platform [-Wcpp]
r5_cpa_pke_n1.c: #warning AVX2 not supported by platform
r5_cpa_pke_n1.c: ^~~~~~~
r5_cpa_pke_nd.c: In file included from r5_cpa_pke_nd.c:7:
r5_cpa_pke_nd.c: r5_parameter_sets.h:142:2: warning: #warning AVX2 not supported by platform [-Wcpp]
r5_cpa_pke_nd.c: #warning AVX2 not supported by platform
r5_cpa_pke_nd.c: ^~~~~~~
r5_dem.c: In file included from r5_dem.c:11:
r5_dem.c: r5_parameter_sets.h:142:2: warning: #warning AVX2 not supported by platform [-Wcpp]
r5_dem.c: #warning AVX2 not supported by platform
r5_dem.c: ^~~~~~~
ringmul.c: In file included from ringmul.h:9,
ringmul.c: from ringmul.c:8:
ringmul.c: r5_parameter_sets.h:142:2: warning: #warning AVX2 not supported by platform [-Wcpp]
ringmul.c: #warning AVX2 not supported by platform
ringmul.c: ^~~~~~~
ringmul_cm.c: In file included from ringmul.h:9,
ringmul_cm.c: from ringmul_cm.c:8:
ringmul_cm.c: r5_parameter_sets.h:142:2: warning: #warning AVX2 not supported by platform [-Wcpp]
ringmul_cm.c: #warning AVX2 not supported by platform
ringmul_cm.c: ^~~~~~~

Number of similar (compiler,implementation) pairs: 23, namely:
CompilerImplementations
cc avx2
gcc avx2
gcc -O2 -fomit-frame-pointer avx2
gcc -O3 -fomit-frame-pointer avx2
gcc -O -fomit-frame-pointer avx2
gcc -Os -fomit-frame-pointer avx2
gcc -fno-schedule-insns -O2 -fomit-frame-pointer avx2
gcc -fno-schedule-insns -O3 -fomit-frame-pointer avx2
gcc -fno-schedule-insns -O -fomit-frame-pointer avx2
gcc -fno-schedule-insns -Os -fomit-frame-pointer avx2
gcc -funroll-loops avx2
gcc -funroll-loops -O2 -fomit-frame-pointer avx2
gcc -funroll-loops -O3 -fomit-frame-pointer avx2
gcc -funroll-loops -O -fomit-frame-pointer avx2
gcc -funroll-loops -Os -fomit-frame-pointer avx2
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer avx2
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer avx2
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer avx2
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer avx2
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv avx2
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv avx2
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv avx2
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv avx2

Compiler output

Implementation: avx2
Security model: unknown
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
a_fixed.c: In file included from a_fixed.c:10:
a_fixed.c: In file included from ./a_fixed.h:13:
a_fixed.c: ./r5_parameter_sets.h:142:2: warning: AVX2 not supported by platform [-W#warnings]
a_fixed.c: #warning AVX2 not supported by platform
a_fixed.c: ^
a_fixed.c: 1 warning generated.
a_random.c: In file included from a_random.c:10:
a_random.c: In file included from ./a_random.h:13:
a_random.c: ./r5_parameter_sets.h:142:2: warning: AVX2 not supported by platform [-W#warnings]
a_random.c: #warning AVX2 not supported by platform
a_random.c: ^
a_random.c: 1 warning generated.
cca_encrypt.c: In file included from cca_encrypt.c:11:
cca_encrypt.c: In file included from ./cca_encrypt.h:14:
cca_encrypt.c: ./r5_parameter_sets.h:142:2: warning: AVX2 not supported by platform [-W#warnings]
cca_encrypt.c: #warning AVX2 not supported by platform
cca_encrypt.c: ^
cca_encrypt.c: 1 warning generated.
cpa_kem.c: In file included from cpa_kem.c:12:
cpa_kem.c: In file included from ./cpa_kem.h:13:
cpa_kem.c: ./r5_parameter_sets.h:142:2: warning: AVX2 not supported by platform [-W#warnings]
cpa_kem.c: #warning AVX2 not supported by platform
cpa_kem.c: ^
cpa_kem.c: 1 warning generated.
drbg.c: In file included from drbg.c:18:
drbg.c: In file included from ./drbg.h:13:
drbg.c: ./r5_parameter_sets.h:142:2: warning: AVX2 not supported by platform [-W#warnings]
drbg.c: #warning AVX2 not supported by platform
drbg.c: ^
drbg.c: 1 warning generated.
matmul.c: In file included from matmul.c:8:
matmul.c: In file included from ./matmul.h:8:
matmul.c: ./r5_parameter_sets.h:142:2: warning: AVX2 not supported by platform [-W#warnings]
matmul.c: #warning AVX2 not supported by platform
matmul.c: ^
matmul.c: 1 warning generated.
matmul_avx2.c: In file included from matmul_avx2.c:8:
matmul_avx2.c: In file included from ./matmul.h:8:
matmul_avx2.c: ./r5_parameter_sets.h:142:2: warning: AVX2 not supported by platform [-W#warnings]
matmul_avx2.c: #warning AVX2 not supported by platform
matmul_avx2.c: ^
matmul_avx2.c: 1 warning generated.
matmul_cm.c: In file included from matmul_cm.c:7:
matmul_cm.c: In file included from ./matmul.h:8:
matmul_cm.c: ./r5_parameter_sets.h:142:2: warning: AVX2 not supported by platform [-W#warnings]
matmul_cm.c: #warning AVX2 not supported by platform
matmul_cm.c: ^
matmul_cm.c: 1 warning generated.
probe_cm.c: In file included from probe_cm.c:6:
probe_cm.c: ./r5_parameter_sets.h:142:2: warning: AVX2 not supported by platform [-W#warnings]
probe_cm.c: #warning AVX2 not supported by platform
probe_cm.c: ^
probe_cm.c: 1 warning generated.
r5_cca_kem.c: In file included from r5_cca_kem.c:7:
r5_cca_kem.c: ./r5_parameter_sets.h:142:2: warning: AVX2 not supported by platform [-W#warnings]
r5_cca_kem.c: #warning AVX2 not supported by platform
r5_cca_kem.c: ^
r5_cca_kem.c: 1 warning generated.
r5_cca_pke.c: In file included from r5_cca_pke.c:12:
r5_cca_pke.c: ./r5_parameter_sets.h:142:2: warning: AVX2 not supported by platform [-W#warnings]
r5_cca_pke.c: #warning AVX2 not supported by platform
r5_cca_pke.c: ^
r5_cca_pke.c: 1 warning generated.
r5_cpa_kem.c: In file included from r5_cpa_kem.c:9:
r5_cpa_kem.c: ./r5_parameter_sets.h:142:2: warning: AVX2 not supported by platform [-W#warnings]
r5_cpa_kem.c: #warning AVX2 not supported by platform
r5_cpa_kem.c: ^
r5_cpa_kem.c: 1 warning generated.
r5_cpa_pke_n1.c: In file included from r5_cpa_pke_n1.c:6:
r5_cpa_pke_n1.c: ./r5_parameter_sets.h:142:2: warning: AVX2 not supported by platform [-W#warnings]
r5_cpa_pke_n1.c: #warning AVX2 not supported by platform
r5_cpa_pke_n1.c: ^
r5_cpa_pke_n1.c: 1 warning generated.
r5_cpa_pke_nd.c: In file included from r5_cpa_pke_nd.c:7:
r5_cpa_pke_nd.c: ./r5_parameter_sets.h:142:2: warning: AVX2 not supported by platform [-W#warnings]
r5_cpa_pke_nd.c: #warning AVX2 not supported by platform
r5_cpa_pke_nd.c: ^
r5_cpa_pke_nd.c: 1 warning generated.
r5_dem.c: In file included from r5_dem.c:11:
r5_dem.c: ./r5_parameter_sets.h:142:2: warning: AVX2 not supported by platform [-W#warnings]
r5_dem.c: #warning AVX2 not supported by platform
r5_dem.c: ^
r5_dem.c: 1 warning generated.
ringmul.c: In file included from ringmul.c:8:
ringmul.c: In file included from ./ringmul.h:9:
ringmul.c: ./r5_parameter_sets.h:142:2: warning: AVX2 not supported by platform [-W#warnings]
ringmul.c: #warning AVX2 not supported by platform
ringmul.c: ^
ringmul.c: 1 warning generated.
ringmul_cm.c: In file included from ringmul_cm.c:8:
ringmul_cm.c: In file included from ./ringmul.h:9:
ringmul_cm.c: ./r5_parameter_sets.h:142:2: warning: AVX2 not supported by platform [-W#warnings]
ringmul_cm.c: #warning AVX2 not supported by platform
ringmul_cm.c: ^
ringmul_cm.c: 1 warning generated.

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments avx2
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments avx2
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments avx2
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments avx2
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments avx2