Implementation notes: amd64, hydra1, crypto_aead/morus1280256v1

Computer: hydra1
Architecture: amd64
CPU ID: AuthenticAMD-00100fa0-178bfbff
SUPERCOP version: 20161220
Operation: crypto_aead
Primitive: morus1280256v1
TimeImplementationCompilerBenchmark dateSUPERCOP version
11902sse2clang -O3 -fomit-frame-pointer -Qunused-arguments2016102020161009
11902sse2clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016102020161009
11914sse2clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016102020161009
11915sse2clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016102020161009
12384sse2clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2016102020161009
12397sse2clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016102020161009
14845sse2gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2016102020161009
14853sse2gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2016102020161009
14947sse2gcc -m64 -march=nocona -O3 -fomit-frame-pointer2016102020161009
14979sse2gcc -march=nocona -O3 -fomit-frame-pointer2016102020161009
15047ref64gcc -funroll-loops -m64 -O3 -fomit-frame-pointer2016102020161009
15048refgcc -march=k8 -Os -fomit-frame-pointer2016102020161009
15064refgcc -fno-schedule-insns -Os -fomit-frame-pointer2016102020161009
15072ref64gcc -funroll-loops -O3 -fomit-frame-pointer2016102020161009
15075refgcc -march=barcelona -Os -fomit-frame-pointer2016102020161009
15076ref64gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2016102020161009
15090refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2016102020161009
15096refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2016102020161009
15096refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016102020161009
15101refgcc -m64 -march=k8 -Os -fomit-frame-pointer2016102020161009
15104refgcc -Os -fomit-frame-pointer2016102020161009
15111ref64gcc -march=k8 -O3 -fomit-frame-pointer2016102020161009
15114refgcc -m64 -Os -fomit-frame-pointer2016102020161009
15125refgcc -funroll-loops -Os -fomit-frame-pointer2016102020161009
15125refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2016102020161009
15131refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2016102020161009
15135refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2016102020161009
15140refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2016102020161009
15143ref64gcc -m64 -march=k8 -O3 -fomit-frame-pointer2016102020161009
15147refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2016102020161009
15149refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2016102020161009
15152refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2016102020161009
15155refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2016102020161009
15157refgcc -m64 -march=core2 -Os -fomit-frame-pointer2016102020161009
15162ref64gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2016102020161009
15166ref64gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2016102020161009
15178refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2016102020161009
15197refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2016102020161009
15197refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2016102020161009
15205refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2016102020161009
15205refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2016102020161009
15221ref64gcc -fno-schedule-insns -O3 -fomit-frame-pointer2016102020161009
15256ref64gcc -m64 -O3 -fomit-frame-pointer2016102020161009
15258ref64gcc -O3 -fomit-frame-pointer2016102020161009
15288ref64gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2016102020161009
15303ref64gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2016102020161009
15371refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2016102020161009
15378refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2016102020161009
15381refgcc -march=barcelona -O2 -fomit-frame-pointer2016102020161009
15384refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016102020161009
15387ref64gcc -m64 -march=nocona -O3 -fomit-frame-pointer2016102020161009
15389refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2016102020161009
15398refgcc -march=k8 -O2 -fomit-frame-pointer2016102020161009
15402sse2gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2016102020161009
15408ref64gcc -march=nocona -O3 -fomit-frame-pointer2016102020161009
15411sse2gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2016102020161009
15432refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2016102020161009
15442refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2016102020161009
15510sse2gcc -funroll-loops -O3 -fomit-frame-pointer2016102020161009
15510sse2gcc -funroll-loops -m64 -O3 -fomit-frame-pointer2016102020161009
15515sse2gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2016102020161009
15533refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2016102020161009
15536ref64gcc -march=barcelona -O3 -fomit-frame-pointer2016102020161009
15538ref64gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2016102020161009
15551ref64gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2016102020161009
15554ref64gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2016102020161009
15562ref64gcc -m64 -march=barcelona -O3 -fomit-frame-pointer2016102020161009
15563refgcc -funroll-loops -O2 -fomit-frame-pointer2016102020161009
15576ref64gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016102020161009
15587refgcc -march=nocona -Os -fomit-frame-pointer2016102020161009
15591refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2016102020161009
15611sse2gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2016102020161009
15632refgcc -m64 -march=nocona -Os -fomit-frame-pointer2016102020161009
15643sse2gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2016102020161009
15683sse2gcc -O3 -fomit-frame-pointer2016102020161009
15694sse2gcc -m64 -march=k8 -O3 -fomit-frame-pointer2016102020161009
15728sse2gcc -fno-schedule-insns -O3 -fomit-frame-pointer2016102020161009
15728sse2gcc -m64 -O3 -fomit-frame-pointer2016102020161009
15738sse2gcc -march=k8 -O3 -fomit-frame-pointer2016102020161009
15741refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2016102020161009
15760sse2gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016102020161009
15779sse2gcc -march=barcelona -O3 -fomit-frame-pointer2016102020161009
15780sse2gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2016102020161009
15792refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2016102020161009
15795sse2gcc -m64 -march=barcelona -O3 -fomit-frame-pointer2016102020161009
15802refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2016102020161009
15808refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2016102020161009
15845refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2016102020161009
15846refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2016102020161009
15917refgcc -funroll-loops -m64 -O -fomit-frame-pointer2016102020161009
15936refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2016102020161009
15939refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2016102020161009
15947refgcc -O2 -fomit-frame-pointer2016102020161009
15949refgcc -funroll-loops -O -fomit-frame-pointer2016102020161009
15949refgcc -m64 -O2 -fomit-frame-pointer2016102020161009
15960refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2016102020161009
15966refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2016102020161009
15981refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2016102020161009
16000refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2016102020161009
16061refgcc -m64 -march=barcelona -O -fomit-frame-pointer2016102020161009
16062refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2016102020161009
16075refgcc -march=barcelona -O -fomit-frame-pointer2016102020161009
16092refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2016102020161009
16117refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016102020161009
16146refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2016102020161009
16168refgcc -m64 -march=k8 -O -fomit-frame-pointer2016102020161009
16197refgcc -march=k8 -O -fomit-frame-pointer2016102020161009
16237refgcc -fno-schedule-insns -O -fomit-frame-pointer2016102020161009
16246refgcc -m64 -O -fomit-frame-pointer2016102020161009
16299refgcc -O -fomit-frame-pointer2016102020161009
16306refgcc -m64 -march=nocona -O -fomit-frame-pointer2016102020161009
16318refgcc -march=nocona -O -fomit-frame-pointer2016102020161009
16352refgcc -m64 -march=core2 -O -fomit-frame-pointer2016102020161009
16360refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2016102020161009
16368refgcc -m64 -march=corei7 -O -fomit-frame-pointer2016102020161009
16371refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2016102020161009
16477refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2016102020161009
16533refgcc -march=nocona -O2 -fomit-frame-pointer2016102020161009
17311sse2gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2016102020161009
17317sse2gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016102020161009
17355sse2gcc -m64 -march=barcelona -O -fomit-frame-pointer2016102020161009
17360sse2gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2016102020161009
17377sse2gcc -march=barcelona -O -fomit-frame-pointer2016102020161009
17420refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2016102020161009
17427refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2016102020161009
17427sse2gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2016102020161009
17432sse2gcc -m64 -march=nocona -O2 -fomit-frame-pointer2016102020161009
17437sse2gcc -march=nocona -O2 -fomit-frame-pointer2016102020161009
17451sse2gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2016102020161009
17451sse2gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2016102020161009
17470sse2gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2016102020161009
17472refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2016102020161009
17472sse2gcc -m64 -march=core2 -O -fomit-frame-pointer2016102020161009
17479sse2gcc -funroll-loops -march=k8 -O -fomit-frame-pointer2016102020161009
17512refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2016102020161009
17515sse2gcc -m64 -march=corei7 -O -fomit-frame-pointer2016102020161009
17536sse2gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2016102020161009
17553refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2016102020161009
17560refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2016102020161009
17560sse2gcc -funroll-loops -march=nocona -O -fomit-frame-pointer2016102020161009
17565refgcc -funroll-loops -O3 -fomit-frame-pointer2016102020161009
17567sse2gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2016102020161009
17578sse2gcc -funroll-loops -m64 -O -fomit-frame-pointer2016102020161009
17581sse2gcc -march=k8 -O -fomit-frame-pointer2016102020161009
17587refgcc -march=k8 -O3 -fomit-frame-pointer2016102020161009
17589sse2gcc -funroll-loops -O -fomit-frame-pointer2016102020161009
17589sse2gcc -m64 -march=nocona -O -fomit-frame-pointer2016102020161009
17594sse2gcc -march=nocona -O -fomit-frame-pointer2016102020161009
17600sse2gcc -m64 -march=k8 -O -fomit-frame-pointer2016102020161009
17608refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2016102020161009
17617sse2gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2016102020161009
17624sse2gcc -fno-schedule-insns -O -fomit-frame-pointer2016102020161009
17624sse2gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2016102020161009
17640sse2gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2016102020161009
17643sse2gcc -m64 -O -fomit-frame-pointer2016102020161009
17661sse2gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2016102020161009
17703sse2gcc -funroll-loops -m64 -O2 -fomit-frame-pointer2016102020161009
17714sse2gcc -O -fomit-frame-pointer2016102020161009
17722sse2gcc -funroll-loops -O2 -fomit-frame-pointer2016102020161009
17746sse2gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2016102020161009
17781refgcc -m64 -O3 -fomit-frame-pointer2016102020161009
17791refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2016102020161009
17802refgcc -O3 -fomit-frame-pointer2016102020161009
17803refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2016102020161009
17811refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2016102020161009
17847refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016102020161009
17853refgcc -march=barcelona -O3 -fomit-frame-pointer2016102020161009
17966refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2016102020161009
17971refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2016102020161009
18221sse2gcc -m64 -march=core2 -O2 -fomit-frame-pointer2016102020161009
18245sse2gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2016102020161009
18259sse2gcc -O2 -fomit-frame-pointer2016102020161009
18264sse2gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2016102020161009
18312sse2gcc -march=k8 -O2 -fomit-frame-pointer2016102020161009
18344sse2gcc -fno-schedule-insns -O2 -fomit-frame-pointer2016102020161009
18349sse2gcc -m64 -O2 -fomit-frame-pointer2016102020161009
18357sse2gcc -m64 -march=corei7 -O2 -fomit-frame-pointer2016102020161009
18363sse2gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2016102020161009
18363refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2016102020161009
18384sse2gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2016102020161009
18384sse2gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2016102020161009
18398refgcc -march=nocona -O3 -fomit-frame-pointer2016102020161009
18454sse2gcc -march=nocona -Os -fomit-frame-pointer2016102020161009
18485sse2gcc -m64 -march=k8 -O2 -fomit-frame-pointer2016102020161009
18495sse2gcc -funroll-loops -Os -fomit-frame-pointer2016102020161009
18496sse2gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2016102020161009
18506sse2gcc -m64 -march=nocona -Os -fomit-frame-pointer2016102020161009
18533sse2gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2016102020161009
18581sse2gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2016102020161009
18584sse2gcc -funroll-loops -m64 -Os -fomit-frame-pointer2016102020161009
18603sse2gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2016102020161009
18621sse2gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2016102020161009
18808sse2gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2016102020161009
18856sse2gcc -march=barcelona -O2 -fomit-frame-pointer2016102020161009
18859sse2gcc -m64 -march=barcelona -O2 -fomit-frame-pointer2016102020161009
18860sse2gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2016102020161009
18864sse2gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016102020161009
18963sse2gcc -m64 -march=core2 -Os -fomit-frame-pointer2016102020161009
18963sse2gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2016102020161009
18997sse2gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2016102020161009
19006sse2gcc -march=k8 -Os -fomit-frame-pointer2016102020161009
19112sse2gcc -fno-schedule-insns -Os -fomit-frame-pointer2016102020161009
19129sse2gcc -m64 -march=k8 -Os -fomit-frame-pointer2016102020161009
19150sse2gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016102020161009
19216sse2gcc -Os -fomit-frame-pointer2016102020161009
19221sse2gcc -march=barcelona -Os -fomit-frame-pointer2016102020161009
19224sse2gcc -m64 -Os -fomit-frame-pointer2016102020161009
19292sse2gcc -m64 -march=corei7 -Os -fomit-frame-pointer2016102020161009
19299sse2gcc -m64 -march=barcelona -Os -fomit-frame-pointer2016102020161009
19354sse2gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2016102020161009
26060ref64gcc -funroll-loops -march=k8 -O -fomit-frame-pointer2016102020161009
26149ref64gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2016102020161009
26173ref64gcc -funroll-loops -O -fomit-frame-pointer2016102020161009
26192ref64gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2016102020161009
26197ref64gcc -m64 -march=corei7 -O2 -fomit-frame-pointer2016102020161009
26203ref64gcc -funroll-loops -O2 -fomit-frame-pointer2016102020161009
26205ref64gcc -m64 -march=k8 -O2 -fomit-frame-pointer2016102020161009
26217ref64gcc -funroll-loops -m64 -O2 -fomit-frame-pointer2016102020161009
26231ref64gcc -funroll-loops -march=nocona -O -fomit-frame-pointer2016102020161009
26234ref64gcc -march=k8 -O2 -fomit-frame-pointer2016102020161009
26237ref64gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2016102020161009
26237ref64gcc -m64 -O2 -fomit-frame-pointer2016102020161009
26240ref64gcc -O2 -fomit-frame-pointer2016102020161009
26240ref64gcc -funroll-loops -m64 -O -fomit-frame-pointer2016102020161009
26240ref64gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2016102020161009
26242ref64gcc -fno-schedule-insns -O2 -fomit-frame-pointer2016102020161009
26243ref64gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2016102020161009
26245ref64gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2016102020161009
26246ref64gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2016102020161009
26254ref64gcc -march=k8 -O -fomit-frame-pointer2016102020161009
26264ref64gcc -m64 -march=nocona -O2 -fomit-frame-pointer2016102020161009
26270ref64gcc -march=barcelona -O2 -fomit-frame-pointer2016102020161009
26291ref64gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2016102020161009
26304ref64gcc -m64 -march=k8 -O -fomit-frame-pointer2016102020161009
26317ref64gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2016102020161009
26326ref64gcc -march=nocona -O2 -fomit-frame-pointer2016102020161009
26351ref64gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2016102020161009
26357ref64gcc -fno-schedule-insns -O -fomit-frame-pointer2016102020161009
26384ref64gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2016102020161009
26389ref64gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2016102020161009
26405ref64gcc -m64 -march=barcelona -O2 -fomit-frame-pointer2016102020161009
26408ref64gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2016102020161009
26427ref64gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016102020161009
26429ref64gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2016102020161009
26434ref64gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2016102020161009
26438ref64gcc -m64 -march=corei7 -O -fomit-frame-pointer2016102020161009
26493ref64gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2016102020161009
26496ref64gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2016102020161009
26520ref64gcc -m64 -march=core2 -O2 -fomit-frame-pointer2016102020161009
26522ref64gcc -m64 -march=barcelona -O -fomit-frame-pointer2016102020161009
26523ref64gcc -O -fomit-frame-pointer2016102020161009
26525ref64gcc -m64 -march=nocona -O -fomit-frame-pointer2016102020161009
26536ref64gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016102020161009
26554ref64gcc -march=nocona -O -fomit-frame-pointer2016102020161009
26576ref64gcc -m64 -O -fomit-frame-pointer2016102020161009
26578ref64gcc -m64 -march=core2 -O -fomit-frame-pointer2016102020161009
26582ref64gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2016102020161009
26595ref64gcc -march=barcelona -O -fomit-frame-pointer2016102020161009
26701ref64gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2016102020161009
26704ref64gcc -m64 -march=nocona -Os -fomit-frame-pointer2016102020161009
26715ref64gcc -march=nocona -Os -fomit-frame-pointer2016102020161009
26786ref64gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016102020161009
26808ref64gcc -march=barcelona -Os -fomit-frame-pointer2016102020161009
26814ref64gcc -m64 -Os -fomit-frame-pointer2016102020161009
26838ref64gcc -m64 -march=barcelona -Os -fomit-frame-pointer2016102020161009
26869ref64gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2016102020161009
26882ref64gcc -fno-schedule-insns -Os -fomit-frame-pointer2016102020161009
26893ref64gcc -m64 -march=k8 -Os -fomit-frame-pointer2016102020161009
26893ref64gcc -march=k8 -Os -fomit-frame-pointer2016102020161009
26914ref64gcc -Os -fomit-frame-pointer2016102020161009
26914ref64gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2016102020161009
26917ref64gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2016102020161009
26917ref64gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2016102020161009
26918ref64gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2016102020161009
26944ref64gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2016102020161009
27000ref64gcc -funroll-loops -Os -fomit-frame-pointer2016102020161009
27059ref64gcc -m64 -march=corei7 -Os -fomit-frame-pointer2016102020161009
27157ref64gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2016102020161009
27170ref64gcc -funroll-loops -m64 -Os -fomit-frame-pointer2016102020161009
27176ref64gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2016102020161009
27208ref64gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2016102020161009
27229ref64gcc -m64 -march=core2 -Os -fomit-frame-pointer2016102020161009
31262ref64clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016102020161009
31608ref64clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2016102020161009
31725ref64clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016102020161009
31780ref64clang -O3 -fomit-frame-pointer -Qunused-arguments2016102020161009
31894ref64clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016102020161009
32500ref64clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016102020161009
158346ref64gcc -funroll-loops2016102020161009
158435ref64gcc2016102020161009
158463ref64cc2016102020161009

Test failure

Implementation: crypto_aead/morus1280256v1/ref
Compiler: gcc -m64 -march=core2 -O3 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
gcc -m64 -march=core2 -O3 -fomit-frame-pointer ref ref64 sse2

Compiler output

Implementation: crypto_aead/morus1280256v1/avx2
Compiler: cc
morus1280256v1avx2.c: morus1280256v1avx2.c: In function 'morus_stateupdate':
morus1280256v1avx2.c: morus1280256v1avx2.c:65:6: note: The ABI for passing parameters with 32-byte alignment has changed in GCC 4.6
morus1280256v1avx2.c: void morus_stateupdate(__m256i msgblk, __m256i *state)
morus1280256v1avx2.c: ^
morus1280256v1avx2.c: morus1280256v1avx2.c:67:11: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
morus1280256v1avx2.c: state[0] = XOR256(state[0], state[3]);
morus1280256v1avx2.c: ^
morus1280256v1avx2.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
morus1280256v1avx2.c: from morus1280256v1avx2.c:2:
morus1280256v1avx2.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:574:1: error: inlining failed in call to always_inline '_mm256_or_si256': target specific option mismatch
morus1280256v1avx2.c: _mm256_or_si256 (__m256i __A, __m256i __B)
morus1280256v1avx2.c: ^
morus1280256v1avx2.c: morus1280256v1avx2.c:25:27: error: called from here
morus1280256v1avx2.c: #define OR256(x,y) _mm256_or_si256((x),(y)) /*OR(x,y) = x | y, where x and y are two 256-bit word*/
morus1280256v1avx2.c: ^
morus1280256v1avx2.c: morus1280256v1avx2.c:36:27: note: in expansion of macro 'OR256'
morus1280256v1avx2.c: #define ROTL256(x,n) OR256( _mm256_slli_epi64((x), (n)), _mm256_srli_epi64((x),(64-n)) ) /*Rotate 4 64-bit unsigned integers in x to the left by n-bit positions*/
morus1280256v1avx2.c: ^
morus1280256v1avx2.c: morus1280256v1avx2.c:93:13: note: in expansion of macro 'ROTL256'
morus1280256v1avx2.c: state[4] = ROTL256(state[4], n5);
morus1280256v1avx2.c: ^
morus1280256v1avx2.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
morus1280256v1avx2.c: from morus1280256v1avx2.c:2:
morus1280256v1avx2.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:696:1: error: inlining failed in call to always_inline '_mm256_slli_epi64': target specific option mismatch
morus1280256v1avx2.c: _mm256_slli_epi64 (__m256i __A, int __B)
morus1280256v1avx2.c: ...

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
cc avx2
gcc avx2
gcc -funroll-loops avx2

Compiler output

Implementation: crypto_aead/morus1280256v1/ref
Compiler: cc
try.c: crypto_aead_morus1280256v1.a(encrypt.o): In function `morus_initialization':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus1280256v1.a(encrypt.o): In function `morus_tag_generation':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus1280256v1.a(encrypt.o): In function `morus_tag_verification':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus1280256v1.a(encrypt.o): In function `morus_enc_aut_partialblock':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus1280256v1.a(encrypt.o): In function `morus_dec_aut_partialblock':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus1280256v1.a(encrypt.o): In function `crypto_aead_morus1280256v1_ref_encrypt':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_enc_aut_step'
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_enc_aut_step'
try.c: crypto_aead_morus1280256v1.a(encrypt.o): In function `crypto_aead_morus1280256v1_ref_decrypt':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_enc_aut_step'
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_dec_aut_step'
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
cc ref
gcc ref
gcc -funroll-loops ref

Compiler output

Implementation: crypto_aead/morus1280256v1/sse2
Compiler: cc
try.c: crypto_aead_morus1280256v1.a(morus1280256v1sse2.o): In function `crypto_aead_morus1280256v1_sse2_encrypt':
try.c: morus1280256v1sse2.c:(.text+0x...): undefined reference to `morus_enc_aut_step'
try.c: morus1280256v1sse2.c:(.text+0x...): undefined reference to `morus_enc_aut_step'
try.c: crypto_aead_morus1280256v1.a(morus1280256v1sse2.o): In function `crypto_aead_morus1280256v1_sse2_decrypt':
try.c: morus1280256v1sse2.c:(.text+0x...): undefined reference to `morus_enc_aut_step'
try.c: morus1280256v1sse2.c:(.text+0x...): undefined reference to `morus_dec_aut_step'
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
cc sse2
gcc sse2
gcc -funroll-loops sse2

Compiler output

Implementation: crypto_aead/morus1280256v1/avx2
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
morus1280256v1avx2.c: morus1280256v1avx2.c:67:13: error: always_inline function '_mm256_xor_si256' requires target feature 'sse4.2', but would be inlined into function 'morus_stateupdate' that is compiled without support for 'sse4.2'
morus1280256v1avx2.c: state[0] = XOR256(state[0], state[3]);
morus1280256v1avx2.c: ^
morus1280256v1avx2.c: morus1280256v1avx2.c:22:27: note: expanded from macro 'XOR256'
morus1280256v1avx2.c: #define XOR256(x,y) _mm256_xor_si256((x),(y)) /*XOR256(x,y) = x ^ y, where x and y are two 256-bit word*/
morus1280256v1avx2.c: ^
morus1280256v1avx2.c: morus1280256v1avx2.c:68:13: error: always_inline function '_mm256_xor_si256' requires target feature 'sse4.2', but would be inlined into function 'morus_stateupdate' that is compiled without support for 'sse4.2'
morus1280256v1avx2.c: state[0] = XOR256(state[0], AND256(state[1], state[2]));
morus1280256v1avx2.c: ^
morus1280256v1avx2.c: morus1280256v1avx2.c:22:27: note: expanded from macro 'XOR256'
morus1280256v1avx2.c: #define XOR256(x,y) _mm256_xor_si256((x),(y)) /*XOR256(x,y) = x ^ y, where x and y are two 256-bit word*/
morus1280256v1avx2.c: ^
morus1280256v1avx2.c: morus1280256v1avx2.c:68:30: error: always_inline function '_mm256_and_si256' requires target feature 'sse4.2', but would be inlined into function 'morus_stateupdate' that is compiled without support for 'sse4.2'
morus1280256v1avx2.c: state[0] = XOR256(state[0], AND256(state[1], state[2]));
morus1280256v1avx2.c: ^
morus1280256v1avx2.c: morus1280256v1avx2.c:23:27: note: expanded from macro 'AND256'
morus1280256v1avx2.c: #define AND256(x,y) _mm256_and_si256((x),(y)) /*AND(x,y) = x & y, where x and y are two 256-bit word*/
morus1280256v1avx2.c: ^
morus1280256v1avx2.c: morus1280256v1avx2.c:69:13: error: always_inline function '_mm256_or_si256' requires target feature 'sse4.2', but would be inlined into function 'morus_stateupdate' that is compiled without support for 'sse4.2'
morus1280256v1avx2.c: state[0] = ROTL256(state[0], n1);
morus1280256v1avx2.c: ^
morus1280256v1avx2.c: morus1280256v1avx2.c:36:27: note: expanded from macro 'ROTL256'
morus1280256v1avx2.c: #define ROTL256(x,n) OR256( _mm256_slli_epi64((x), (n)), _mm256_srli_epi64((x),(64-n)) ) /*Rotate 4 64-bit unsigned integers in x to the left by n-bit positions*/
morus1280256v1avx2.c: ^
morus1280256v1avx2.c: morus1280256v1avx2.c:25:27: note: expanded from macro 'OR256'
morus1280256v1avx2.c: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments avx2
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments avx2
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments avx2
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments avx2

Compiler output

Implementation: crypto_aead/morus1280256v1/ref
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
try.c: crypto_aead_morus1280256v1.a(encrypt.o): In function `morus_initialization':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus1280256v1.a(encrypt.o):encrypt.c:(.text+0x...): more undefined references to `morus_stateupdate' follow
try.c: clang: error: linker command failed with exit code 1 (use -v to see invocation)

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments ref
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref

Compiler output

Implementation: crypto_aead/morus1280256v1/avx2
Compiler: clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments
morus1280256v1avx2.c: morus1280256v1avx2.c:67:13: error: always_inline function '_mm256_xor_si256' requires target feature 'xsave', but would be inlined into function 'morus_stateupdate' that is compiled without support for 'xsave'
morus1280256v1avx2.c: state[0] = XOR256(state[0], state[3]);
morus1280256v1avx2.c: ^
morus1280256v1avx2.c: morus1280256v1avx2.c:22:27: note: expanded from macro 'XOR256'
morus1280256v1avx2.c: #define XOR256(x,y) _mm256_xor_si256((x),(y)) /*XOR256(x,y) = x ^ y, where x and y are two 256-bit word*/
morus1280256v1avx2.c: ^
morus1280256v1avx2.c: morus1280256v1avx2.c:68:13: error: always_inline function '_mm256_xor_si256' requires target feature 'xsave', but would be inlined into function 'morus_stateupdate' that is compiled without support for 'xsave'
morus1280256v1avx2.c: state[0] = XOR256(state[0], AND256(state[1], state[2]));
morus1280256v1avx2.c: ^
morus1280256v1avx2.c: morus1280256v1avx2.c:22:27: note: expanded from macro 'XOR256'
morus1280256v1avx2.c: #define XOR256(x,y) _mm256_xor_si256((x),(y)) /*XOR256(x,y) = x ^ y, where x and y are two 256-bit word*/
morus1280256v1avx2.c: ^
morus1280256v1avx2.c: morus1280256v1avx2.c:68:30: error: always_inline function '_mm256_and_si256' requires target feature 'xsave', but would be inlined into function 'morus_stateupdate' that is compiled without support for 'xsave'
morus1280256v1avx2.c: state[0] = XOR256(state[0], AND256(state[1], state[2]));
morus1280256v1avx2.c: ^
morus1280256v1avx2.c: morus1280256v1avx2.c:23:27: note: expanded from macro 'AND256'
morus1280256v1avx2.c: #define AND256(x,y) _mm256_and_si256((x),(y)) /*AND(x,y) = x & y, where x and y are two 256-bit word*/
morus1280256v1avx2.c: ^
morus1280256v1avx2.c: morus1280256v1avx2.c:69:13: error: always_inline function '_mm256_or_si256' requires target feature 'xsave', but would be inlined into function 'morus_stateupdate' that is compiled without support for 'xsave'
morus1280256v1avx2.c: state[0] = ROTL256(state[0], n1);
morus1280256v1avx2.c: ^
morus1280256v1avx2.c: morus1280256v1avx2.c:36:27: note: expanded from macro 'ROTL256'
morus1280256v1avx2.c: #define ROTL256(x,n) OR256( _mm256_slli_epi64((x), (n)), _mm256_srli_epi64((x),(64-n)) ) /*Rotate 4 64-bit unsigned integers in x to the left by n-bit positions*/
morus1280256v1avx2.c: ^
morus1280256v1avx2.c: morus1280256v1avx2.c:25:27: note: expanded from macro 'OR256'
morus1280256v1avx2.c: ...

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments avx2
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments avx2

Compiler output

Implementation: crypto_aead/morus1280256v1/avx2
Compiler: gcc -O2 -fomit-frame-pointer
morus1280256v1avx2.c: morus1280256v1avx2.c: In function 'morus_stateupdate':
morus1280256v1avx2.c: morus1280256v1avx2.c:65:6: note: The ABI for passing parameters with 32-byte alignment has changed in GCC 4.6
morus1280256v1avx2.c: void morus_stateupdate(__m256i msgblk, __m256i *state)
morus1280256v1avx2.c: ^
morus1280256v1avx2.c: morus1280256v1avx2.c:67:11: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
morus1280256v1avx2.c: state[0] = XOR256(state[0], state[3]);
morus1280256v1avx2.c: ^
morus1280256v1avx2.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
morus1280256v1avx2.c: from morus1280256v1avx2.c:2:
morus1280256v1avx2.c: morus1280256v1avx2.c: In function 'morus_enc_aut_step':
morus1280256v1avx2.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:1068:1: error: inlining failed in call to always_inline '_mm256_permute4x64_epi64': target specific option mismatch
morus1280256v1avx2.c: _mm256_permute4x64_epi64 (__m256i __X, const int __M)
morus1280256v1avx2.c: ^
morus1280256v1avx2.c: morus1280256v1avx2.c:38:27: error: called from here
morus1280256v1avx2.c: #define ROTL256_64(x) _mm256_permute4x64_epi64((x), _MM_SHUFFLE(2,1,0,3)) /*Rotate x by 64-bit positions to the left*/
morus1280256v1avx2.c: ^
morus1280256v1avx2.c: morus1280256v1avx2.c:216:13: note: in expansion of macro 'ROTL256_64'
morus1280256v1avx2.c: state[2] = ROTL256_64(state[2]);
morus1280256v1avx2.c: ^
morus1280256v1avx2.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
morus1280256v1avx2.c: from morus1280256v1avx2.c:2:
morus1280256v1avx2.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:574:1: error: inlining failed in call to always_inline '_mm256_or_si256': target specific option mismatch
morus1280256v1avx2.c: _mm256_or_si256 (__m256i __A, __m256i __B)
morus1280256v1avx2.c: ^
morus1280256v1avx2.c: morus1280256v1avx2.c:25:27: error: called from here
morus1280256v1avx2.c: ...

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

Compiler output

Implementation: crypto_aead/morus1280256v1/avx2
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
morus1280256v1avx2.c: morus1280256v1avx2.c: In function 'morus_stateupdate':
morus1280256v1avx2.c: morus1280256v1avx2.c:65:6: note: The ABI for passing parameters with 32-byte alignment has changed in GCC 4.6
morus1280256v1avx2.c: void morus_stateupdate(__m256i msgblk, __m256i *state)
morus1280256v1avx2.c: ^
morus1280256v1avx2.c: morus1280256v1avx2.c:67:11: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
morus1280256v1avx2.c: state[0] = XOR256(state[0], state[3]);
morus1280256v1avx2.c: ^
morus1280256v1avx2.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
morus1280256v1avx2.c: from morus1280256v1avx2.c:2:
morus1280256v1avx2.c: morus1280256v1avx2.c: In function 'morus_enc_aut_step':
morus1280256v1avx2.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:1068:1: error: inlining failed in call to always_inline '_mm256_permute4x64_epi64': target specific option mismatch
morus1280256v1avx2.c: _mm256_permute4x64_epi64 (__m256i __X, const int __M)
morus1280256v1avx2.c: ^
morus1280256v1avx2.c: morus1280256v1avx2.c:38:27: error: called from here
morus1280256v1avx2.c: #define ROTL256_64(x) _mm256_permute4x64_epi64((x), _MM_SHUFFLE(2,1,0,3)) /*Rotate x by 64-bit positions to the left*/
morus1280256v1avx2.c: ^
morus1280256v1avx2.c: morus1280256v1avx2.c:216:13: note: in expansion of macro 'ROTL256_64'
morus1280256v1avx2.c: state[2] = ROTL256_64(state[2]);
morus1280256v1avx2.c: ^
morus1280256v1avx2.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
morus1280256v1avx2.c: from morus1280256v1avx2.c:2:
morus1280256v1avx2.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:574:1: error: inlining failed in call to always_inline '_mm256_or_si256': target specific option mismatch
morus1280256v1avx2.c: _mm256_or_si256 (__m256i __A, __m256i __B)
morus1280256v1avx2.c: ^
morus1280256v1avx2.c: morus1280256v1avx2.c:25:27: error: called from here
morus1280256v1avx2.c: ...
morus1280256v1avx2.c: morus1280256v1avx2.c: In function 'morus_stateupdate':
morus1280256v1avx2.c: morus1280256v1avx2.c:65:6: note: The ABI for passing parameters with 32-byte alignment has changed in GCC 4.6
morus1280256v1avx2.c: void morus_stateupdate(__m256i msgblk, __m256i *state)
morus1280256v1avx2.c: ^
morus1280256v1avx2.c: morus1280256v1avx2.c:67:11: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
morus1280256v1avx2.c: state[0] = XOR256(state[0], state[3]);
morus1280256v1avx2.c: ^
morus1280256v1avx2.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
morus1280256v1avx2.c: from morus1280256v1avx2.c:2:
morus1280256v1avx2.c: morus1280256v1avx2.c: In function 'morus_enc_aut_step':
morus1280256v1avx2.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:1068:1: error: inlining failed in call to always_inline '_mm256_permute4x64_epi64': target specific option mismatch
morus1280256v1avx2.c: _mm256_permute4x64_epi64 (__m256i __X, const int __M)
morus1280256v1avx2.c: ^
morus1280256v1avx2.c: morus1280256v1avx2.c:38:27: error: called from here
morus1280256v1avx2.c: #define ROTL256_64(x) _mm256_permute4x64_epi64((x), _MM_SHUFFLE(2,1,0,3)) /*Rotate x by 64-bit positions to the left*/
morus1280256v1avx2.c: ^
morus1280256v1avx2.c: morus1280256v1avx2.c:216:13: note: in expansion of macro 'ROTL256_64'
morus1280256v1avx2.c: state[2] = ROTL256_64(state[2]);
morus1280256v1avx2.c: ^
morus1280256v1avx2.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
morus1280256v1avx2.c: from morus1280256v1avx2.c:2:
morus1280256v1avx2.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:574:1: error: inlining failed in call to always_inline '_mm256_or_si256': target specific option mismatch
morus1280256v1avx2.c: _mm256_or_si256 (__m256i __A, __m256i __B)
morus1280256v1avx2.c: ^
morus1280256v1avx2.c: morus1280256v1avx2.c:25:27: error: called from here
morus1280256v1avx2.c: ...

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