Implementation notes: amd64, gpu, crypto_kem/bike3l1sc

Computer: gpu
Architecture: amd64
CPU ID: GenuineIntel-000206d7-bfebfbff
SUPERCOP version: 20190816
Operation: crypto_kem
Primitive: bike3l1sc
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
1978561515024 32 036260 984 1920ref_osslclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2019100820190816
1983268815024 32 036260 984 1920ref_osslclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019100820190816
1987982114959 32 038612 984 1568ref_osslclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019100820190816
2043780914959 32 038612 984 1568ref_osslclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019100820190816
2060119518549 32 039124 984 1920ref_osslclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019100820190816
2087306714961 32 037332 984 1568ref_osslclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019100820190816
2169637218549 32 039124 984 1920ref_osslclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019100820190816
2264817314959 32 038612 984 1568ref_osslclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019100820190816
65461914? ? ?? ? ?ref_osslgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2019100820190816
66170277? ? ?? ? ?ref_osslgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2019100820190816
66590109? ? ?? ? ?ref_osslgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2019100820190816
67279539? ? ?? ? ?ref_osslgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2019100820190816
68705016? ? ?? ? ?ref_osslgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2019100820190816
68954691? ? ?? ? ?ref_osslgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019100820190816
70156473? ? ?? ? ?ref_osslgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2019100820190816
72050358? ? ?? ? ?ref_osslgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019100820190816
72435330? ? ?? ? ?ref_osslgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019100820190816
72563499? ? ?? ? ?ref_osslgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2019100820190816
72840504? ? ?? ? ?ref_osslgcc_-funroll-loops_-O3_-fomit-frame-pointer2019100820190816
73071942? ? ?? ? ?ref_osslgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2019100820190816
73905789? ? ?? ? ?ref_osslgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019100820190816
73948743? ? ?? ? ?ref_osslgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2019100820190816
74868279? ? ?? ? ?ref_osslgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2019100820190816
76161102? ? ?? ? ?ref_osslgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2019100820190816
76377258? ? ?? ? ?ref_osslgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2019100820190816
76989045? ? ?? ? ?ref_osslgcc_-funroll-loops_-O2_-fomit-frame-pointer2019100820190816
77763021? ? ?? ? ?ref_osslgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019100820190816
83573424? ? ?? ? ?ref_osslgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2019100820190816
86930430? ? ?? ? ?ref_osslgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019100820190816
87487653? ? ?? ? ?ref_osslgcc_-march=barcelona_-O3_-fomit-frame-pointer2019100820190816
87798087? ? ?? ? ?ref_osslgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2019100820190816
87979713? ? ?? ? ?ref_osslgcc_-march=barcelona_-O2_-fomit-frame-pointer2019100820190816
88557648? ? ?? ? ?ref_osslgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2019100820190816
88981794? ? ?? ? ?ref_osslgcc_-m64_-O3_-fomit-frame-pointer2019100820190816
89972415? ? ?? ? ?ref_osslgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2019100820190816
90120966? ? ?? ? ?ref_osslgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2019100820190816
90521367? ? ?? ? ?ref_osslgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2019100820190816
90726231? ? ?? ? ?ref_osslgcc_-march=nocona_-O2_-fomit-frame-pointer2019100820190816
90906474? ? ?? ? ?ref_osslgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2019100820190816
91025106? ? ?? ? ?ref_osslgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2019100820190816
91661796? ? ?? ? ?ref_osslgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2019100820190816
91701975? ? ?? ? ?ref_osslgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019100820190816
91821153? ? ?? ? ?ref_osslgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2019100820190816
92164902? ? ?? ? ?ref_osslgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2019100820190816
92552127? ? ?? ? ?ref_osslgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2019100820190816
93564501? ? ?? ? ?ref_osslgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2019100820190816
93743064? ? ?? ? ?ref_osslgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019100820190816
93857451? ? ?? ? ?ref_osslgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019100820190816
93966720? ? ?? ? ?ref_osslgcc_-O2_-fomit-frame-pointer2019100820190816
94072551? ? ?? ? ?ref_osslgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2019100820190816
94357875? ? ?? ? ?ref_osslgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019100820190816
94388436? ? ?? ? ?ref_osslgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019100820190816
94823580? ? ?? ? ?ref_osslgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019100820190816
94852080? ? ?? ? ?ref_osslgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2019100820190816
95132571? ? ?? ? ?ref_osslgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2019100820190816
95633427? ? ?? ? ?ref_osslgcc_-march=k8_-O3_-fomit-frame-pointer2019100820190816
95835264? ? ?? ? ?ref_osslgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2019100820190816
96394011? ? ?? ? ?ref_osslgcc_-m64_-O2_-fomit-frame-pointer2019100820190816
96506220? ? ?? ? ?ref_osslgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2019100820190816
96590358? ? ?? ? ?ref_osslgcc_-funroll-loops_-O_-fomit-frame-pointer2019100820190816
96673968? ? ?? ? ?ref_osslgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019100820190816
96948966? ? ?? ? ?ref_osslgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019100820190816
97293855? ? ?? ? ?ref_osslgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2019100820190816
97668453? ? ?? ? ?ref_osslgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019100820190816
98139189? ? ?? ? ?ref_osslgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2019100820190816
98174007? ? ?? ? ?ref_osslgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2019100820190816
98390004? ? ?? ? ?ref_osslgcc_-O3_-fomit-frame-pointer2019100820190816
98548497? ? ?? ? ?ref_osslgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2019100820190816
98993916? ? ?? ? ?ref_osslgcc_-march=k8_-O2_-fomit-frame-pointer2019100820190816
99229566? ? ?? ? ?ref_osslgcc_-march=nocona_-O3_-fomit-frame-pointer2019100820190816
100166169? ? ?? ? ?ref_osslgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2019100820190816
100995147? ? ?? ? ?ref_osslgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2019100820190816
102339897? ? ?? ? ?ref_osslgcc_-m64_-O_-fomit-frame-pointer2019100820190816
102497481? ? ?? ? ?ref_osslgcc_-m64_-Os_-fomit-frame-pointer2019100820190816
102641454? ? ?? ? ?ref_osslgcc_-march=k8_-Os_-fomit-frame-pointer2019100820190816
102904677? ? ?? ? ?ref_osslgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2019100820190816
103300680? ? ?? ? ?ref_osslgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2019100820190816
103479267? ? ?? ? ?ref_osslgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2019100820190816
103974756? ? ?? ? ?ref_osslgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2019100820190816
105201954? ? ?? ? ?ref_osslgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2019100820190816
106545645? ? ?? ? ?ref_osslgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2019100820190816
106908177? ? ?? ? ?ref_osslgcc_-funroll-loops_-Os_-fomit-frame-pointer2019100820190816
107464725? ? ?? ? ?ref_osslgcc_-O_-fomit-frame-pointer2019100820190816
107753196? ? ?? ? ?ref_osslgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2019100820190816
108652959? ? ?? ? ?ref_osslgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019100820190816
108866859? ? ?? ? ?ref_osslgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2019100820190816
109476291? ? ?? ? ?ref_osslgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019100820190816
110568705? ? ?? ? ?ref_osslgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2019100820190816
110601885? ? ?? ? ?ref_osslgcc_-m64_-march=k8_-O_-fomit-frame-pointer2019100820190816
116981475? ? ?? ? ?ref_osslgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2019100820190816
117248133? ? ?? ? ?ref_osslgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019100820190816
117991608? ? ?? ? ?ref_osslgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2019100820190816
118506597? ? ?? ? ?ref_osslgcc_-march=nocona_-Os_-fomit-frame-pointer2019100820190816
118530084? ? ?? ? ?ref_osslgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2019100820190816
118608039? ? ?? ? ?ref_osslgcc_-Os_-fomit-frame-pointer2019100820190816
118637235? ? ?? ? ?ref_osslgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019100820190816
118720107? ? ?? ? ?ref_osslgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2019100820190816
118758198? ? ?? ? ?ref_osslgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2019100820190816
118785687? ? ?? ? ?ref_osslgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019100820190816
118873908? ? ?? ? ?ref_osslgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2019100820190816
118888452? ? ?? ? ?ref_osslgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2019100820190816
118982289? ? ?? ? ?ref_osslgcc_-m64_-march=core2_-O_-fomit-frame-pointer2019100820190816
119176659? ? ?? ? ?ref_osslgcc_-march=k8_-O_-fomit-frame-pointer2019100820190816
119216571? ? ?? ? ?ref_osslgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2019100820190816
119331063? ? ?? ? ?ref_osslgcc_-march=barcelona_-Os_-fomit-frame-pointer2019100820190816
119467539? ? ?? ? ?ref_osslgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019100820190816
119559069? ? ?? ? ?ref_osslgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2019100820190816
119911440? ? ?? ? ?ref_osslgcc_-march=barcelona_-O_-fomit-frame-pointer2019100820190816
120188277? ? ?? ? ?ref_osslgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2019100820190816
120253905? ? ?? ? ?ref_osslgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2019100820190816
120499923? ? ?? ? ?ref_osslgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2019100820190816
122454480? ? ?? ? ?ref_osslgcc_-march=nocona_-O_-fomit-frame-pointer2019100820190816
297883515? ? ?? ? ?ref_osslgcc_-funroll-loops2019100820190816
313074732? ? ?? ? ?ref_osslgcc2019100820190816
321537654? ? ?? ? ?ref_osslcc2019100820190816

Test failure

Implementation: avx2_ossl
Security model: unknown
Compiler: cc
error 111

Number of similar (compiler,implementation) pairs: 215, namely:
CompilerImplementations
cc avx2_ossl
gcc avx2_ossl
gcc -O2 -fomit-frame-pointer avx2_ossl
gcc -O3 -fomit-frame-pointer avx2_ossl
gcc -O -fomit-frame-pointer avx2_ossl
gcc -Os -fomit-frame-pointer avx2_ossl
gcc -fno-schedule-insns -O2 -fomit-frame-pointer avx2_ossl
gcc -fno-schedule-insns -O3 -fomit-frame-pointer avx2_ossl
gcc -fno-schedule-insns -O -fomit-frame-pointer avx2_ossl
gcc -fno-schedule-insns -Os -fomit-frame-pointer avx2_ossl
gcc -funroll-loops avx2_ossl
gcc -funroll-loops -O2 -fomit-frame-pointer avx2_ossl
gcc -funroll-loops -O3 -fomit-frame-pointer avx2_ossl
gcc -funroll-loops -O -fomit-frame-pointer avx2_ossl
gcc -funroll-loops -Os -fomit-frame-pointer avx2_ossl
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer avx2_ossl
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer avx2_ossl
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer avx2_ossl
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer avx2_ossl
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer avx2_ossl
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer avx2_ossl
gcc -funroll-loops -m64 -O -fomit-frame-pointer avx2_ossl
gcc -funroll-loops -m64 -Os -fomit-frame-pointer avx2_ossl
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer avx2_ossl
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer avx2_ossl
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer avx2_ossl
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer avx2_ossl
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer avx2_ossl
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer avx2_ossl
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer avx2_ossl
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer avx2_ossl
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer avx2_ossl
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer avx2_ossl
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer avx2_ossl
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer avx2_ossl
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer avx2_ossl
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer avx2_ossl
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer avx2_ossl
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer avx2_ossl
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer avx2_ossl
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer avx2_ossl
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer avx2_ossl
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer avx2_ossl
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer avx2_ossl
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer avx2_ossl
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer avx2_ossl
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer avx2_ossl
gcc -m64 -O2 -fomit-frame-pointer avx2_ossl
gcc -m64 -O3 -fomit-frame-pointer avx2_ossl
gcc -m64 -O -fomit-frame-pointer avx2_ossl
gcc -m64 -Os -fomit-frame-pointer avx2_ossl
gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer avx2_ossl
gcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer avx2_ossl
gcc -m64 -march=core-avx-i -O -fomit-frame-pointer avx2_ossl
gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer avx2_ossl
gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer avx2_ossl
gcc -m64 -march=core-avx2 -O -fomit-frame-pointer avx2_ossl
gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer avx2_ossl
gcc -m64 -march=core2 -O2 -fomit-frame-pointer avx2_ossl
gcc -m64 -march=core2 -O3 -fomit-frame-pointer avx2_ossl
gcc -m64 -march=core2 -O -fomit-frame-pointer avx2_ossl
gcc -m64 -march=core2 -Os -fomit-frame-pointer avx2_ossl
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer avx2_ossl
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer avx2_ossl
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer avx2_ossl
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer avx2_ossl
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer avx2_ossl
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer avx2_ossl
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer avx2_ossl
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer avx2_ossl
gcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer avx2_ossl
gcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer avx2_ossl
gcc -m64 -march=corei7-avx -O -fomit-frame-pointer avx2_ossl
gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer avx2_ossl
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer avx2_ossl
gcc -m64 -march=corei7 -O3 -fomit-frame-pointer avx2_ossl
gcc -m64 -march=corei7 -O -fomit-frame-pointer avx2_ossl
gcc -m64 -march=corei7 -Os -fomit-frame-pointer avx2_ossl
gcc -m64 -march=k8 -O2 -fomit-frame-pointer avx2_ossl
gcc -m64 -march=k8 -O3 -fomit-frame-pointer avx2_ossl
gcc -m64 -march=k8 -O -fomit-frame-pointer avx2_ossl
gcc -m64 -march=k8 -Os -fomit-frame-pointer avx2_ossl
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer avx2_ossl
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer avx2_ossl
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer avx2_ossl
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer avx2_ossl
gcc -m64 -march=nocona -O2 -fomit-frame-pointer avx2_ossl
gcc -m64 -march=nocona -O3 -fomit-frame-pointer avx2_ossl
gcc -m64 -march=nocona -O -fomit-frame-pointer avx2_ossl
gcc -m64 -march=nocona -Os -fomit-frame-pointer avx2_ossl
gcc -march=barcelona -O2 -fomit-frame-pointer avx2_ossl
gcc -march=barcelona -O3 -fomit-frame-pointer avx2_ossl
gcc -march=barcelona -O -fomit-frame-pointer avx2_ossl
gcc -march=barcelona -Os -fomit-frame-pointer avx2_ossl
gcc -march=k8 -O2 -fomit-frame-pointer avx2_ossl
gcc -march=k8 -O3 -fomit-frame-pointer avx2_ossl
gcc -march=k8 -O -fomit-frame-pointer avx2_ossl
gcc -march=k8 -Os -fomit-frame-pointer avx2_ossl
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv avx2_ossl
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv avx2_ossl
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv avx2_ossl
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv avx2_ossl
gcc -march=nocona -O2 -fomit-frame-pointer avx2_ossl
gcc -march=nocona -O3 -fomit-frame-pointer avx2_ossl
gcc -march=nocona -O -fomit-frame-pointer avx2_ossl
gcc -march=nocona -Os -fomit-frame-pointer avx2_ossl
cc avx512_ossl
gcc avx512_ossl
gcc -O2 -fomit-frame-pointer avx512_ossl
gcc -O3 -fomit-frame-pointer avx512_ossl
gcc -O -fomit-frame-pointer avx512_ossl
gcc -Os -fomit-frame-pointer avx512_ossl
gcc -fno-schedule-insns -O2 -fomit-frame-pointer avx512_ossl
gcc -fno-schedule-insns -O3 -fomit-frame-pointer avx512_ossl
gcc -fno-schedule-insns -O -fomit-frame-pointer avx512_ossl
gcc -fno-schedule-insns -Os -fomit-frame-pointer avx512_ossl
gcc -funroll-loops avx512_ossl
gcc -funroll-loops -O2 -fomit-frame-pointer avx512_ossl
gcc -funroll-loops -O3 -fomit-frame-pointer avx512_ossl
gcc -funroll-loops -O -fomit-frame-pointer avx512_ossl
gcc -funroll-loops -Os -fomit-frame-pointer avx512_ossl
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer avx512_ossl
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer avx512_ossl
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer avx512_ossl
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer avx512_ossl
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer avx512_ossl
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer avx512_ossl
gcc -funroll-loops -m64 -O -fomit-frame-pointer avx512_ossl
gcc -funroll-loops -m64 -Os -fomit-frame-pointer avx512_ossl
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer avx512_ossl
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer avx512_ossl
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer avx512_ossl
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer avx512_ossl
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer avx512_ossl
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer avx512_ossl
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer avx512_ossl
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer avx512_ossl
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer avx512_ossl
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer avx512_ossl
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer avx512_ossl
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer avx512_ossl
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer avx512_ossl
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer avx512_ossl
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer avx512_ossl
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer avx512_ossl
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer avx512_ossl
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer avx512_ossl
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer avx512_ossl
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer avx512_ossl
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer avx512_ossl
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer avx512_ossl
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer avx512_ossl
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer avx512_ossl
gcc -m64 -O2 -fomit-frame-pointer avx512_ossl
gcc -m64 -O3 -fomit-frame-pointer avx512_ossl
gcc -m64 -O -fomit-frame-pointer avx512_ossl
gcc -m64 -Os -fomit-frame-pointer avx512_ossl
gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer avx512_ossl
gcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer avx512_ossl
gcc -m64 -march=core-avx-i -O -fomit-frame-pointer avx512_ossl
gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer avx512_ossl
gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer avx512_ossl
gcc -m64 -march=core-avx2 -O -fomit-frame-pointer avx512_ossl
gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer avx512_ossl
gcc -m64 -march=core2 -O2 -fomit-frame-pointer avx512_ossl
gcc -m64 -march=core2 -O3 -fomit-frame-pointer avx512_ossl
gcc -m64 -march=core2 -O -fomit-frame-pointer avx512_ossl
gcc -m64 -march=core2 -Os -fomit-frame-pointer avx512_ossl
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer avx512_ossl
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer avx512_ossl
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer avx512_ossl
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer avx512_ossl
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer avx512_ossl
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer avx512_ossl
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer avx512_ossl
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer avx512_ossl
gcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer avx512_ossl
gcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer avx512_ossl
gcc -m64 -march=corei7-avx -O -fomit-frame-pointer avx512_ossl
gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer avx512_ossl
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer avx512_ossl
gcc -m64 -march=corei7 -O3 -fomit-frame-pointer avx512_ossl
gcc -m64 -march=corei7 -O -fomit-frame-pointer avx512_ossl
gcc -m64 -march=corei7 -Os -fomit-frame-pointer avx512_ossl
gcc -m64 -march=k8 -O2 -fomit-frame-pointer avx512_ossl
gcc -m64 -march=k8 -O3 -fomit-frame-pointer avx512_ossl
gcc -m64 -march=k8 -O -fomit-frame-pointer avx512_ossl
gcc -m64 -march=k8 -Os -fomit-frame-pointer avx512_ossl
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer avx512_ossl
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer avx512_ossl
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer avx512_ossl
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer avx512_ossl
gcc -m64 -march=nocona -O2 -fomit-frame-pointer avx512_ossl
gcc -m64 -march=nocona -O3 -fomit-frame-pointer avx512_ossl
gcc -m64 -march=nocona -O -fomit-frame-pointer avx512_ossl
gcc -m64 -march=nocona -Os -fomit-frame-pointer avx512_ossl
gcc -march=barcelona -O2 -fomit-frame-pointer avx512_ossl
gcc -march=barcelona -O3 -fomit-frame-pointer avx512_ossl
gcc -march=barcelona -O -fomit-frame-pointer avx512_ossl
gcc -march=barcelona -Os -fomit-frame-pointer avx512_ossl
gcc -march=k8 -O2 -fomit-frame-pointer avx512_ossl
gcc -march=k8 -O3 -fomit-frame-pointer avx512_ossl
gcc -march=k8 -O -fomit-frame-pointer avx512_ossl
gcc -march=k8 -Os -fomit-frame-pointer avx512_ossl
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv avx512_ossl
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv avx512_ossl
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv avx512_ossl
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv avx512_ossl
gcc -march=nocona -O2 -fomit-frame-pointer avx512_ossl
gcc -march=nocona -O3 -fomit-frame-pointer avx512_ossl
gcc -march=nocona -O -fomit-frame-pointer avx512_ossl
gcc -march=nocona -Os -fomit-frame-pointer avx512_ossl
gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer ref_ossl
gcc -m64 -march=core-avx2 -O -fomit-frame-pointer ref_ossl
gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer ref_ossl

Test failure

Implementation: avx2_ossl
Security model: unknown
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
error 111
error 111

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
gcc -m64 -march=barcelona -O2 -fomit-frame-pointer avx2_ossl
gcc -m64 -march=barcelona -O3 -fomit-frame-pointer avx2_ossl
gcc -m64 -march=barcelona -O -fomit-frame-pointer avx2_ossl
gcc -m64 -march=barcelona -Os -fomit-frame-pointer avx2_ossl
gcc -m64 -march=barcelona -O2 -fomit-frame-pointer avx512_ossl
gcc -m64 -march=barcelona -O3 -fomit-frame-pointer avx512_ossl
gcc -m64 -march=barcelona -O -fomit-frame-pointer avx512_ossl
gcc -m64 -march=barcelona -Os -fomit-frame-pointer avx512_ossl

Compiler output

Implementation: avx2_ntl
Security model: unknown
Compiler: clang++ -O3 -fomit-frame-pointer -Qunused-arguments
aes.c: clang: warning: treating 'c' input as 'c++' when in C++ mode, this behavior is deprecated [-Wdeprecated]
aes.c: aes.c:27:17: error: always_inline function '_mm_aesenc_si128' requires target feature 'aes', but would be inlined into function 'aes256_enc' that is compiled without support for 'aes'
aes.c: block = _mm_aesenc_si128(block, ks->keys[i]);
aes.c: ^
aes.c: aes.c:29:13: error: always_inline function '_mm_aesenclast_si128' requires target feature 'aes', but would be inlined into function 'aes256_enc' that is compiled without support for 'aes'
aes.c: block = _mm_aesenclast_si128(block, ks->keys[AES256_ROUNDS]);
aes.c: ^
aes.c: 2 errors generated.

Number of similar (compiler,implementation) pairs: 15, namely:
CompilerImplementations
clang++ -O3 -fomit-frame-pointer -Qunused-arguments avx2_ntl
clang++ -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments avx2_ntl
clang++ -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments avx2_ntl
clang++ -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments avx2_ntl
clang++ -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments avx2_ntl
clang++ -O3 -fomit-frame-pointer -Qunused-arguments avx512_ntl
clang++ -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments avx512_ntl
clang++ -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments avx512_ntl
clang++ -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments avx512_ntl
clang++ -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments avx512_ntl
clang++ -O3 -fomit-frame-pointer -Qunused-arguments ref_ntl
clang++ -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments ref_ntl
clang++ -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref_ntl
clang++ -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref_ntl
clang++ -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref_ntl

Compiler output

Implementation: avx2_ntl
Security model: unknown
Compiler: clang++ -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments
aes.c: clang: warning: treating 'c' input as 'c++' when in C++ mode, this behavior is deprecated [-Wdeprecated]
aes_ctr_prf.c: clang: warning: treating 'c' input as 'c++' when in C++ mode, this behavior is deprecated [-Wdeprecated]
decode.c: clang: warning: treating 'c' input as 'c++' when in C++ mode, this behavior is deprecated [-Wdeprecated]
gf2x_mul.c: clang: warning: treating 'c' input as 'c++' when in C++ mode, this behavior is deprecated [-Wdeprecated]
gf2x_mul.c: gf2x_mul.c:56:25: error: static_assert expression is not an integral constant expression
gf2x_mul.c: bike_static_assert((n % 2 == 0), karatzuba_n_is_odd);
gf2x_mul.c: ~^~~~~~~~~~~
gf2x_mul.c: ./defs.h:39:53: note: expanded from macro 'bike_static_assert'
gf2x_mul.c: #define bike_static_assert(COND, MSG) static_assert(COND, "MSG")
gf2x_mul.c: ^~~~
gf2x_mul.c: 1 error generated.

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
clang++ -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments avx2_ntl
clang++ -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments avx2_ntl
clang++ -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments avx2_ntl
clang++ -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments avx512_ntl
clang++ -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments avx512_ntl
clang++ -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments avx512_ntl

Compiler output

Implementation: avx2_ntl
Security model: unknown
Compiler: g++
aes.c: In file included from aes.h:21:0,
aes.c: from aes.c:12:
aes.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/wmmintrin.h: In function 'void aes256_enc(uint8_t*, const uint8_t*, const aes256_ks_t*)':
aes.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '__m128i _mm_aesenc_si128(__m128i, __m128i)': target specific option mismatch
aes.c: _mm_aesenc_si128 (__m128i __X, __m128i __Y)
aes.c: ^~~~~~~~~~~~~~~~
aes.c: aes.c:27:33: note: called from here
aes.c: block = _mm_aesenc_si128(block, ks->keys[i]);
aes.c: ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
aes.c: In file included from aes.h:21:0,
aes.c: from aes.c:12:
aes.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/wmmintrin.h:69:1: error: inlining failed in call to always_inline '__m128i _mm_aesenclast_si128(__m128i, __m128i)': target specific option mismatch
aes.c: _mm_aesenclast_si128 (__m128i __X, __m128i __Y)
aes.c: ^~~~~~~~~~~~~~~~~~~~
aes.c: aes.c:29:33: note: called from here
aes.c: block = _mm_aesenclast_si128(block, ks->keys[AES256_ROUNDS]);
aes.c: ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Number of similar (compiler,implementation) pairs: 42, namely:
CompilerImplementations
g++ avx2_ntl
g++ -Os -fomit-frame-pointer avx2_ntl
g++ -fno-schedule-insns -Os -fomit-frame-pointer avx2_ntl
g++ -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer avx2_ntl
g++ -m64 -Os -fomit-frame-pointer avx2_ntl
g++ -m64 -march=core2 -Os -fomit-frame-pointer avx2_ntl
g++ -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer avx2_ntl
g++ -m64 -march=core2 -msse4 -Os -fomit-frame-pointer avx2_ntl
g++ -m64 -march=corei7 -Os -fomit-frame-pointer avx2_ntl
g++ -m64 -march=k8 -Os -fomit-frame-pointer avx2_ntl
g++ -m64 -march=nocona -Os -fomit-frame-pointer avx2_ntl
g++ -march=barcelona -Os -fomit-frame-pointer avx2_ntl
g++ -march=k8 -Os -fomit-frame-pointer avx2_ntl
g++ -march=nocona -Os -fomit-frame-pointer avx2_ntl
g++ avx512_ntl
g++ -Os -fomit-frame-pointer avx512_ntl
g++ -fno-schedule-insns -Os -fomit-frame-pointer avx512_ntl
g++ -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer avx512_ntl
g++ -m64 -Os -fomit-frame-pointer avx512_ntl
g++ -m64 -march=core2 -Os -fomit-frame-pointer avx512_ntl
g++ -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer avx512_ntl
g++ -m64 -march=core2 -msse4 -Os -fomit-frame-pointer avx512_ntl
g++ -m64 -march=corei7 -Os -fomit-frame-pointer avx512_ntl
g++ -m64 -march=k8 -Os -fomit-frame-pointer avx512_ntl
g++ -m64 -march=nocona -Os -fomit-frame-pointer avx512_ntl
g++ -march=barcelona -Os -fomit-frame-pointer avx512_ntl
g++ -march=k8 -Os -fomit-frame-pointer avx512_ntl
g++ -march=nocona -Os -fomit-frame-pointer avx512_ntl
g++ ref_ntl
g++ -Os -fomit-frame-pointer ref_ntl
g++ -fno-schedule-insns -Os -fomit-frame-pointer ref_ntl
g++ -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer ref_ntl
g++ -m64 -Os -fomit-frame-pointer ref_ntl
g++ -m64 -march=core2 -Os -fomit-frame-pointer ref_ntl
g++ -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer ref_ntl
g++ -m64 -march=core2 -msse4 -Os -fomit-frame-pointer ref_ntl
g++ -m64 -march=corei7 -Os -fomit-frame-pointer ref_ntl
g++ -m64 -march=k8 -Os -fomit-frame-pointer ref_ntl
g++ -m64 -march=nocona -Os -fomit-frame-pointer ref_ntl
g++ -march=barcelona -Os -fomit-frame-pointer ref_ntl
g++ -march=k8 -Os -fomit-frame-pointer ref_ntl
g++ -march=nocona -Os -fomit-frame-pointer ref_ntl

Compiler output

Implementation: avx2_ntl
Security model: unknown
Compiler: g++ -O2 -fomit-frame-pointer
aes.c: In file included from aes.h:21:0,
aes.c: from aes.c:12:
aes.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/wmmintrin.h: In function 'void aes256_enc(uint8_t*, const uint8_t*, const aes256_ks_t*)':
aes.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '__m128i _mm_aesenc_si128(__m128i, __m128i)': target specific option mismatch
aes.c: _mm_aesenc_si128 (__m128i __X, __m128i __Y)
aes.c: ^~~~~~~~~~~~~~~~
aes.c: aes.c:27:33: note: called from here
aes.c: block = _mm_aesenc_si128(block, ks->keys[i]);
aes.c: ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
aes.c: In file included from aes.h:21:0,
aes.c: from aes.c:12:
aes.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/wmmintrin.h:69:1: error: inlining failed in call to always_inline '__m128i _mm_aesenclast_si128(__m128i, __m128i)': target specific option mismatch
aes.c: _mm_aesenclast_si128 (__m128i __X, __m128i __Y)
aes.c: ^~~~~~~~~~~~~~~~~~~~
aes.c: aes.c:29:33: note: called from here
aes.c: block = _mm_aesenclast_si128(block, ks->keys[AES256_ROUNDS]);
aes.c: ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
aes.c: In file included from aes.h:21:0,
aes.c: from aes.c:12:
aes.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '__m128i _mm_aesenc_si128(__m128i, __m128i)': target specific option mismatch
aes.c: _mm_aesenc_si128 (__m128i __X, __m128i __Y)
aes.c: ^~~~~~~~~~~~~~~~
aes.c: aes.c:27:33: note: called from here
aes.c: block = _mm_aesenc_si128(block, ks->keys[i]);
aes.c: ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
aes.c: ...

Number of similar (compiler,implementation) pairs: 117, namely:
CompilerImplementations
g++ -O2 -fomit-frame-pointer avx2_ntl
g++ -O3 -fomit-frame-pointer avx2_ntl
g++ -O -fomit-frame-pointer avx2_ntl
g++ -fno-schedule-insns -O2 -fomit-frame-pointer avx2_ntl
g++ -fno-schedule-insns -O3 -fomit-frame-pointer avx2_ntl
g++ -fno-schedule-insns -O -fomit-frame-pointer avx2_ntl
g++ -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer avx2_ntl
g++ -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer avx2_ntl
g++ -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer avx2_ntl
g++ -m64 -O2 -fomit-frame-pointer avx2_ntl
g++ -m64 -O3 -fomit-frame-pointer avx2_ntl
g++ -m64 -O -fomit-frame-pointer avx2_ntl
g++ -m64 -march=core2 -O2 -fomit-frame-pointer avx2_ntl
g++ -m64 -march=core2 -O3 -fomit-frame-pointer avx2_ntl
g++ -m64 -march=core2 -O -fomit-frame-pointer avx2_ntl
g++ -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer avx2_ntl
g++ -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer avx2_ntl
g++ -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer avx2_ntl
g++ -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer avx2_ntl
g++ -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer avx2_ntl
g++ -m64 -march=core2 -msse4 -O -fomit-frame-pointer avx2_ntl
g++ -m64 -march=corei7 -O2 -fomit-frame-pointer avx2_ntl
g++ -m64 -march=corei7 -O3 -fomit-frame-pointer avx2_ntl
g++ -m64 -march=corei7 -O -fomit-frame-pointer avx2_ntl
g++ -m64 -march=k8 -O2 -fomit-frame-pointer avx2_ntl
g++ -m64 -march=k8 -O3 -fomit-frame-pointer avx2_ntl
g++ -m64 -march=k8 -O -fomit-frame-pointer avx2_ntl
g++ -m64 -march=nocona -O2 -fomit-frame-pointer avx2_ntl
g++ -m64 -march=nocona -O3 -fomit-frame-pointer avx2_ntl
g++ -m64 -march=nocona -O -fomit-frame-pointer avx2_ntl
g++ -march=barcelona -O2 -fomit-frame-pointer avx2_ntl
g++ -march=barcelona -O3 -fomit-frame-pointer avx2_ntl
g++ -march=barcelona -O -fomit-frame-pointer avx2_ntl
g++ -march=k8 -O2 -fomit-frame-pointer avx2_ntl
g++ -march=k8 -O3 -fomit-frame-pointer avx2_ntl
g++ -march=k8 -O -fomit-frame-pointer avx2_ntl
g++ -march=nocona -O2 -fomit-frame-pointer avx2_ntl
g++ -march=nocona -O3 -fomit-frame-pointer avx2_ntl
g++ -march=nocona -O -fomit-frame-pointer avx2_ntl
g++ -O2 -fomit-frame-pointer avx512_ntl
g++ -O3 -fomit-frame-pointer avx512_ntl
g++ -O -fomit-frame-pointer avx512_ntl
g++ -fno-schedule-insns -O2 -fomit-frame-pointer avx512_ntl
g++ -fno-schedule-insns -O3 -fomit-frame-pointer avx512_ntl
g++ -fno-schedule-insns -O -fomit-frame-pointer avx512_ntl
g++ -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer avx512_ntl
g++ -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer avx512_ntl
g++ -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer avx512_ntl
g++ -m64 -O2 -fomit-frame-pointer avx512_ntl
g++ -m64 -O3 -fomit-frame-pointer avx512_ntl
g++ -m64 -O -fomit-frame-pointer avx512_ntl
g++ -m64 -march=core2 -O2 -fomit-frame-pointer avx512_ntl
g++ -m64 -march=core2 -O3 -fomit-frame-pointer avx512_ntl
g++ -m64 -march=core2 -O -fomit-frame-pointer avx512_ntl
g++ -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer avx512_ntl
g++ -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer avx512_ntl
g++ -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer avx512_ntl
g++ -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer avx512_ntl
g++ -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer avx512_ntl
g++ -m64 -march=core2 -msse4 -O -fomit-frame-pointer avx512_ntl
g++ -m64 -march=corei7 -O2 -fomit-frame-pointer avx512_ntl
g++ -m64 -march=corei7 -O3 -fomit-frame-pointer avx512_ntl
g++ -m64 -march=corei7 -O -fomit-frame-pointer avx512_ntl
g++ -m64 -march=k8 -O2 -fomit-frame-pointer avx512_ntl
g++ -m64 -march=k8 -O3 -fomit-frame-pointer avx512_ntl
g++ -m64 -march=k8 -O -fomit-frame-pointer avx512_ntl
g++ -m64 -march=nocona -O2 -fomit-frame-pointer avx512_ntl
g++ -m64 -march=nocona -O3 -fomit-frame-pointer avx512_ntl
g++ -m64 -march=nocona -O -fomit-frame-pointer avx512_ntl
g++ -march=barcelona -O2 -fomit-frame-pointer avx512_ntl
g++ -march=barcelona -O3 -fomit-frame-pointer avx512_ntl
g++ -march=barcelona -O -fomit-frame-pointer avx512_ntl
g++ -march=k8 -O2 -fomit-frame-pointer avx512_ntl
g++ -march=k8 -O3 -fomit-frame-pointer avx512_ntl
g++ -march=k8 -O -fomit-frame-pointer avx512_ntl
g++ -march=nocona -O2 -fomit-frame-pointer avx512_ntl
g++ -march=nocona -O3 -fomit-frame-pointer avx512_ntl
g++ -march=nocona -O -fomit-frame-pointer avx512_ntl
g++ -O2 -fomit-frame-pointer ref_ntl
g++ -O3 -fomit-frame-pointer ref_ntl
g++ -O -fomit-frame-pointer ref_ntl
g++ -fno-schedule-insns -O2 -fomit-frame-pointer ref_ntl
g++ -fno-schedule-insns -O3 -fomit-frame-pointer ref_ntl
g++ -fno-schedule-insns -O -fomit-frame-pointer ref_ntl
g++ -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer ref_ntl
g++ -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer ref_ntl
g++ -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer ref_ntl
g++ -m64 -O2 -fomit-frame-pointer ref_ntl
g++ -m64 -O3 -fomit-frame-pointer ref_ntl
g++ -m64 -O -fomit-frame-pointer ref_ntl
g++ -m64 -march=core2 -O2 -fomit-frame-pointer ref_ntl
g++ -m64 -march=core2 -O3 -fomit-frame-pointer ref_ntl
g++ -m64 -march=core2 -O -fomit-frame-pointer ref_ntl
g++ -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer ref_ntl
g++ -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer ref_ntl
g++ -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer ref_ntl
g++ -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer ref_ntl
g++ -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer ref_ntl
g++ -m64 -march=core2 -msse4 -O -fomit-frame-pointer ref_ntl
g++ -m64 -march=corei7 -O2 -fomit-frame-pointer ref_ntl
g++ -m64 -march=corei7 -O3 -fomit-frame-pointer ref_ntl
g++ -m64 -march=corei7 -O -fomit-frame-pointer ref_ntl
g++ -m64 -march=k8 -O2 -fomit-frame-pointer ref_ntl
g++ -m64 -march=k8 -O3 -fomit-frame-pointer ref_ntl
g++ -m64 -march=k8 -O -fomit-frame-pointer ref_ntl
g++ -m64 -march=nocona -O2 -fomit-frame-pointer ref_ntl
g++ -m64 -march=nocona -O3 -fomit-frame-pointer ref_ntl
g++ -m64 -march=nocona -O -fomit-frame-pointer ref_ntl
g++ -march=barcelona -O2 -fomit-frame-pointer ref_ntl
g++ -march=barcelona -O3 -fomit-frame-pointer ref_ntl
g++ -march=barcelona -O -fomit-frame-pointer ref_ntl
g++ -march=k8 -O2 -fomit-frame-pointer ref_ntl
g++ -march=k8 -O3 -fomit-frame-pointer ref_ntl
g++ -march=k8 -O -fomit-frame-pointer ref_ntl
g++ -march=nocona -O2 -fomit-frame-pointer ref_ntl
g++ -march=nocona -O3 -fomit-frame-pointer ref_ntl
g++ -march=nocona -O -fomit-frame-pointer ref_ntl

Compiler output

Implementation: avx2_ntl
Security model: unknown
Compiler: g++ -m64 -march=barcelona -O2 -fomit-frame-pointer
aes.c: In file included from aes.h:21:0,
aes.c: from aes.c:12:
aes.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/wmmintrin.h: In function 'void aes256_enc(uint8_t*, const uint8_t*, const aes256_ks_t*)':
aes.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '__m128i _mm_aesenc_si128(__m128i, __m128i)': target specific option mismatch
aes.c: _mm_aesenc_si128 (__m128i __X, __m128i __Y)
aes.c: ^~~~~~~~~~~~~~~~
aes.c: aes.c:27:33: note: called from here
aes.c: block = _mm_aesenc_si128(block, ks->keys[i]);
aes.c: ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
aes.c: In file included from aes.h:21:0,
aes.c: from aes.c:12:
aes.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/wmmintrin.h:69:1: error: inlining failed in call to always_inline '__m128i _mm_aesenclast_si128(__m128i, __m128i)': target specific option mismatch
aes.c: _mm_aesenclast_si128 (__m128i __X, __m128i __Y)
aes.c: ^~~~~~~~~~~~~~~~~~~~
aes.c: aes.c:29:33: note: called from here
aes.c: block = _mm_aesenclast_si128(block, ks->keys[AES256_ROUNDS]);
aes.c: ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
aes.c: In file included from aes.h:21:0,
aes.c: from aes.c:12:
aes.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '__m128i _mm_aesenc_si128(__m128i, __m128i)': target specific option mismatch
aes.c: _mm_aesenc_si128 (__m128i __X, __m128i __Y)
aes.c: ^~~~~~~~~~~~~~~~
aes.c: aes.c:27:33: note: called from here
aes.c: block = _mm_aesenc_si128(block, ks->keys[i]);
aes.c: ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
aes.c: ...
aes.c: In file included from aes.h:21:0,
aes.c: from aes.c:12:
aes.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/wmmintrin.h: In function 'void aes256_enc(uint8_t*, const uint8_t*, const aes256_ks_t*)':
aes.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '__m128i _mm_aesenc_si128(__m128i, __m128i)': target specific option mismatch
aes.c: _mm_aesenc_si128 (__m128i __X, __m128i __Y)
aes.c: ^~~~~~~~~~~~~~~~
aes.c: aes.c:27:33: note: called from here
aes.c: block = _mm_aesenc_si128(block, ks->keys[i]);
aes.c: ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
aes.c: In file included from aes.h:21:0,
aes.c: from aes.c:12:
aes.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/wmmintrin.h:69:1: error: inlining failed in call to always_inline '__m128i _mm_aesenclast_si128(__m128i, __m128i)': target specific option mismatch
aes.c: _mm_aesenclast_si128 (__m128i __X, __m128i __Y)
aes.c: ^~~~~~~~~~~~~~~~~~~~
aes.c: aes.c:29:33: note: called from here
aes.c: block = _mm_aesenclast_si128(block, ks->keys[AES256_ROUNDS]);
aes.c: ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
aes.c: In file included from aes.h:21:0,
aes.c: from aes.c:12:
aes.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '__m128i _mm_aesenc_si128(__m128i, __m128i)': target specific option mismatch
aes.c: _mm_aesenc_si128 (__m128i __X, __m128i __Y)
aes.c: ^~~~~~~~~~~~~~~~
aes.c: aes.c:27:33: note: called from here
aes.c: block = _mm_aesenc_si128(block, ks->keys[i]);
aes.c: ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
aes.c: ...

Number of similar (compiler,implementation) pairs: 9, namely:
CompilerImplementations
g++ -m64 -march=barcelona -O2 -fomit-frame-pointer avx2_ntl
g++ -m64 -march=barcelona -O3 -fomit-frame-pointer avx2_ntl
g++ -m64 -march=barcelona -O -fomit-frame-pointer avx2_ntl
g++ -m64 -march=barcelona -O2 -fomit-frame-pointer avx512_ntl
g++ -m64 -march=barcelona -O3 -fomit-frame-pointer avx512_ntl
g++ -m64 -march=barcelona -O -fomit-frame-pointer avx512_ntl
g++ -m64 -march=barcelona -O2 -fomit-frame-pointer ref_ntl
g++ -m64 -march=barcelona -O3 -fomit-frame-pointer ref_ntl
g++ -m64 -march=barcelona -O -fomit-frame-pointer ref_ntl

Compiler output

Implementation: avx2_ntl
Security model: unknown
Compiler: g++ -m64 -march=barcelona -Os -fomit-frame-pointer
aes.c: In file included from aes.h:21:0,
aes.c: from aes.c:12:
aes.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/wmmintrin.h: In function 'void aes256_enc(uint8_t*, const uint8_t*, const aes256_ks_t*)':
aes.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '__m128i _mm_aesenc_si128(__m128i, __m128i)': target specific option mismatch
aes.c: _mm_aesenc_si128 (__m128i __X, __m128i __Y)
aes.c: ^~~~~~~~~~~~~~~~
aes.c: aes.c:27:33: note: called from here
aes.c: block = _mm_aesenc_si128(block, ks->keys[i]);
aes.c: ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
aes.c: In file included from aes.h:21:0,
aes.c: from aes.c:12:
aes.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/wmmintrin.h:69:1: error: inlining failed in call to always_inline '__m128i _mm_aesenclast_si128(__m128i, __m128i)': target specific option mismatch
aes.c: _mm_aesenclast_si128 (__m128i __X, __m128i __Y)
aes.c: ^~~~~~~~~~~~~~~~~~~~
aes.c: aes.c:29:33: note: called from here
aes.c: block = _mm_aesenclast_si128(block, ks->keys[AES256_ROUNDS]);
aes.c: ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
aes.c: In file included from aes.h:21:0,
aes.c: from aes.c:12:
aes.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/wmmintrin.h: In function 'void aes256_enc(uint8_t*, const uint8_t*, const aes256_ks_t*)':
aes.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '__m128i _mm_aesenc_si128(__m128i, __m128i)': target specific option mismatch
aes.c: _mm_aesenc_si128 (__m128i __X, __m128i __Y)
aes.c: ^~~~~~~~~~~~~~~~
aes.c: aes.c:27:33: note: called from here
aes.c: block = _mm_aesenc_si128(block, ks->keys[i]);
aes.c: ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
aes.c: In file included from aes.h:21:0,
aes.c: from aes.c:12:
aes.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/wmmintrin.h:69:1: error: inlining failed in call to always_inline '__m128i _mm_aesenclast_si128(__m128i, __m128i)': target specific option mismatch
aes.c: _mm_aesenclast_si128 (__m128i __X, __m128i __Y)
aes.c: ^~~~~~~~~~~~~~~~~~~~
aes.c: aes.c:29:33: note: called from here
aes.c: block = _mm_aesenclast_si128(block, ks->keys[AES256_ROUNDS]);
aes.c: ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
g++ -m64 -march=barcelona -Os -fomit-frame-pointer avx2_ntl avx512_ntl ref_ntl

Compiler output

Implementation: avx2_ntl
Security model: unknown
Compiler: g++ -m64 -march=core-avx-i -O2 -fomit-frame-pointer
gf2x_mul.c: In file included from bike_defs.h:21:0,
gf2x_mul.c: from types.h:15,
gf2x_mul.c: from gf2x.h:15,
gf2x_mul.c: from gf2x_mul.c:12:
gf2x_mul.c: gf2x_mul.c: In function 'void karatzuba(uint64_t*, const uint64_t*, const uint64_t*, uint64_t, uint64_t*)':
gf2x_mul.c: defs.h:39:39: error: non-constant condition for static assertion
gf2x_mul.c: #define bike_static_assert(COND, MSG) static_assert(COND, "MSG")
gf2x_mul.c: ^
gf2x_mul.c: gf2x_mul.c:56:5: note: in expansion of macro 'bike_static_assert'
gf2x_mul.c: bike_static_assert((n % 2 == 0), karatzuba_n_is_odd);
gf2x_mul.c: ^~~~~~~~~~~~~~~~~~
gf2x_mul.c: defs.h:39:39: error: 'n' is not a constant expression
gf2x_mul.c: #define bike_static_assert(COND, MSG) static_assert(COND, "MSG")
gf2x_mul.c: ^
gf2x_mul.c: gf2x_mul.c:56:5: note: in expansion of macro 'bike_static_assert'
gf2x_mul.c: bike_static_assert((n % 2 == 0), karatzuba_n_is_odd);
gf2x_mul.c: ^~~~~~~~~~~~~~~~~~

Number of similar (compiler,implementation) pairs: 38, namely:
CompilerImplementations
g++ -m64 -march=core-avx-i -O2 -fomit-frame-pointer avx2_ntl
g++ -m64 -march=core-avx-i -O3 -fomit-frame-pointer avx2_ntl
g++ -m64 -march=core-avx-i -O -fomit-frame-pointer avx2_ntl
g++ -m64 -march=core-avx-i -Os -fomit-frame-pointer avx2_ntl
g++ -m64 -march=core-avx2 -O2 -fomit-frame-pointer avx2_ntl
g++ -m64 -march=core-avx2 -O -fomit-frame-pointer avx2_ntl
g++ -m64 -march=core-avx2 -Os -fomit-frame-pointer avx2_ntl
g++ -m64 -march=corei7-avx -O2 -fomit-frame-pointer avx2_ntl
g++ -m64 -march=corei7-avx -O3 -fomit-frame-pointer avx2_ntl
g++ -m64 -march=corei7-avx -O -fomit-frame-pointer avx2_ntl
g++ -m64 -march=corei7-avx -Os -fomit-frame-pointer avx2_ntl
g++ -m64 -march=native -mtune=native -O2 -fomit-frame-pointer avx2_ntl
g++ -m64 -march=native -mtune=native -O3 -fomit-frame-pointer avx2_ntl
g++ -m64 -march=native -mtune=native -O -fomit-frame-pointer avx2_ntl
g++ -m64 -march=native -mtune=native -Os -fomit-frame-pointer avx2_ntl
g++ -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv avx2_ntl
g++ -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv avx2_ntl
g++ -march=native -mtune=native -O -fomit-frame-pointer -fwrapv avx2_ntl
g++ -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv avx2_ntl
g++ -m64 -march=core-avx-i -O2 -fomit-frame-pointer avx512_ntl
g++ -m64 -march=core-avx-i -O3 -fomit-frame-pointer avx512_ntl
g++ -m64 -march=core-avx-i -O -fomit-frame-pointer avx512_ntl
g++ -m64 -march=core-avx-i -Os -fomit-frame-pointer avx512_ntl
g++ -m64 -march=core-avx2 -O2 -fomit-frame-pointer avx512_ntl
g++ -m64 -march=core-avx2 -O -fomit-frame-pointer avx512_ntl
g++ -m64 -march=core-avx2 -Os -fomit-frame-pointer avx512_ntl
g++ -m64 -march=corei7-avx -O2 -fomit-frame-pointer avx512_ntl
g++ -m64 -march=corei7-avx -O3 -fomit-frame-pointer avx512_ntl
g++ -m64 -march=corei7-avx -O -fomit-frame-pointer avx512_ntl
g++ -m64 -march=corei7-avx -Os -fomit-frame-pointer avx512_ntl
g++ -m64 -march=native -mtune=native -O2 -fomit-frame-pointer avx512_ntl
g++ -m64 -march=native -mtune=native -O3 -fomit-frame-pointer avx512_ntl
g++ -m64 -march=native -mtune=native -O -fomit-frame-pointer avx512_ntl
g++ -m64 -march=native -mtune=native -Os -fomit-frame-pointer avx512_ntl
g++ -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv avx512_ntl
g++ -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv avx512_ntl
g++ -march=native -mtune=native -O -fomit-frame-pointer -fwrapv avx512_ntl
g++ -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv avx512_ntl

Compiler output

Implementation: avx2_ossl
Security model: unknown
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
converts.S: converts.S:42:11: error: unknown token in expression in '.set' directive
converts.S: .set out, %rdi
converts.S: ^
converts.S: converts.S:42:11: error: missing expression in '.set' directive
converts.S: .set out, %rdi
converts.S: ^
converts.S: converts.S:43:10: error: unknown token in expression in '.set' directive
converts.S: .set in, %rsi
converts.S: ^
converts.S: converts.S:43:10: error: missing expression in '.set' directive
converts.S: .set in, %rsi
converts.S: ^
converts.S: converts.S:44:11: error: unknown token in expression in '.set' directive
converts.S: .set len, %rdx
converts.S: ^
converts.S: converts.S:44:11: error: missing expression in '.set' directive
converts.S: .set len, %rdx
converts.S: ^
converts.S: converts.S:46:14: error: unknown token in expression in '.set' directive
converts.S: .set in_itr, %r8
converts.S: ^
converts.S: converts.S:46:14: error: missing expression in '.set' directive
converts.S: .set in_itr, %r8
converts.S: ^
converts.S: converts.S:47:19: error: unknown token in expression in '.set' directive
converts.S: ...

Number of similar (compiler,implementation) pairs: 16, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments avx2_ossl
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments avx2_ossl
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments avx2_ossl
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments avx2_ossl
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments avx2_ossl
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments avx2_ossl
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments avx2_ossl
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments avx2_ossl
clang -O3 -fomit-frame-pointer -Qunused-arguments avx512_ossl
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments avx512_ossl
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments avx512_ossl
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments avx512_ossl
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments avx512_ossl
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments avx512_ossl
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments avx512_ossl
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments avx512_ossl

Compiler output

Implementation: ref_ntl
Security model: unknown
Compiler: clang++ -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments
aes.c: clang: warning: treating 'c' input as 'c++' when in C++ mode, this behavior is deprecated [-Wdeprecated]
aes_ctr_prf.c: clang: warning: treating 'c' input as 'c++' when in C++ mode, this behavior is deprecated [-Wdeprecated]
converts_portable.c: clang: warning: treating 'c' input as 'c++' when in C++ mode, this behavior is deprecated [-Wdeprecated]
decode.c: clang: warning: treating 'c' input as 'c++' when in C++ mode, this behavior is deprecated [-Wdeprecated]
gf2x_mul.c: clang: warning: treating 'c' input as 'c++' when in C++ mode, this behavior is deprecated [-Wdeprecated]
gf2x_mul.c: gf2x_mul.c:56:25: error: static_assert expression is not an integral constant expression
gf2x_mul.c: bike_static_assert((n % 2 == 0), karatzuba_n_is_odd);
gf2x_mul.c: ~^~~~~~~~~~~
gf2x_mul.c: ./defs.h:39:53: note: expanded from macro 'bike_static_assert'
gf2x_mul.c: #define bike_static_assert(COND, MSG) static_assert(COND, "MSG")
gf2x_mul.c: ^~~~
gf2x_mul.c: 1 error generated.

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
clang++ -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments ref_ntl
clang++ -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments ref_ntl
clang++ -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref_ntl

Compiler output

Implementation: ref_ntl
Security model: unknown
Compiler: g++ -m64 -march=core-avx-i -O2 -fomit-frame-pointer
gf2x_mul.c: In file included from bike_defs.h:20:0,
gf2x_mul.c: from types.h:15,
gf2x_mul.c: from gf2x.h:15,
gf2x_mul.c: from gf2x_mul.c:12:
gf2x_mul.c: gf2x_mul.c: In function 'void karatzuba(uint64_t*, const uint64_t*, const uint64_t*, uint64_t, uint64_t*)':
gf2x_mul.c: defs.h:39:39: error: non-constant condition for static assertion
gf2x_mul.c: #define bike_static_assert(COND, MSG) static_assert(COND, "MSG")
gf2x_mul.c: ^
gf2x_mul.c: gf2x_mul.c:56:5: note: in expansion of macro 'bike_static_assert'
gf2x_mul.c: bike_static_assert((n % 2 == 0), karatzuba_n_is_odd);
gf2x_mul.c: ^~~~~~~~~~~~~~~~~~
gf2x_mul.c: defs.h:39:39: error: 'n' is not a constant expression
gf2x_mul.c: #define bike_static_assert(COND, MSG) static_assert(COND, "MSG")
gf2x_mul.c: ^
gf2x_mul.c: gf2x_mul.c:56:5: note: in expansion of macro 'bike_static_assert'
gf2x_mul.c: bike_static_assert((n % 2 == 0), karatzuba_n_is_odd);
gf2x_mul.c: ^~~~~~~~~~~~~~~~~~

Number of similar (compiler,implementation) pairs: 19, namely:
CompilerImplementations
g++ -m64 -march=core-avx-i -O2 -fomit-frame-pointer ref_ntl
g++ -m64 -march=core-avx-i -O3 -fomit-frame-pointer ref_ntl
g++ -m64 -march=core-avx-i -O -fomit-frame-pointer ref_ntl
g++ -m64 -march=core-avx-i -Os -fomit-frame-pointer ref_ntl
g++ -m64 -march=core-avx2 -O2 -fomit-frame-pointer ref_ntl
g++ -m64 -march=core-avx2 -O -fomit-frame-pointer ref_ntl
g++ -m64 -march=core-avx2 -Os -fomit-frame-pointer ref_ntl
g++ -m64 -march=corei7-avx -O2 -fomit-frame-pointer ref_ntl
g++ -m64 -march=corei7-avx -O3 -fomit-frame-pointer ref_ntl
g++ -m64 -march=corei7-avx -O -fomit-frame-pointer ref_ntl
g++ -m64 -march=corei7-avx -Os -fomit-frame-pointer ref_ntl
g++ -m64 -march=native -mtune=native -O2 -fomit-frame-pointer ref_ntl
g++ -m64 -march=native -mtune=native -O3 -fomit-frame-pointer ref_ntl
g++ -m64 -march=native -mtune=native -O -fomit-frame-pointer ref_ntl
g++ -m64 -march=native -mtune=native -Os -fomit-frame-pointer ref_ntl
g++ -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv ref_ntl
g++ -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv ref_ntl
g++ -march=native -mtune=native -O -fomit-frame-pointer -fwrapv ref_ntl
g++ -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv ref_ntl

Compiler output

Implementation: ref_ossl
Security model: unknown
Compiler: cc
measure.c: /usr/bin/ld: /home/z/supercop/supercop-20190816/supercop-data/gpu/amd64/lib/fastrandombytes.o: relocation R_X86_64_32 against `.bss' can not be used when making a PIE object; recompile with -fPIC
measure.c: /usr/bin/ld: final link failed: Nonrepresentable section on output
measure.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 103, namely:
CompilerImplementations
cc ref_ossl
gcc ref_ossl
gcc -O2 -fomit-frame-pointer ref_ossl
gcc -O3 -fomit-frame-pointer ref_ossl
gcc -O -fomit-frame-pointer ref_ossl
gcc -Os -fomit-frame-pointer ref_ossl
gcc -fno-schedule-insns -O2 -fomit-frame-pointer ref_ossl
gcc -fno-schedule-insns -O3 -fomit-frame-pointer ref_ossl
gcc -fno-schedule-insns -O -fomit-frame-pointer ref_ossl
gcc -fno-schedule-insns -Os -fomit-frame-pointer ref_ossl
gcc -funroll-loops ref_ossl
gcc -funroll-loops -O2 -fomit-frame-pointer ref_ossl
gcc -funroll-loops -O3 -fomit-frame-pointer ref_ossl
gcc -funroll-loops -O -fomit-frame-pointer ref_ossl
gcc -funroll-loops -Os -fomit-frame-pointer ref_ossl
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer ref_ossl
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer ref_ossl
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer ref_ossl
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer ref_ossl
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer ref_ossl
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer ref_ossl
gcc -funroll-loops -m64 -O -fomit-frame-pointer ref_ossl
gcc -funroll-loops -m64 -Os -fomit-frame-pointer ref_ossl
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer ref_ossl
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer ref_ossl
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer ref_ossl
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer ref_ossl
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer ref_ossl
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer ref_ossl
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer ref_ossl
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer ref_ossl
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer ref_ossl
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer ref_ossl
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer ref_ossl
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer ref_ossl
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer ref_ossl
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer ref_ossl
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer ref_ossl
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer ref_ossl
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer ref_ossl
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer ref_ossl
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer ref_ossl
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer ref_ossl
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer ref_ossl
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer ref_ossl
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer ref_ossl
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer ref_ossl
gcc -m64 -O2 -fomit-frame-pointer ref_ossl
gcc -m64 -O3 -fomit-frame-pointer ref_ossl
gcc -m64 -O -fomit-frame-pointer ref_ossl
gcc -m64 -Os -fomit-frame-pointer ref_ossl
gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer ref_ossl
gcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer ref_ossl
gcc -m64 -march=core-avx-i -O -fomit-frame-pointer ref_ossl
gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer ref_ossl
gcc -m64 -march=core2 -O2 -fomit-frame-pointer ref_ossl
gcc -m64 -march=core2 -O3 -fomit-frame-pointer ref_ossl
gcc -m64 -march=core2 -O -fomit-frame-pointer ref_ossl
gcc -m64 -march=core2 -Os -fomit-frame-pointer ref_ossl
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer ref_ossl
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer ref_ossl
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer ref_ossl
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer ref_ossl
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer ref_ossl
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer ref_ossl
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer ref_ossl
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer ref_ossl
gcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer ref_ossl
gcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer ref_ossl
gcc -m64 -march=corei7-avx -O -fomit-frame-pointer ref_ossl
gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer ref_ossl
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer ref_ossl
gcc -m64 -march=corei7 -O3 -fomit-frame-pointer ref_ossl
gcc -m64 -march=corei7 -O -fomit-frame-pointer ref_ossl
gcc -m64 -march=corei7 -Os -fomit-frame-pointer ref_ossl
gcc -m64 -march=k8 -O2 -fomit-frame-pointer ref_ossl
gcc -m64 -march=k8 -O3 -fomit-frame-pointer ref_ossl
gcc -m64 -march=k8 -O -fomit-frame-pointer ref_ossl
gcc -m64 -march=k8 -Os -fomit-frame-pointer ref_ossl
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer ref_ossl
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer ref_ossl
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer ref_ossl
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer ref_ossl
gcc -m64 -march=nocona -O2 -fomit-frame-pointer ref_ossl
gcc -m64 -march=nocona -O3 -fomit-frame-pointer ref_ossl
gcc -m64 -march=nocona -O -fomit-frame-pointer ref_ossl
gcc -m64 -march=nocona -Os -fomit-frame-pointer ref_ossl
gcc -march=barcelona -O2 -fomit-frame-pointer ref_ossl
gcc -march=barcelona -O3 -fomit-frame-pointer ref_ossl
gcc -march=barcelona -O -fomit-frame-pointer ref_ossl
gcc -march=barcelona -Os -fomit-frame-pointer ref_ossl
gcc -march=k8 -O2 -fomit-frame-pointer ref_ossl
gcc -march=k8 -O3 -fomit-frame-pointer ref_ossl
gcc -march=k8 -O -fomit-frame-pointer ref_ossl
gcc -march=k8 -Os -fomit-frame-pointer ref_ossl
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv ref_ossl
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv ref_ossl
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv ref_ossl
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv ref_ossl
gcc -march=nocona -O2 -fomit-frame-pointer ref_ossl
gcc -march=nocona -O3 -fomit-frame-pointer ref_ossl
gcc -march=nocona -O -fomit-frame-pointer ref_ossl
gcc -march=nocona -Os -fomit-frame-pointer ref_ossl

Compiler output

Implementation: ref_ossl
Security model: unknown
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
measure.c: /usr/bin/ld: /home/z/supercop/supercop-20190816/supercop-data/gpu/amd64/lib/fastrandombytes.o: relocation R_X86_64_32 against `.bss' can not be used when making a PIE object; recompile with -fPIC
measure.c: /usr/bin/ld: final link failed: Nonrepresentable section on output
measure.c: collect2: error: ld returned 1 exit status
measure.c: /usr/bin/ld: /home/z/supercop/supercop-20190816/supercop-data/gpu/amd64/lib/fastrandombytes.o: relocation R_X86_64_32 against `.bss' can not be used when making a PIE object; recompile with -fPIC
measure.c: /usr/bin/ld: final link failed: Nonrepresentable section on output
measure.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -m64 -march=barcelona -O2 -fomit-frame-pointer ref_ossl
gcc -m64 -march=barcelona -O3 -fomit-frame-pointer ref_ossl
gcc -m64 -march=barcelona -O -fomit-frame-pointer ref_ossl
gcc -m64 -march=barcelona -Os -fomit-frame-pointer ref_ossl