Implementation notes: amd64, gpu, crypto_kem/bike3l1nc

Computer: gpu
Architecture: amd64
CPU ID: GenuineIntel-000206d7-bfebfbff
SUPERCOP version: 20190816
Operation: crypto_kem
Primitive: bike3l1nc
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
31589136? ? ?? ? ?ref_osslgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019100820190816
31639848? ? ?? ? ?ref_osslgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019100820190816
32379948? ? ?? ? ?ref_osslgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2019100820190816
32905419? ? ?? ? ?ref_osslgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2019100820190816
34692141? ? ?? ? ?ref_osslgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2019100820190816
37353372? ? ?? ? ?ref_osslgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019100820190816
3736815613080 32 033676 984 1920ref_osslclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019100820190816
3738277212915 32 034204 984 1920ref_osslclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2019100820190816
3754005913080 32 033676 984 1920ref_osslclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019100820190816
38791584? ? ?? ? ?ref_osslgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2019100820190816
38819868? ? ?? ? ?ref_osslgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019100820190816
39944754? ? ?? ? ?ref_osslgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2019100820190816
40034685? ? ?? ? ?ref_osslgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2019100820190816
40315164? ? ?? ? ?ref_osslgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2019100820190816
40337121? ? ?? ? ?ref_osslgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2019100820190816
4076091613578 32 037236 984 1568ref_osslclang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019100820190816
40784778? ? ?? ? ?ref_osslgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019100820190816
40892964? ? ?? ? ?ref_osslgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019100820190816
40923114? ? ?? ? ?ref_osslgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2019100820190816
4098942613578 32 037236 984 1568ref_osslclang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019100820190816
4101354612915 32 034204 984 1920ref_osslclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019100820190816
41224458? ? ?? ? ?ref_osslgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019100820190816
41320779? ? ?? ? ?ref_osslgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2019100820190816
41474385? ? ?? ? ?ref_osslgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2019100820190816
4155898213479 32 035828 984 1568ref_osslclang_-O3_-fomit-frame-pointer_-Qunused-arguments2019100820190816
41711793? ? ?? ? ?ref_osslgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2019100820190816
41906832? ? ?? ? ?ref_osslgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2019100820190816
41920200? ? ?? ? ?ref_osslgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2019100820190816
41993370? ? ?? ? ?ref_osslgcc_-funroll-loops_-O3_-fomit-frame-pointer2019100820190816
42458736? ? ?? ? ?ref_osslgcc_-funroll-loops_-O2_-fomit-frame-pointer2019100820190816
4329309913578 32 037236 984 1568ref_osslclang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019100820190816
44753346? ? ?? ? ?ref_osslgcc_-march=nocona_-O3_-fomit-frame-pointer2019100820190816
44839791? ? ?? ? ?ref_osslgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019100820190816
45024192? ? ?? ? ?ref_osslgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2019100820190816
45287010? ? ?? ? ?ref_osslgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2019100820190816
45897408? ? ?? ? ?ref_osslgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2019100820190816
46544715? ? ?? ? ?ref_osslgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2019100820190816
46609098? ? ?? ? ?ref_osslgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2019100820190816
46753590? ? ?? ? ?ref_osslgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2019100820190816
47754258? ? ?? ? ?ref_osslgcc_-O2_-fomit-frame-pointer2019100820190816
47997129? ? ?? ? ?ref_osslgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2019100820190816
48369642? ? ?? ? ?ref_osslgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2019100820190816
48441171? ? ?? ? ?ref_osslgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2019100820190816
51272526? ? ?? ? ?ref_osslgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2019100820190816
52308897? ? ?? ? ?ref_osslgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2019100820190816
52410480? ? ?? ? ?ref_osslgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2019100820190816
52512237? ? ?? ? ?ref_osslgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2019100820190816
52711272? ? ?? ? ?ref_osslgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2019100820190816
53200008? ? ?? ? ?ref_osslgcc_-march=barcelona_-O3_-fomit-frame-pointer2019100820190816
53488371? ? ?? ? ?ref_osslgcc_-march=k8_-O2_-fomit-frame-pointer2019100820190816
53801673? ? ?? ? ?ref_osslgcc_-march=nocona_-O2_-fomit-frame-pointer2019100820190816
54017805? ? ?? ? ?ref_osslgcc_-march=barcelona_-O2_-fomit-frame-pointer2019100820190816
54543525? ? ?? ? ?ref_osslgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2019100820190816
55127202? ? ?? ? ?ref_osslgcc_-m64_-O3_-fomit-frame-pointer2019100820190816
55347810? ? ?? ? ?ref_osslgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2019100820190816
55354095? ? ?? ? ?ref_osslgcc_-O3_-fomit-frame-pointer2019100820190816
55375767? ? ?? ? ?ref_osslgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2019100820190816
55901244? ? ?? ? ?ref_osslgcc_-march=k8_-O3_-fomit-frame-pointer2019100820190816
56041146? ? ?? ? ?ref_osslgcc_-m64_-O2_-fomit-frame-pointer2019100820190816
56087448? ? ?? ? ?ref_osslgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2019100820190816
62362488? ? ?? ? ?ref_osslgcc_-march=barcelona_-Os_-fomit-frame-pointer2019100820190816
62508828? ? ?? ? ?ref_osslgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019100820190816
62831742? ? ?? ? ?ref_osslgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019100820190816
63268509? ? ?? ? ?ref_osslgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2019100820190816
63319656? ? ?? ? ?ref_osslgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2019100820190816
63489144? ? ?? ? ?ref_osslgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2019100820190816
63687501? ? ?? ? ?ref_osslgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2019100820190816
63695697? ? ?? ? ?ref_osslgcc_-march=nocona_-Os_-fomit-frame-pointer2019100820190816
63723888? ? ?? ? ?ref_osslgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2019100820190816
63742179? ? ?? ? ?ref_osslgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2019100820190816
64020441? ? ?? ? ?ref_osslgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2019100820190816
64161093? ? ?? ? ?ref_osslgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2019100820190816
64263894? ? ?? ? ?ref_osslgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2019100820190816
64276224? ? ?? ? ?ref_osslgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2019100820190816
64441917? ? ?? ? ?ref_osslgcc_-march=k8_-Os_-fomit-frame-pointer2019100820190816
64447275? ? ?? ? ?ref_osslgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019100820190816
64564890? ? ?? ? ?ref_osslgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2019100820190816
64780725? ? ?? ? ?ref_osslgcc_-Os_-fomit-frame-pointer2019100820190816
65153412? ? ?? ? ?ref_osslgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2019100820190816
65390037? ? ?? ? ?ref_osslgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2019100820190816
65415825? ? ?? ? ?ref_osslgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019100820190816
65630553? ? ?? ? ?ref_osslgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2019100820190816
65681562? ? ?? ? ?ref_osslgcc_-funroll-loops_-O_-fomit-frame-pointer2019100820190816
65725230? ? ?? ? ?ref_osslgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2019100820190816
65738979? ? ?? ? ?ref_osslgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2019100820190816
66047817? ? ?? ? ?ref_osslgcc_-funroll-loops_-Os_-fomit-frame-pointer2019100820190816
66068928? ? ?? ? ?ref_osslgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019100820190816
66085299? ? ?? ? ?ref_osslgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2019100820190816
66226791? ? ?? ? ?ref_osslgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2019100820190816
66264453? ? ?? ? ?ref_osslgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2019100820190816
66417663? ? ?? ? ?ref_osslgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2019100820190816
66528615? ? ?? ? ?ref_osslgcc_-march=barcelona_-O_-fomit-frame-pointer2019100820190816
66529944? ? ?? ? ?ref_osslgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2019100820190816
66753324? ? ?? ? ?ref_osslgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2019100820190816
66774702? ? ?? ? ?ref_osslgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2019100820190816
66789120? ? ?? ? ?ref_osslgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2019100820190816
66794223? ? ?? ? ?ref_osslgcc_-m64_-march=core2_-O_-fomit-frame-pointer2019100820190816
67038384? ? ?? ? ?ref_osslgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2019100820190816
67136697? ? ?? ? ?ref_osslgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2019100820190816
67139604? ? ?? ? ?ref_osslgcc_-march=nocona_-O_-fomit-frame-pointer2019100820190816
67144623? ? ?? ? ?ref_osslgcc_-m64_-march=k8_-O_-fomit-frame-pointer2019100820190816
67312083? ? ?? ? ?ref_osslgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2019100820190816
67344198? ? ?? ? ?ref_osslgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2019100820190816
67720626? ? ?? ? ?ref_osslgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2019100820190816
67765416? ? ?? ? ?ref_osslgcc_-m64_-O_-fomit-frame-pointer2019100820190816
67928604? ? ?? ? ?ref_osslgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019100820190816
68568048? ? ?? ? ?ref_osslgcc_-march=k8_-O_-fomit-frame-pointer2019100820190816
69016023? ? ?? ? ?ref_osslgcc_-m64_-Os_-fomit-frame-pointer2019100820190816
69027255? ? ?? ? ?ref_osslgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2019100820190816
69093888? ? ?? ? ?ref_osslgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2019100820190816
69214965? ? ?? ? ?ref_osslgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2019100820190816
71394108? ? ?? ? ?ref_osslgcc_-O_-fomit-frame-pointer2019100820190816
142609119? ? ?? ? ?ref_osslcc2019100820190816
172047066? ? ?? ? ?ref_osslgcc_-funroll-loops2019100820190816
176800005? ? ?? ? ?ref_osslgcc2019100820190816

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: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: 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]
decode_portable.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:19: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