Implementation notes: amd64, manny613, crypto_aead/hs1sivv2

Computer: manny613
Architecture: amd64
CPU ID: GenuineIntel-000306e4-bfebfbff
SUPERCOP version: 20180818
Operation: crypto_aead
Primitive: hs1sivv2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
10968? ? ?? ? ?dolbeau/amd64-sseicc_-xCORE-AVX-I_-O3_-fomit-frame-pointer2018082920180818
11000? ? ?? ? ?dolbeau/amd64-sseicc_-xAVX_-O3_-fomit-frame-pointer2018082920180818
11360? ? ?? ? ?dolbeau/amd64-sseicc_-xSSE4.2_-O3_-fomit-frame-pointer2018082920180818
11396? ? ?? ? ?dolbeau/amd64-sseicc_-xAVX_-O2_-fomit-frame-pointer2018082920180818
11408? ? ?? ? ?dolbeau/amd64-sseicc_-xSSE4.1_-O3_-fomit-frame-pointer2018082920180818
11460? ? ?? ? ?dolbeau/amd64-sseicc_-xCORE-AVX-I_-O2_-fomit-frame-pointer2018082920180818
11716? ? ?? ? ?dolbeau/amd64-sseicc2018082920180818
11752? ? ?? ? ?dolbeau/amd64-sseicc_-xSSE4.2_-O2_-fomit-frame-pointer2018082920180818
11812? ? ?? ? ?dolbeau/amd64-sseicc_-xSSE4.1_-O2_-fomit-frame-pointer2018082920180818
11832? ? ?? ? ?dolbeau/amd64-sseicc_-no-vec2018082920180818
12116? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2018082920180818
12120? ? ?? ? ?fastergcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2018082920180818
12140? ? ?? ? ?fastergcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2018082920180818
12144? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2018082920180818
12160? ? ?? ? ?dolbeau/amd64-ssegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2018082920180818
12172? ? ?? ? ?fastergcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2018082920180818
12208? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2018082920180818
12252? ? ?? ? ?fastergcc_-m64_-march=core2_-O3_-fomit-frame-pointer2018082920180818
12368? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2018082920180818
12412? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2018082920180818
12424? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2018082920180818
12440? ? ?? ? ?dolbeau/amd64-ssegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2018082920180818
12548? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2018082920180818
12552? ? ?? ? ?fastericc_-xSSE4.2_-O2_-fomit-frame-pointer2018082920180818
12580? ? ?? ? ?fastericc_-xSSE4.2_-O3_-fomit-frame-pointer2018082920180818
12608? ? ?? ? ?fastericc_-xSSE4.1_-O3_-fomit-frame-pointer2018082920180818
12644? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2018082920180818
12672? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2018082920180818
12708? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=corei7_-O_-fomit-frame-pointer2018082920180818
12724? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2018082920180818
12732? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=core2_-Os_-fomit-frame-pointer2018082920180818
12732? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2018082920180818
12788? ? ?? ? ?fastergcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2018082920180818
12792? ? ?? ? ?fastergcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2018082920180818
12796? ? ?? ? ?fastericc_-xSSE4.1_-O2_-fomit-frame-pointer2018082920180818
12840? ? ?? ? ?fastergcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2018082920180818
12860? ? ?? ? ?fastergcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2018082920180818
12868? ? ?? ? ?fastergcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2018082920180818
12884? ? ?? ? ?fastergcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2018082920180818
12952? ? ?? ? ?fastergcc_-m64_-march=core2_-Os_-fomit-frame-pointer2018082920180818
13040? ? ?? ? ?fastergcc_-m64_-march=core2_-O2_-fomit-frame-pointer2018082920180818
13540? ? ?? ? ?dolbeau/amd64-ssegcc_-m64_-march=core2_-O_-fomit-frame-pointer2018082920180818
13644? ? ?? ? ?fastergcc_-funroll-loops_-O3_-fomit-frame-pointer2018082920180818
13644? ? ?? ? ?fastergcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2018082920180818
13652? ? ?? ? ?fastergcc_-m64_-O3_-fomit-frame-pointer2018082920180818
13656? ? ?? ? ?fastergcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2018082920180818
13672? ? ?? ? ?fastergcc_-O3_-fomit-frame-pointer2018082920180818
13680? ? ?? ? ?fastergcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2018082920180818
13712? ? ?? ? ?fastergcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2018082920180818
13740? ? ?? ? ?fastergcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2018082920180818
13756? ? ?? ? ?fastergcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2018082920180818
13776? ? ?? ? ?fastergcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2018082920180818
13808? ? ?? ? ?fastergcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2018082920180818
13808? ? ?? ? ?fastergcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2018082920180818
13824? ? ?? ? ?fastergcc_-m64_-march=k8_-O3_-fomit-frame-pointer2018082920180818
13824? ? ?? ? ?fastergcc_-march=nocona_-O3_-fomit-frame-pointer2018082920180818
13840? ? ?? ? ?fastergcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2018082920180818
13848? ? ?? ? ?fastergcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2018082920180818
13864? ? ?? ? ?fastergcc_-funroll-loops_-O2_-fomit-frame-pointer2018082920180818
13864? ? ?? ? ?fastergcc_-march=k8_-O3_-fomit-frame-pointer2018082920180818
13868? ? ?? ? ?fastergcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2018082920180818
13916? ? ?? ? ?fastergcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2018082920180818
13932? ? ?? ? ?fastergcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2018082920180818
13964? ? ?? ? ?fastergcc_-m64_-march=core2_-O_-fomit-frame-pointer2018082920180818
14004? ? ?? ? ?fastergcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2018082920180818
14008? ? ?? ? ?fastergcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2018082920180818
14016? ? ?? ? ?fastergcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2018082920180818
14016? ? ?? ? ?fastericc2018082920180818
14044? ? ?? ? ?fastergcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2018082920180818
14052? ? ?? ? ?fastergcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2018082920180818
14056? ? ?? ? ?fastergcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2018082920180818
14064? ? ?? ? ?fastergcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2018082920180818
14068? ? ?? ? ?fastergcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2018082920180818
14112? ? ?? ? ?fastergcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2018082920180818
14120? ? ?? ? ?fastergcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2018082920180818
14152? ? ?? ? ?fastericc_-no-vec2018082920180818
14164? ? ?? ? ?fastergcc_-march=barcelona_-O3_-fomit-frame-pointer2018082920180818
14168? ? ?? ? ?fastergcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2018082920180818
14172? ? ?? ? ?fastergcc_-funroll-loops_-O_-fomit-frame-pointer2018082920180818
14172? ? ?? ? ?fastergcc_-m64_-march=corei7_-O_-fomit-frame-pointer2018082920180818
14204? ? ?? ? ?fastergcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2018082920180818
14252? ? ?? ? ?fastergcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2018082920180818
14268? ? ?? ? ?fastergcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2018082920180818
14276? ? ?? ? ?fastergcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2018082920180818
14284? ? ?? ? ?fastergcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2018082920180818
14304? ? ?? ? ?fastergcc_-O2_-fomit-frame-pointer2018082920180818
14304? ? ?? ? ?fastergcc_-m64_-O2_-fomit-frame-pointer2018082920180818
14308? ? ?? ? ?fastergcc_-Os_-fomit-frame-pointer2018082920180818
14312? ? ?? ? ?fastergcc_-funroll-loops_-Os_-fomit-frame-pointer2018082920180818
14328? ? ?? ? ?fastergcc_-m64_-Os_-fomit-frame-pointer2018082920180818
14348? ? ?? ? ?fastergcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2018082920180818
14424? ? ?? ? ?fastergcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2018082920180818
14424? ? ?? ? ?fastergcc_-march=k8_-Os_-fomit-frame-pointer2018082920180818
14432? ? ?? ? ?fastergcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2018082920180818
14436? ? ?? ? ?fastergcc_-march=barcelona_-Os_-fomit-frame-pointer2018082920180818
14500? ? ?? ? ?fastergcc_-march=nocona_-Os_-fomit-frame-pointer2018082920180818
14508? ? ?? ? ?fastergcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2018082920180818
14508? ? ?? ? ?fastergcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2018082920180818
14508? ? ?? ? ?fastergcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2018082920180818
14528? ? ?? ? ?fastergcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2018082920180818
14528? ? ?? ? ?fastergcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2018082920180818
14564? ? ?? ? ?fastergcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2018082920180818
14580? ? ?? ? ?fastergcc_-m64_-march=k8_-Os_-fomit-frame-pointer2018082920180818
14592? ? ?? ? ?fastergcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2018082920180818
14596? ? ?? ? ?fastergcc_-march=nocona_-O2_-fomit-frame-pointer2018082920180818
14612? ? ?? ? ?fastergcc_-march=barcelona_-O2_-fomit-frame-pointer2018082920180818
14616? ? ?? ? ?fastergcc_-march=k8_-O2_-fomit-frame-pointer2018082920180818
14620? ? ?? ? ?fastergcc_-m64_-march=k8_-O2_-fomit-frame-pointer2018082920180818
14652? ? ?? ? ?fastergcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2018082920180818
14684? ? ?? ? ?fastergcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2018082920180818
15324? ? ?? ? ?fastergcc_-m64_-march=nocona_-O_-fomit-frame-pointer2018082920180818
15340? ? ?? ? ?fastergcc_-march=barcelona_-O_-fomit-frame-pointer2018082920180818
15420? ? ?? ? ?fastergcc_-fno-schedule-insns_-O_-fomit-frame-pointer2018082920180818
15484? ? ?? ? ?fastergcc_-march=nocona_-O_-fomit-frame-pointer2018082920180818
15520? ? ?? ? ?fastergcc_-m64_-march=k8_-O_-fomit-frame-pointer2018082920180818
15660? ? ?? ? ?fastergcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2018082920180818
15672? ? ?? ? ?fastergcc_-march=k8_-O_-fomit-frame-pointer2018082920180818
15700? ? ?? ? ?fastergcc_-O_-fomit-frame-pointer2018082920180818
15740? ? ?? ? ?fastergcc_-m64_-O_-fomit-frame-pointer2018082920180818
18568? ? ?? ? ?fastergcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2018082920180818
32416? ? ?? ? ?refgcc_-funroll-loops_-O3_-fomit-frame-pointer2018082920180818
32432? ? ?? ? ?refgcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2018082920180818
32480? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2018082920180818
32628? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2018082920180818
32628? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2018082920180818
32672? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2018082920180818
32688? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2018082920180818
33440? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2018082920180818
33488? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2018082920180818
35440? ? ?? ? ?refgcc_-funroll-loops_-O2_-fomit-frame-pointer2018082920180818
35444? ? ?? ? ?refgcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2018082920180818
35460? ? ?? ? ?refgcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2018082920180818
35492? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2018082920180818
35516? ? ?? ? ?refgcc_-march=nocona_-O3_-fomit-frame-pointer2018082920180818
35736? ? ?? ? ?refgcc_-m64_-O3_-fomit-frame-pointer2018082920180818
35760? ? ?? ? ?refgcc_-O3_-fomit-frame-pointer2018082920180818
35788? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2018082920180818
35792? ? ?? ? ?refgcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2018082920180818
35816? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2018082920180818
35824? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2018082920180818
35880? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2018082920180818
35944? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2018082920180818
35960? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2018082920180818
35964? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2018082920180818
35972? ? ?? ? ?refgcc_-march=barcelona_-O3_-fomit-frame-pointer2018082920180818
35988? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2018082920180818
35988? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2018082920180818
36004? ? ?? ? ?refgcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2018082920180818
36016? ? ?? ? ?refgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2018082920180818
36016? ? ?? ? ?refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2018082920180818
36140? ? ?? ? ?refgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2018082920180818
36144? ? ?? ? ?refgcc_-march=k8_-O3_-fomit-frame-pointer2018082920180818
36204? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2018082920180818
36220? ? ?? ? ?refgcc_-m64_-march=k8_-O3_-fomit-frame-pointer2018082920180818
36244? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2018082920180818
46932? ? ?? ? ?refgcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2018082920180818
47000? ? ?? ? ?refgcc_-march=barcelona_-O2_-fomit-frame-pointer2018082920180818
47168? ? ?? ? ?refgcc_-m64_-march=k8_-O2_-fomit-frame-pointer2018082920180818
47184? ? ?? ? ?refgcc_-march=k8_-O2_-fomit-frame-pointer2018082920180818
47772? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2018082920180818
47792? ? ?? ? ?refgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2018082920180818
47888? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2018082920180818
48316? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2018082920180818
48400? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2018082920180818
48520? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2018082920180818
48552? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2018082920180818
48656? ? ?? ? ?refgcc_-march=nocona_-O2_-fomit-frame-pointer2018082920180818
48660? ? ?? ? ?refgcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2018082920180818
48876? ? ?? ? ?refgcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2018082920180818
48884? ? ?? ? ?refgcc_-m64_-Os_-fomit-frame-pointer2018082920180818
48888? ? ?? ? ?refgcc_-Os_-fomit-frame-pointer2018082920180818
48924? ? ?? ? ?reficc_-xSSE4.2_-O3_-fomit-frame-pointer2018082920180818
48988? ? ?? ? ?refgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2018082920180818
49060? ? ?? ? ?refgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2018082920180818
49120? ? ?? ? ?reficc_-no-vec2018082920180818
49120? ? ?? ? ?reficc_-xSSE4.1_-O2_-fomit-frame-pointer2018082920180818
49136? ? ?? ? ?refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2018082920180818
49148? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2018082920180818
49148? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2018082920180818
49176? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2018082920180818
49200? ? ?? ? ?reficc_-xSSE4.2_-O2_-fomit-frame-pointer2018082920180818
49220? ? ?? ? ?reficc_-xSSE4.1_-O3_-fomit-frame-pointer2018082920180818
49376? ? ?? ? ?refgcc_-m64_-O2_-fomit-frame-pointer2018082920180818
49376? ? ?? ? ?reficc_-xCORE-AVX-I_-O3_-fomit-frame-pointer2018082920180818
49400? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2018082920180818
49404? ? ?? ? ?refgcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2018082920180818
49452? ? ?? ? ?refgcc_-O2_-fomit-frame-pointer2018082920180818
49532? ? ?? ? ?reficc_-xAVX_-O3_-fomit-frame-pointer2018082920180818
49732? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2018082920180818
49744? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2018082920180818
49800? ? ?? ? ?refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2018082920180818
50144? ? ?? ? ?reficc_-xAVX_-O2_-fomit-frame-pointer2018082920180818
50276? ? ?? ? ?reficc_-xCORE-AVX-I_-O2_-fomit-frame-pointer2018082920180818
50304? ? ?? ? ?refgcc_-m64_-march=k8_-Os_-fomit-frame-pointer2018082920180818
50512? ? ?? ? ?refgcc_-march=barcelona_-Os_-fomit-frame-pointer2018082920180818
50592? ? ?? ? ?refgcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2018082920180818
50820? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2018082920180818
50844? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2018082920180818
50848? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2018082920180818
50876? ? ?? ? ?refgcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2018082920180818
50896? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2018082920180818
50900? ? ?? ? ?refgcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2018082920180818
50904? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2018082920180818
50916? ? ?? ? ?refgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2018082920180818
50928? ? ?? ? ?refgcc_-march=nocona_-Os_-fomit-frame-pointer2018082920180818
50984? ? ?? ? ?reficc2018082920180818
51196? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2018082920180818
51196? ? ?? ? ?refgcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2018082920180818
51468? ? ?? ? ?refgcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2018082920180818
51480? ? ?? ? ?refgcc_-funroll-loops_-Os_-fomit-frame-pointer2018082920180818
51496? ? ?? ? ?refgcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2018082920180818
51636? ? ?? ? ?refgcc_-funroll-loops_-O_-fomit-frame-pointer2018082920180818
52180? ? ?? ? ?refgcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2018082920180818
52184? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2018082920180818
52240? ? ?? ? ?refgcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2018082920180818
52300? ? ?? ? ?refgcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2018082920180818
58860? ? ?? ? ?fastergcc_-funroll-loops2018082920180818
59008? ? ?? ? ?fastergcc2018082920180818
61488? ? ?? ? ?refgcc_-O_-fomit-frame-pointer2018082920180818
61588? ? ?? ? ?refgcc_-m64_-O_-fomit-frame-pointer2018082920180818
61740? ? ?? ? ?refgcc_-fno-schedule-insns_-O_-fomit-frame-pointer2018082920180818
61816? ? ?? ? ?fastercc2018082920180818
64180? ? ?? ? ?refgcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2018082920180818
64500? ? ?? ? ?refgcc_-march=barcelona_-O_-fomit-frame-pointer2018082920180818
65076? ? ?? ? ?refgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2018082920180818
65128? ? ?? ? ?refgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2018082920180818
65328? ? ?? ? ?refgcc_-m64_-march=core2_-O_-fomit-frame-pointer2018082920180818
65380? ? ?? ? ?refgcc_-march=nocona_-O_-fomit-frame-pointer2018082920180818
65456? ? ?? ? ?refgcc_-m64_-march=nocona_-O_-fomit-frame-pointer2018082920180818
65540? ? ?? ? ?refgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2018082920180818
65584? ? ?? ? ?refgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2018082920180818
65624? ? ?? ? ?refgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2018082920180818
65644? ? ?? ? ?refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2018082920180818
65988? ? ?? ? ?refgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2018082920180818
68780? ? ?? ? ?refgcc_-march=k8_-O_-fomit-frame-pointer2018082920180818
68828? ? ?? ? ?refgcc_-m64_-march=k8_-O_-fomit-frame-pointer2018082920180818
69804? ? ?? ? ?refgcc_-march=k8_-Os_-fomit-frame-pointer2018082920180818
363260? ? ?? ? ?refcc2018082920180818
370392? ? ?? ? ?refgcc_-funroll-loops2018082920180818
370860? ? ?? ? ?refgcc2018082920180818

Test failure

Implementation: dolbeau/amd64-avx2
Security model: unknown
Compiler: gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 16, namely:
CompilerImplementations
gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core-avx2 -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=core-avx2 -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer faster
gcc -m64 -march=core-avx2 -O -fomit-frame-pointer faster
gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer faster
icc -xAVX -O2 -fomit-frame-pointer faster
icc -xAVX -O3 -fomit-frame-pointer faster
icc -xCORE-AVX-I -O2 -fomit-frame-pointer faster
icc -xCORE-AVX-I -O3 -fomit-frame-pointer faster
gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer ref
gcc -m64 -march=core-avx2 -O -fomit-frame-pointer ref
gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer ref

Test failure

Implementation: dolbeau/amd64-sse
Security model: unknown
Compiler: gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer
error 111
crypto_aead_decrypt returns nonzero

Number of similar (compiler,implementation) pairs: 16, namely:
CompilerImplementations
gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=core2 -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=core2 -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=corei7 -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv dolbeau/amd64-sse
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv dolbeau/amd64-sse

Compiler output

Implementation: dolbeau/amd64-avx2
Security model: unknown
Compiler: cc
encrypt.c: encrypt.c:90:2: error: #error "This code requires AVX2 to work"
encrypt.c: #error "This code requires AVX2 to work"
encrypt.c: ^
encrypt.c: In file included from encrypt.c:194:0:
encrypt.c: c176.h: In function 'chacha_noxor176':
encrypt.c: c176.h:92:10: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: t_12 = _mm_broadcastd_epi32(_mm_cvtsi32_si128(in12));
encrypt.c: ^
encrypt.c: c176.h:12:84: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: x_##a = _mm_add_epi32(x_##a, x_##b); t_##a = _mm_xor_si128(x_##d, x_##a); x_##d = _mm_shuffle_epi8(t_##a, rot16); \
encrypt.c: ^
encrypt.c: c176.h:17:36: note: in expansion of macro 'VEC4_QUARTERROUND_SHUFFLE'
encrypt.c: #define VEC4_QUARTERROUND(a,b,c,d) VEC4_QUARTERROUND_SHUFFLE(a,b,c,d)
encrypt.c: ^
encrypt.c: c176.h:98:7: note: in expansion of macro 'VEC4_QUARTERROUND'
encrypt.c: VEC4_QUARTERROUND( 0, 4, 8,12);
encrypt.c: ^
encrypt.c: c176.h:14:84: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: x_##a = _mm_add_epi32(x_##a, x_##b); t_##a = _mm_xor_si128(x_##d, x_##a); x_##d = _mm_shuffle_epi8(t_##a, rot8); \
encrypt.c: ^
encrypt.c: c176.h:17:36: note: in expansion of macro 'VEC4_QUARTERROUND_SHUFFLE'
encrypt.c: #define VEC4_QUARTERROUND(a,b,c,d) VEC4_QUARTERROUND_SHUFFLE(a,b,c,d)
encrypt.c: ^
encrypt.c: c176.h:98:7: note: in expansion of macro 'VEC4_QUARTERROUND'
encrypt.c: VEC4_QUARTERROUND( 0, 4, 8,12);
encrypt.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
cc dolbeau/amd64-avx2

Compiler output

Implementation: dolbeau/amd64-avx2
Security model: unknown
Compiler: gcc
encrypt.c: encrypt.c:90:2: error: #error "This code requires AVX2 to work"
encrypt.c: #error "This code requires AVX2 to work"
encrypt.c: ^~~~~
encrypt.c: encrypt.c: In function 'prf_hash2_2':
encrypt.c: encrypt.c:425:19: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
encrypt.c: __m256i kv0 = _mm256_loadu_si256((const __m256i*)(nhkey+ 0)); // 1
encrypt.c: ^~~

Number of similar (compiler,implementation) pairs: 86, namely:
CompilerImplementations
gcc dolbeau/amd64-avx2
gcc -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -fno-schedule-insns -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -fno-schedule-insns -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -fno-schedule-insns -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -fno-schedule-insns -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops dolbeau/amd64-avx2
gcc -funroll-loops -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core2 -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core2 -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core2 -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core2 -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=corei7 -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=corei7 -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=corei7 -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=k8 -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=k8 -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=k8 -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=k8 -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=nocona -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=nocona -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=nocona -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=nocona -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -march=barcelona -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -march=barcelona -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -march=barcelona -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -march=barcelona -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -march=k8 -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -march=k8 -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -march=k8 -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -march=k8 -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -march=nocona -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -march=nocona -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -march=nocona -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -march=nocona -Os -fomit-frame-pointer dolbeau/amd64-avx2

Compiler output

Implementation: dolbeau/amd64-avx2
Security model: unknown
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
encrypt.c: encrypt.c:90:2: error: #error "This code requires AVX2 to work"
encrypt.c: #error "This code requires AVX2 to work"
encrypt.c: ^~~~~
encrypt.c: encrypt.c: In function 'prf_hash2_2':
encrypt.c: encrypt.c:425:19: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
encrypt.c: __m256i kv0 = _mm256_loadu_si256((const __m256i*)(nhkey+ 0)); // 1
encrypt.c: ^~~
encrypt.c: encrypt.c:90:2: error: #error "This code requires AVX2 to work"
encrypt.c: #error "This code requires AVX2 to work"
encrypt.c: ^~~~~
encrypt.c: encrypt.c: In function 'prf_hash2_2':
encrypt.c: encrypt.c:425:19: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
encrypt.c: __m256i kv0 = _mm256_loadu_si256((const __m256i*)(nhkey+ 0)); // 1
encrypt.c: ^~~

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

Compiler output

Implementation: dolbeau/amd64-avx2
Security model: unknown
Compiler: gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer
encrypt.c: encrypt.c:90:2: error: #error "This code requires AVX2 to work"
encrypt.c: #error "This code requires AVX2 to work"
encrypt.c: ^~~~~

Number of similar (compiler,implementation) pairs: 16, namely:
CompilerImplementations
gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core-avx-i -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=corei7-avx -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer dolbeau/amd64-avx2
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer dolbeau/amd64-avx2
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv dolbeau/amd64-avx2
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv dolbeau/amd64-avx2
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv dolbeau/amd64-avx2
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv dolbeau/amd64-avx2

Compiler output

Implementation: dolbeau/amd64-avx2
Security model: unknown
Compiler: icc
encrypt.c: encrypt.c(90): error: #error directive: "This code requires AVX2 to work"
encrypt.c: #error "This code requires AVX2 to work"
encrypt.c: ^
encrypt.c:
encrypt.c: compilation aborted for encrypt.c (code 2)

Number of similar (compiler,implementation) pairs: 10, namely:
CompilerImplementations
icc dolbeau/amd64-avx2
icc -no-vec dolbeau/amd64-avx2
icc -xAVX -O2 -fomit-frame-pointer dolbeau/amd64-avx2
icc -xAVX -O3 -fomit-frame-pointer dolbeau/amd64-avx2
icc -xCORE-AVX-I -O2 -fomit-frame-pointer dolbeau/amd64-avx2
icc -xCORE-AVX-I -O3 -fomit-frame-pointer dolbeau/amd64-avx2
icc -xSSE4.1 -O2 -fomit-frame-pointer dolbeau/amd64-avx2
icc -xSSE4.1 -O3 -fomit-frame-pointer dolbeau/amd64-avx2
icc -xSSE4.2 -O2 -fomit-frame-pointer dolbeau/amd64-avx2
icc -xSSE4.2 -O3 -fomit-frame-pointer dolbeau/amd64-avx2

Compiler output

Implementation: dolbeau/amd64-avx512
Security model: unknown
Compiler: cc
encrypt.c: encrypt.c:90:2: error: #error "This code requires AVX512F to work"
encrypt.c: #error "This code requires AVX512F to work"
encrypt.c: ^
encrypt.c: In file included from encrypt.c:194:0:
encrypt.c: c176.h: In function 'chacha_noxor176':
encrypt.c: c176.h:92:10: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: t_12 = _mm_broadcastd_epi32(_mm_cvtsi32_si128(in12));
encrypt.c: ^
encrypt.c: c176.h:12:84: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: x_##a = _mm_add_epi32(x_##a, x_##b); t_##a = _mm_xor_si128(x_##d, x_##a); x_##d = _mm_shuffle_epi8(t_##a, rot16); \
encrypt.c: ^
encrypt.c: c176.h:17:36: note: in expansion of macro 'VEC4_QUARTERROUND_SHUFFLE'
encrypt.c: #define VEC4_QUARTERROUND(a,b,c,d) VEC4_QUARTERROUND_SHUFFLE(a,b,c,d)
encrypt.c: ^
encrypt.c: c176.h:98:7: note: in expansion of macro 'VEC4_QUARTERROUND'
encrypt.c: VEC4_QUARTERROUND( 0, 4, 8,12);
encrypt.c: ^
encrypt.c: c176.h:14:84: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: x_##a = _mm_add_epi32(x_##a, x_##b); t_##a = _mm_xor_si128(x_##d, x_##a); x_##d = _mm_shuffle_epi8(t_##a, rot8); \
encrypt.c: ^
encrypt.c: c176.h:17:36: note: in expansion of macro 'VEC4_QUARTERROUND_SHUFFLE'
encrypt.c: #define VEC4_QUARTERROUND(a,b,c,d) VEC4_QUARTERROUND_SHUFFLE(a,b,c,d)
encrypt.c: ^
encrypt.c: c176.h:98:7: note: in expansion of macro 'VEC4_QUARTERROUND'
encrypt.c: VEC4_QUARTERROUND( 0, 4, 8,12);
encrypt.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
cc dolbeau/amd64-avx512

Compiler output

Implementation: dolbeau/amd64-avx512
Security model: unknown
Compiler: gcc
encrypt.c: encrypt.c:90:2: error: #error "This code requires AVX512F to work"
encrypt.c: #error "This code requires AVX512F to work"
encrypt.c: ^~~~~
encrypt.c: encrypt.c:322:20: error: conflicting types for '_mm512_reduce_add_epi64'
encrypt.c: unsigned long long _mm512_reduce_add_epi64 (__m512i a) {
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: In file included from /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/immintrin.h:45,
encrypt.c: from encrypt.c:54:
encrypt.c: /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/avx512fintrin.h:14976:1: note: previous definition of '_mm512_reduce_add_epi64' was here
encrypt.c: _mm512_reduce_add_epi64 (__m512i __A)
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c: In function '_mm512_reduce_add_epi64':
encrypt.c: encrypt.c:322:20: note: The ABI for passing parameters with 64-byte alignment has changed in GCC 4.6
encrypt.c: unsigned long long _mm512_reduce_add_epi64 (__m512i a) {
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c: In function 'prf_hash2_2':
encrypt.c: encrypt.c:483:19: warning: AVX512F vector return without AVX512F enabled changes the ABI [-Wpsabi]
encrypt.c: __m512i kv0 = _mm512_loadu_si512((const __m512i*)(nhkey+ 0)); // 1
encrypt.c: ^~~
encrypt.c: In file included from /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/immintrin.h:43,
encrypt.c: from encrypt.c:54:
encrypt.c: encrypt.c:502:50: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
encrypt.c: __m256i inv0 = _mm256_inserti128_si256(_mm256_castsi128_si256(inv0lo), inv0lo, 1);
encrypt.c: ^

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
gcc dolbeau/amd64-avx512
gcc -funroll-loops dolbeau/amd64-avx512

Compiler output

Implementation: dolbeau/amd64-avx512
Security model: unknown
Compiler: gcc -O2 -fomit-frame-pointer
encrypt.c: encrypt.c:90:2: error: #error "This code requires AVX512F to work"
encrypt.c: #error "This code requires AVX512F to work"
encrypt.c: ^~~~~
encrypt.c: encrypt.c:322:20: error: conflicting types for '_mm512_reduce_add_epi64'
encrypt.c: unsigned long long _mm512_reduce_add_epi64 (__m512i a) {
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: In file included from /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/immintrin.h:45,
encrypt.c: from encrypt.c:54:
encrypt.c: /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/avx512fintrin.h:14976:1: note: previous definition of '_mm512_reduce_add_epi64' was here
encrypt.c: _mm512_reduce_add_epi64 (__m512i __A)
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c: In function '_mm512_reduce_add_epi64':
encrypt.c: encrypt.c:322:20: note: The ABI for passing parameters with 64-byte alignment has changed in GCC 4.6
encrypt.c: unsigned long long _mm512_reduce_add_epi64 (__m512i a) {
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c: In function 'prf_hash2_2':
encrypt.c: encrypt.c:483:19: warning: AVX512F vector return without AVX512F enabled changes the ABI [-Wpsabi]
encrypt.c: __m512i kv0 = _mm512_loadu_si512((const __m512i*)(nhkey+ 0)); // 1
encrypt.c: ^~~
encrypt.c: encrypt.c:502:19: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
encrypt.c: __m256i inv0 = _mm256_inserti128_si256(_mm256_castsi128_si256(inv0lo), inv0lo, 1);
encrypt.c: ^~~~

Number of similar (compiler,implementation) pairs: 84, namely:
CompilerImplementations
gcc -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -fno-schedule-insns -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -fno-schedule-insns -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -fno-schedule-insns -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -fno-schedule-insns -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core2 -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core2 -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core2 -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core2 -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=corei7 -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=corei7 -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=corei7 -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=k8 -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=k8 -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=k8 -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=k8 -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=nocona -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=nocona -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=nocona -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -m64 -march=nocona -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -march=barcelona -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -march=barcelona -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -march=barcelona -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -march=barcelona -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -march=k8 -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -march=k8 -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -march=k8 -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -march=k8 -Os -fomit-frame-pointer dolbeau/amd64-avx512
gcc -march=nocona -O2 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -march=nocona -O3 -fomit-frame-pointer dolbeau/amd64-avx512
gcc -march=nocona -O -fomit-frame-pointer dolbeau/amd64-avx512
gcc -march=nocona -Os -fomit-frame-pointer dolbeau/amd64-avx512

Compiler output

Implementation: dolbeau/amd64-avx512
Security model: unknown
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
encrypt.c: encrypt.c:90:2: error: #error "This code requires AVX512F to work"
encrypt.c: #error "This code requires AVX512F to work"
encrypt.c: ^~~~~
encrypt.c: encrypt.c:322:20: error: conflicting types for '_mm512_reduce_add_epi64'
encrypt.c: unsigned long long _mm512_reduce_add_epi64 (__m512i a) {
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: In file included from /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/immintrin.h:45,
encrypt.c: from encrypt.c:54:
encrypt.c: /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/avx512fintrin.h:14976:1: note: previous definition of '_mm512_reduce_add_epi64' was here
encrypt.c: _mm512_reduce_add_epi64 (__m512i __A)
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c: In function '_mm512_reduce_add_epi64':
encrypt.c: encrypt.c:322:20: note: The ABI for passing parameters with 64-byte alignment has changed in GCC 4.6
encrypt.c: unsigned long long _mm512_reduce_add_epi64 (__m512i a) {
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c: In function 'prf_hash2_2':
encrypt.c: encrypt.c:483:19: warning: AVX512F vector return without AVX512F enabled changes the ABI [-Wpsabi]
encrypt.c: __m512i kv0 = _mm512_loadu_si512((const __m512i*)(nhkey+ 0)); // 1
encrypt.c: ^~~
encrypt.c: encrypt.c:502:19: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
encrypt.c: __m256i inv0 = _mm256_inserti128_si256(_mm256_castsi128_si256(inv0lo), inv0lo, 1);
encrypt.c: ^~~~
encrypt.c: encrypt.c:90:2: error: #error "This code requires AVX512F to work"
encrypt.c: #error "This code requires AVX512F to work"
encrypt.c: ^~~~~
encrypt.c: encrypt.c:322:20: error: conflicting types for '_mm512_reduce_add_epi64'
encrypt.c: unsigned long long _mm512_reduce_add_epi64 (__m512i a) {
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: In file included from /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/immintrin.h:45,
encrypt.c: from encrypt.c:54:
encrypt.c: /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/avx512fintrin.h:14976:1: note: previous definition of '_mm512_reduce_add_epi64' was here
encrypt.c: _mm512_reduce_add_epi64 (__m512i __A)
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c: In function '_mm512_reduce_add_epi64':
encrypt.c: encrypt.c:322:20: note: The ABI for passing parameters with 64-byte alignment has changed in GCC 4.6
encrypt.c: unsigned long long _mm512_reduce_add_epi64 (__m512i a) {
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c: In function 'prf_hash2_2':
encrypt.c: encrypt.c:483:19: warning: AVX512F vector return without AVX512F enabled changes the ABI [-Wpsabi]
encrypt.c: __m512i kv0 = _mm512_loadu_si512((const __m512i*)(nhkey+ 0)); // 1
encrypt.c: ^~~
encrypt.c: encrypt.c:502:19: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
encrypt.c: __m256i inv0 = _mm256_inserti128_si256(_mm256_castsi128_si256(inv0lo), inv0lo, 1);
encrypt.c: ^~~~

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

Compiler output

Implementation: dolbeau/amd64-avx512
Security model: unknown
Compiler: gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer
encrypt.c: encrypt.c:90:2: error: #error "This code requires AVX512F to work"
encrypt.c: #error "This code requires AVX512F to work"
encrypt.c: ^~~~~
encrypt.c: encrypt.c:322:20: error: conflicting types for '_mm512_reduce_add_epi64'
encrypt.c: unsigned long long _mm512_reduce_add_epi64 (__m512i a) {
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: In file included from /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/immintrin.h:45,
encrypt.c: from encrypt.c:54:
encrypt.c: /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/avx512fintrin.h:14976:1: note: previous definition of '_mm512_reduce_add_epi64' was here
encrypt.c: _mm512_reduce_add_epi64 (__m512i __A)
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c: In function '_mm512_reduce_add_epi64':
encrypt.c: encrypt.c:322:20: note: The ABI for passing parameters with 64-byte alignment has changed in GCC 4.6
encrypt.c: unsigned long long _mm512_reduce_add_epi64 (__m512i a) {
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c: In function 'prf_hash2_2':
encrypt.c: encrypt.c:483:19: warning: AVX512F vector return without AVX512F enabled changes the ABI [-Wpsabi]
encrypt.c: __m512i kv0 = _mm512_loadu_si512((const __m512i*)(nhkey+ 0)); // 1
encrypt.c: ^~~

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

Compiler output

Implementation: dolbeau/amd64-avx512
Security model: unknown
Compiler: icc
encrypt.c: encrypt.c(90): error: #error directive: "This code requires AVX512F to work"
encrypt.c: #error "This code requires AVX512F to work"
encrypt.c: ^
encrypt.c:
encrypt.c: compilation aborted for encrypt.c (code 2)

Number of similar (compiler,implementation) pairs: 10, namely:
CompilerImplementations
icc dolbeau/amd64-avx512
icc -no-vec dolbeau/amd64-avx512
icc -xAVX -O2 -fomit-frame-pointer dolbeau/amd64-avx512
icc -xAVX -O3 -fomit-frame-pointer dolbeau/amd64-avx512
icc -xCORE-AVX-I -O2 -fomit-frame-pointer dolbeau/amd64-avx512
icc -xCORE-AVX-I -O3 -fomit-frame-pointer dolbeau/amd64-avx512
icc -xSSE4.1 -O2 -fomit-frame-pointer dolbeau/amd64-avx512
icc -xSSE4.1 -O3 -fomit-frame-pointer dolbeau/amd64-avx512
icc -xSSE4.2 -O2 -fomit-frame-pointer dolbeau/amd64-avx512
icc -xSSE4.2 -O3 -fomit-frame-pointer dolbeau/amd64-avx512

Compiler output

Implementation: dolbeau/amd64-sse
Security model: unknown
Compiler: cc
encrypt.c: In file included from encrypt.c:54:0:
encrypt.c: /usr/lib/gcc/x86_64-redhat-linux/4.8.5/include/smmintrin.h:31:3: error: #error "SSE4.1 instruction set not enabled"
encrypt.c: # error "SSE4.1 instruction set not enabled"
encrypt.c: ^
encrypt.c: In file included from encrypt.c:190:0:
encrypt.c: c176.h: In function 'chacha_noxor176':
encrypt.c: c176.h:21:3: error: unknown type name '__m128i'
encrypt.c: __m128i rot16 = _mm_set_epi8(13,12,15,14,9,8,11,10,5,4,7,6,1,0,3,2);
encrypt.c: ^
encrypt.c: c176.h:22:3: error: unknown type name '__m128i'
encrypt.c: __m128i rot8 = _mm_set_epi8(14,13,12,15,10,9,8,11,6,5,4,7,2,1,0,3);
encrypt.c: ^
encrypt.c: c176.h:24:3: error: unknown type name '__m128i'
encrypt.c: __m128i x_0 = _mm_set1_epi32(x[0]);
encrypt.c: ^
encrypt.c: c176.h:25:3: error: unknown type name '__m128i'
encrypt.c: __m128i x_1 = _mm_set1_epi32(x[1]);
encrypt.c: ^
encrypt.c: c176.h:26:3: error: unknown type name '__m128i'
encrypt.c: __m128i x_2 = _mm_set1_epi32(x[2]);
encrypt.c: ^
encrypt.c: c176.h:27:3: error: unknown type name '__m128i'
encrypt.c: __m128i x_3 = _mm_set1_epi32(x[3]);
encrypt.c: ^
encrypt.c: c176.h:28:3: error: unknown type name '__m128i'
encrypt.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
cc dolbeau/amd64-sse

Compiler output

Implementation: dolbeau/amd64-sse
Security model: unknown
Compiler: gcc
encrypt.c: In file included from /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/smmintrin.h:32,
encrypt.c: from encrypt.c:54:
encrypt.c: c176.h: In function 'chacha_noxor176':
encrypt.c: /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
encrypt.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
encrypt.c: ^~~~~~~~~~~~~~~~
encrypt.c: In file included from encrypt.c:190:
encrypt.c: c176.h:14:86: note: called from here
encrypt.c: x_##a = _mm_add_epi32(x_##a, x_##b); t_##a = _mm_xor_si128(x_##d, x_##a); x_##d = _mm_shuffle_epi8(t_##a, rot8); \
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: c176.h:17:36: note: in expansion of macro 'VEC4_QUARTERROUND_SHUFFLE'
encrypt.c: #define VEC4_QUARTERROUND(a,b,c,d) VEC4_QUARTERROUND_SHUFFLE(a,b,c,d)
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: c176.h:106:7: note: in expansion of macro 'VEC4_QUARTERROUND'
encrypt.c: VEC4_QUARTERROUND( 3, 4, 9,14);
encrypt.c: ^~~~~~~~~~~~~~~~~
encrypt.c: In file included from /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/smmintrin.h:32,
encrypt.c: from encrypt.c:54:
encrypt.c: /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
encrypt.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
encrypt.c: ^~~~~~~~~~~~~~~~
encrypt.c: In file included from encrypt.c:190:
encrypt.c: c176.h:12:86: note: called from here
encrypt.c: x_##a = _mm_add_epi32(x_##a, x_##b); t_##a = _mm_xor_si128(x_##d, x_##a); x_##d = _mm_shuffle_epi8(t_##a, rot16); \
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: ...

Number of similar (compiler,implementation) pairs: 70, namely:
CompilerImplementations
gcc dolbeau/amd64-sse
gcc -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -fno-schedule-insns -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -fno-schedule-insns -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -fno-schedule-insns -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -fno-schedule-insns -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops dolbeau/amd64-sse
gcc -funroll-loops -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=k8 -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=k8 -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=k8 -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=k8 -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=nocona -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=nocona -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=nocona -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -m64 -march=nocona -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -march=barcelona -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -march=barcelona -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -march=barcelona -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -march=barcelona -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -march=k8 -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -march=k8 -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -march=k8 -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -march=k8 -Os -fomit-frame-pointer dolbeau/amd64-sse
gcc -march=nocona -O2 -fomit-frame-pointer dolbeau/amd64-sse
gcc -march=nocona -O3 -fomit-frame-pointer dolbeau/amd64-sse
gcc -march=nocona -O -fomit-frame-pointer dolbeau/amd64-sse
gcc -march=nocona -Os -fomit-frame-pointer dolbeau/amd64-sse

Compiler output

Implementation: dolbeau/amd64-sse
Security model: unknown
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
encrypt.c: In file included from /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/smmintrin.h:32,
encrypt.c: from encrypt.c:54:
encrypt.c: c176.h: In function 'chacha_noxor176':
encrypt.c: /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
encrypt.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
encrypt.c: ^~~~~~~~~~~~~~~~
encrypt.c: In file included from encrypt.c:190:
encrypt.c: c176.h:14:86: note: called from here
encrypt.c: x_##a = _mm_add_epi32(x_##a, x_##b); t_##a = _mm_xor_si128(x_##d, x_##a); x_##d = _mm_shuffle_epi8(t_##a, rot8); \
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: c176.h:17:36: note: in expansion of macro 'VEC4_QUARTERROUND_SHUFFLE'
encrypt.c: #define VEC4_QUARTERROUND(a,b,c,d) VEC4_QUARTERROUND_SHUFFLE(a,b,c,d)
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: c176.h:106:7: note: in expansion of macro 'VEC4_QUARTERROUND'
encrypt.c: VEC4_QUARTERROUND( 3, 4, 9,14);
encrypt.c: ^~~~~~~~~~~~~~~~~
encrypt.c: In file included from /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/smmintrin.h:32,
encrypt.c: from encrypt.c:54:
encrypt.c: /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
encrypt.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
encrypt.c: ^~~~~~~~~~~~~~~~
encrypt.c: In file included from encrypt.c:190:
encrypt.c: c176.h:12:86: note: called from here
encrypt.c: x_##a = _mm_add_epi32(x_##a, x_##b); t_##a = _mm_xor_si128(x_##d, x_##a); x_##d = _mm_shuffle_epi8(t_##a, rot16); \
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: ...
encrypt.c: In file included from /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/smmintrin.h:32,
encrypt.c: from encrypt.c:54:
encrypt.c: c176.h: In function 'chacha_noxor176':
encrypt.c: /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
encrypt.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
encrypt.c: ^~~~~~~~~~~~~~~~
encrypt.c: In file included from encrypt.c:190:
encrypt.c: c176.h:14:86: note: called from here
encrypt.c: x_##a = _mm_add_epi32(x_##a, x_##b); t_##a = _mm_xor_si128(x_##d, x_##a); x_##d = _mm_shuffle_epi8(t_##a, rot8); \
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: c176.h:17:36: note: in expansion of macro 'VEC4_QUARTERROUND_SHUFFLE'
encrypt.c: #define VEC4_QUARTERROUND(a,b,c,d) VEC4_QUARTERROUND_SHUFFLE(a,b,c,d)
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: c176.h:106:7: note: in expansion of macro 'VEC4_QUARTERROUND'
encrypt.c: VEC4_QUARTERROUND( 3, 4, 9,14);
encrypt.c: ^~~~~~~~~~~~~~~~~
encrypt.c: In file included from /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/smmintrin.h:32,
encrypt.c: from encrypt.c:54:
encrypt.c: /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
encrypt.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
encrypt.c: ^~~~~~~~~~~~~~~~
encrypt.c: In file included from encrypt.c:190:
encrypt.c: c176.h:12:86: note: called from here
encrypt.c: x_##a = _mm_add_epi32(x_##a, x_##b); t_##a = _mm_xor_si128(x_##d, x_##a); x_##d = _mm_shuffle_epi8(t_##a, rot16); \
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: ...

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

Compiler output

Implementation: faster
Security model: unknown
Compiler: gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer
hs1.c: In file included from /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/immintrin.h:43,
hs1.c: from hs1.c:27:
hs1.c: hs1.c: In function 'xor32':
hs1.c: /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/avx2intrin.h:913:1: error: inlining failed in call to always_inline '_mm256_xor_si256': target specific option mismatch
hs1.c: _mm256_xor_si256 (__m256i __A, __m256i __B)
hs1.c: ^~~~~~~~~~~~~~~~
hs1.c: hs1.c:76:5: note: called from here
hs1.c: _mm256_storeu_si256((__m256i *)d,
hs1.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
hs1.c: _mm256_xor_si256(_mm256_loadu_si256((__m256i *)s),
hs1.c: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
hs1.c: _mm256_loadu_si256((__m256i *)d)));
hs1.c: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
hs1.c: In file included from /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/immintrin.h:43,
hs1.c: from hs1.c:27:
hs1.c: /home_nfs/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/avx2intrin.h:913:1: error: inlining failed in call to always_inline '_mm256_xor_si256': target specific option mismatch
hs1.c: _mm256_xor_si256 (__m256i __A, __m256i __B)
hs1.c: ^~~~~~~~~~~~~~~~
hs1.c: hs1.c:76:5: note: called from here
hs1.c: _mm256_storeu_si256((__m256i *)d,
hs1.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
hs1.c: _mm256_xor_si256(_mm256_loadu_si256((__m256i *)s),
hs1.c: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
hs1.c: _mm256_loadu_si256((__m256i *)d)));
hs1.c: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Number of similar (compiler,implementation) pairs: 16, namely:
CompilerImplementations
gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer faster
gcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer faster
gcc -m64 -march=core-avx-i -O -fomit-frame-pointer faster
gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer faster
gcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer faster
gcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer faster
gcc -m64 -march=corei7-avx -O -fomit-frame-pointer faster
gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer faster
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer faster
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer faster
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer faster
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer faster
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv faster
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv faster
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv faster
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv faster

Compiler output

Implementation: faster
Security model: unknown
Compiler: icc
hs1.c: hs1.c(1033): warning #266: function "malloc" declared implicitly
hs1.c: unsigned char *tmp = malloc(abytes);
hs1.c: ^
hs1.c:
hs1.c: hs1.c(1037): warning #266: function "free" declared implicitly
hs1.c: free(tmp);
hs1.c: ^
hs1.c:

Number of similar (compiler,implementation) pairs: 10, namely:
CompilerImplementations
icc faster
icc -no-vec faster
icc -xAVX -O2 -fomit-frame-pointer faster
icc -xAVX -O3 -fomit-frame-pointer faster
icc -xCORE-AVX-I -O2 -fomit-frame-pointer faster
icc -xCORE-AVX-I -O3 -fomit-frame-pointer faster
icc -xSSE4.1 -O2 -fomit-frame-pointer faster
icc -xSSE4.1 -O3 -fomit-frame-pointer faster
icc -xSSE4.2 -O2 -fomit-frame-pointer faster
icc -xSSE4.2 -O3 -fomit-frame-pointer faster