Implementation notes: amd64, skylake, crypto_aead/morus1280128v1

Computer: skylake
Architecture: amd64
CPU ID: GenuineIntel-000506e3-bfebfbff
SUPERCOP version: 20161026
Operation: crypto_aead
Primitive: morus1280128v1
TimeImplementationCompilerBenchmark dateSUPERCOP version
4666avx2clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121620161026
4678avx2clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments2016121620161026
4686avx2clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
4726avx2clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2016121620161026
6066avx2gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2016121620161026
6072avx2gcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer2016121620161026
6074avx2gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016121620161026
6222avx2gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2016121620161026
6232avx2gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016121620161026
6236avx2gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer2016121620161026
6548avx2gcc -m64 -march=core-avx2 -O -fomit-frame-pointer2016121620161026
6548avx2gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016121620161026
6556avx2gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2016121620161026
6650avx2gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer2016121620161026
6662avx2gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016121620161026
6678avx2gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2016121620161026
6722sse2clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121620161026
6724sse2clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments2016121620161026
6744sse2clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2016121620161026
6744sse2clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121620161026
6746sse2clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments2016121620161026
6746sse2clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
7160sse2clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
7166sse2clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
7172sse2clang -O3 -fomit-frame-pointer -Qunused-arguments2016121620161026
7186sse2clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
8120sse2gcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer2016121620161026
8126sse2gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016121620161026
8128sse2gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2016121620161026
8174sse2gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2016121620161026
8186sse2gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer2016121620161026
8286sse2gcc -m64 -march=core-avx-i -O -fomit-frame-pointer2016121620161026
8304sse2gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016121620161026
8306sse2gcc -m64 -march=core-avx2 -O -fomit-frame-pointer2016121620161026
8306sse2gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2016121620161026
8308sse2gcc -m64 -march=corei7-avx -O -fomit-frame-pointer2016121620161026
8346sse2gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2016121620161026
8358sse2gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2016121620161026
8360sse2gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016121620161026
8364sse2gcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2016121620161026
8376sse2gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016121620161026
8378sse2gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer2016121620161026
8406sse2gcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2016121620161026
8412sse2gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2016121620161026
8416sse2gcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2016121620161026
8496sse2gcc -march=barcelona -O3 -fomit-frame-pointer2016121620161026
8506sse2gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2016121620161026
8506sse2gcc -m64 -march=nocona -O3 -fomit-frame-pointer2016121620161026
8508sse2gcc -m64 -march=barcelona -O3 -fomit-frame-pointer2016121620161026
8512sse2gcc -march=nocona -O3 -fomit-frame-pointer2016121620161026
8532sse2gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2016121620161026
8532sse2gcc -march=barcelona -O2 -fomit-frame-pointer2016121620161026
8550sse2gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2016121620161026
8550sse2gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2016121620161026
8550sse2gcc -m64 -march=barcelona -O2 -fomit-frame-pointer2016121620161026
8556sse2gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2016121620161026
8578sse2gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2016121620161026
8578sse2gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2016121620161026
8584sse2gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2016121620161026
8590sse2gcc -march=nocona -O2 -fomit-frame-pointer2016121620161026
8596sse2gcc -O3 -fomit-frame-pointer2016121620161026
8606sse2gcc -funroll-loops -march=k8 -O -fomit-frame-pointer2016121620161026
8608sse2gcc -fno-schedule-insns -O3 -fomit-frame-pointer2016121620161026
8608sse2gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2016121620161026
8612sse2gcc -m64 -march=nocona -O2 -fomit-frame-pointer2016121620161026
8614sse2gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2016121620161026
8622sse2gcc -march=k8 -O3 -fomit-frame-pointer2016121620161026
8626sse2gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2016121620161026
8634sse2gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2016121620161026
8640sse2gcc -m64 -march=core2 -O -fomit-frame-pointer2016121620161026
8642sse2gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2016121620161026
8644sse2gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2016121620161026
8644sse2gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2016121620161026
8648sse2gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2016121620161026
8650sse2gcc -m64 -march=barcelona -O -fomit-frame-pointer2016121620161026
8652sse2gcc -funroll-loops -march=nocona -O -fomit-frame-pointer2016121620161026
8656sse2gcc -O2 -fomit-frame-pointer2016121620161026
8658sse2gcc -m64 -O2 -fomit-frame-pointer2016121620161026
8658sse2gcc -march=barcelona -O -fomit-frame-pointer2016121620161026
8662sse2gcc -funroll-loops -O3 -fomit-frame-pointer2016121620161026
8664sse2gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2016121620161026
8666sse2gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2016121620161026
8668sse2gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2016121620161026
8676sse2gcc -O -fomit-frame-pointer2016121620161026
8678sse2gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2016121620161026
8690sse2gcc -fno-schedule-insns -O2 -fomit-frame-pointer2016121620161026
8692sse2gcc -fno-schedule-insns -O -fomit-frame-pointer2016121620161026
8696sse2gcc -m64 -march=k8 -O -fomit-frame-pointer2016121620161026
8700sse2gcc -funroll-loops -O -fomit-frame-pointer2016121620161026
8700sse2gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2016121620161026
8700sse2gcc -march=k8 -O -fomit-frame-pointer2016121620161026
8702sse2gcc -march=nocona -O -fomit-frame-pointer2016121620161026
8704sse2gcc -funroll-loops -O2 -fomit-frame-pointer2016121620161026
8710sse2gcc -funroll-loops -m64 -O -fomit-frame-pointer2016121620161026
8710sse2gcc -m64 -march=nocona -O -fomit-frame-pointer2016121620161026
8714sse2gcc -m64 -march=k8 -O2 -fomit-frame-pointer2016121620161026
8718sse2gcc -funroll-loops -m64 -O2 -fomit-frame-pointer2016121620161026
8740sse2gcc -m64 -march=corei7 -O -fomit-frame-pointer2016121620161026
8760sse2gcc -m64 -march=k8 -O3 -fomit-frame-pointer2016121620161026
8764sse2gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2016121620161026
8780sse2gcc -m64 -O3 -fomit-frame-pointer2016121620161026
8810sse2gcc -funroll-loops -m64 -O3 -fomit-frame-pointer2016121620161026
8860sse2gcc -m64 -O -fomit-frame-pointer2016121620161026
8916sse2gcc -march=k8 -O2 -fomit-frame-pointer2016121620161026
8978sse2gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2016121620161026
8980sse2gcc -m64 -march=corei7 -O3 -fomit-frame-pointer2016121620161026
8988sse2gcc -m64 -march=core2 -O3 -fomit-frame-pointer2016121620161026
8998sse2gcc -m64 -march=corei7 -O2 -fomit-frame-pointer2016121620161026
9032sse2gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2016121620161026
9036sse2gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2016121620161026
9058sse2gcc -m64 -march=core2 -O2 -fomit-frame-pointer2016121620161026
9154sse2gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2016121620161026
10510refgcc -funroll-loops -O3 -fomit-frame-pointer2016121620161026
10568refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2016121620161026
10580refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2016121620161026
10628refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2016121620161026
10684refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2016121620161026
10804refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2016121620161026
10830ref64gcc -funroll-loops -O3 -fomit-frame-pointer2016121620161026
10832refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2016121620161026
10836refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2016121620161026
10848refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2016121620161026
10850refgcc -funroll-loops -m64 -O -fomit-frame-pointer2016121620161026
10850refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2016121620161026
10858refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2016121620161026
10858refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2016121620161026
10866refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2016121620161026
10866refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2016121620161026
10880refgcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer2016121620161026
10906refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2016121620161026
10906ref64gcc -funroll-loops -m64 -O3 -fomit-frame-pointer2016121620161026
10906refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2016121620161026
10910refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2016121620161026
10918refgcc -funroll-loops -O2 -fomit-frame-pointer2016121620161026
10922refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2016121620161026
10932ref64gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2016121620161026
10938refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2016121620161026
10968refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2016121620161026
10968refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2016121620161026
10970refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016121620161026
10988refgcc -O3 -fomit-frame-pointer2016121620161026
10994ref64gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2016121620161026
11004refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2016121620161026
11006refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2016121620161026
11014ref64gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2016121620161026
11026refgcc -march=nocona -O3 -fomit-frame-pointer2016121620161026
11028refgcc -m64 -march=core-avx2 -O -fomit-frame-pointer2016121620161026
11054refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2016121620161026
11056refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2016121620161026
11078refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2016121620161026
11094ref64gcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer2016121620161026
11100ref64gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2016121620161026
11102refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2016121620161026
11102refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016121620161026
11104refgcc -m64 -O3 -fomit-frame-pointer2016121620161026
11110ref64gcc -m64 -O3 -fomit-frame-pointer2016121620161026
11114ref64gcc -fno-schedule-insns -O3 -fomit-frame-pointer2016121620161026
11114refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2016121620161026
11132ref64gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2016121620161026
11142refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016121620161026
11172ref64gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2016121620161026
11176refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2016121620161026
11180ref64gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2016121620161026
11190refgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2016121620161026
11194refgcc -funroll-loops -O -fomit-frame-pointer2016121620161026
11208ref64gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2016121620161026
11216refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2016121620161026
11216ref64gcc -m64 -march=nocona -O3 -fomit-frame-pointer2016121620161026
11220refgcc -march=barcelona -O3 -fomit-frame-pointer2016121620161026
11220ref64gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016121620161026
11224refgcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer2016121620161026
11224ref64gcc -march=nocona -O3 -fomit-frame-pointer2016121620161026
11240refgcc -m64 -march=core-avx-i -O -fomit-frame-pointer2016121620161026
11240refgcc -m64 -march=core2 -O -fomit-frame-pointer2016121620161026
11244refgcc -m64 -O -fomit-frame-pointer2016121620161026
11244refgcc -m64 -march=corei7 -O -fomit-frame-pointer2016121620161026
11246refgcc -m64 -march=corei7-avx -O -fomit-frame-pointer2016121620161026
11270refgcc -O -fomit-frame-pointer2016121620161026
11274refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2016121620161026
11276refgcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2016121620161026
11280refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2016121620161026
11280ref64gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2016121620161026
11280refgcc -march=nocona -O2 -fomit-frame-pointer2016121620161026
11284refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2016121620161026
11286refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2016121620161026
11288refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2016121620161026
11288refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2016121620161026
11290refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2016121620161026
11292refgcc -O2 -fomit-frame-pointer2016121620161026
11306refgcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2016121620161026
11312refgcc -fno-schedule-insns -O -fomit-frame-pointer2016121620161026
11316refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2016121620161026
11316refgcc -m64 -march=nocona -O -fomit-frame-pointer2016121620161026
11318refgcc -m64 -O2 -fomit-frame-pointer2016121620161026
11322refgcc -march=nocona -O -fomit-frame-pointer2016121620161026
11326refgcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2016121620161026
11332ref64gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2016121620161026
11336ref64gcc -O3 -fomit-frame-pointer2016121620161026
11344refgcc -march=k8 -O3 -fomit-frame-pointer2016121620161026
11360refgcc -m64 -march=k8 -O -fomit-frame-pointer2016121620161026
11362refgcc -m64 -march=barcelona -O -fomit-frame-pointer2016121620161026
11364refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2016121620161026
11364refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2016121620161026
11368refgcc -march=barcelona -O -fomit-frame-pointer2016121620161026
11406refgcc -march=k8 -O -fomit-frame-pointer2016121620161026
11410refgcc -march=k8 -O2 -fomit-frame-pointer2016121620161026
11418refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2016121620161026
11440ref64gcc -m64 -march=corei7 -O3 -fomit-frame-pointer2016121620161026
11444ref64gcc -march=k8 -O3 -fomit-frame-pointer2016121620161026
11458refgcc -march=barcelona -O2 -fomit-frame-pointer2016121620161026
11472refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2016121620161026
11476refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2016121620161026
11518ref64gcc -m64 -march=core2 -O3 -fomit-frame-pointer2016121620161026
11528ref64gcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2016121620161026
11574ref64gcc -march=barcelona -O3 -fomit-frame-pointer2016121620161026
11630ref64gcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2016121620161026
11640ref64gcc -m64 -march=k8 -O3 -fomit-frame-pointer2016121620161026
11652refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2016121620161026
11788refgcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2016121620161026
11798ref64gcc -m64 -march=barcelona -O3 -fomit-frame-pointer2016121620161026
12438sse2gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2016121620161026
12440sse2gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2016121620161026
12448sse2gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2016121620161026
12464sse2gcc -funroll-loops -Os -fomit-frame-pointer2016121620161026
12480sse2gcc -funroll-loops -m64 -Os -fomit-frame-pointer2016121620161026
12480sse2gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2016121620161026
12530sse2gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2016121620161026
12604sse2gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2016121620161026
12738sse2gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2016121620161026
12878sse2gcc -march=barcelona -Os -fomit-frame-pointer2016121620161026
12888sse2gcc -m64 -march=core2 -Os -fomit-frame-pointer2016121620161026
12892sse2gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2016121620161026
12894sse2gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2016121620161026
12898sse2gcc -m64 -march=corei7 -Os -fomit-frame-pointer2016121620161026
12918sse2gcc -m64 -march=barcelona -Os -fomit-frame-pointer2016121620161026
12920sse2gcc -m64 -march=k8 -Os -fomit-frame-pointer2016121620161026
12920sse2gcc -march=k8 -Os -fomit-frame-pointer2016121620161026
12942sse2gcc -Os -fomit-frame-pointer2016121620161026
12946sse2gcc -m64 -Os -fomit-frame-pointer2016121620161026
12952sse2gcc -fno-schedule-insns -Os -fomit-frame-pointer2016121620161026
13006sse2gcc -march=nocona -Os -fomit-frame-pointer2016121620161026
13012sse2gcc -m64 -march=nocona -Os -fomit-frame-pointer2016121620161026
16510ref64clang -O3 -fomit-frame-pointer -Qunused-arguments2016121620161026
16512ref64clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
16606ref64clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
16768refclang -O3 -fomit-frame-pointer -Qunused-arguments2016121620161026
16848refclang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
16856ref64clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
17024refclang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
17066refclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
17696ref64gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2016121620161026
17720ref64clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
17722ref64clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments2016121620161026
17730ref64gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2016121620161026
17734ref64gcc -funroll-loops -m64 -O -fomit-frame-pointer2016121620161026
17748ref64gcc -funroll-loops -march=k8 -O -fomit-frame-pointer2016121620161026
17752ref64gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2016121620161026
17752ref64gcc -m64 -march=nocona -O2 -fomit-frame-pointer2016121620161026
17756ref64gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2016121620161026
17760ref64gcc -march=k8 -O -fomit-frame-pointer2016121620161026
17768ref64gcc -m64 -march=corei7 -O -fomit-frame-pointer2016121620161026
17778ref64clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121620161026
17794ref64gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2016121620161026
17802ref64clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2016121620161026
17818ref64gcc -march=barcelona -O -fomit-frame-pointer2016121620161026
17826ref64gcc -m64 -march=core-avx-i -O -fomit-frame-pointer2016121620161026
17828ref64gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016121620161026
17832ref64gcc -fno-schedule-insns -O -fomit-frame-pointer2016121620161026
17838ref64gcc -march=nocona -O2 -fomit-frame-pointer2016121620161026
17842ref64gcc -m64 -march=barcelona -O -fomit-frame-pointer2016121620161026
17844ref64gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2016121620161026
17844ref64gcc -m64 -march=k8 -O -fomit-frame-pointer2016121620161026
17856ref64gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2016121620161026
17858refclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
17858ref64gcc -O -fomit-frame-pointer2016121620161026
17876ref64gcc -funroll-loops -O -fomit-frame-pointer2016121620161026
17876ref64gcc -m64 -march=core2 -O -fomit-frame-pointer2016121620161026
17886refclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121620161026
17890ref64gcc -funroll-loops -march=nocona -O -fomit-frame-pointer2016121620161026
17904ref64gcc -m64 -march=nocona -O -fomit-frame-pointer2016121620161026
17928ref64gcc -m64 -O -fomit-frame-pointer2016121620161026
17940ref64gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2016121620161026
17982refclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2016121620161026
17988ref64gcc -march=nocona -O -fomit-frame-pointer2016121620161026
18056ref64gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2016121620161026
18066ref64gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2016121620161026
18070ref64gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2016121620161026
18072ref64gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer2016121620161026
18086ref64gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2016121620161026
18120ref64gcc -m64 -march=core2 -O2 -fomit-frame-pointer2016121620161026
18138ref64gcc -m64 -march=core-avx2 -O -fomit-frame-pointer2016121620161026
18148refclang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments2016121620161026
18150ref64gcc -march=k8 -O2 -fomit-frame-pointer2016121620161026
18162ref64gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2016121620161026
18176ref64gcc -m64 -march=corei7 -O2 -fomit-frame-pointer2016121620161026
18180ref64gcc -funroll-loops -O2 -fomit-frame-pointer2016121620161026
18180ref64gcc -m64 -march=k8 -O2 -fomit-frame-pointer2016121620161026
18220ref64gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2016121620161026
18234ref64gcc -m64 -O2 -fomit-frame-pointer2016121620161026
18268ref64gcc -funroll-loops -m64 -O2 -fomit-frame-pointer2016121620161026
18278ref64gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2016121620161026
18278ref64gcc -march=barcelona -O2 -fomit-frame-pointer2016121620161026
18288ref64gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2016121620161026
18294ref64gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2016121620161026
18310ref64gcc -m64 -march=barcelona -O2 -fomit-frame-pointer2016121620161026
18316ref64gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2016121620161026
18342ref64gcc -O2 -fomit-frame-pointer2016121620161026
18396ref64gcc -m64 -march=corei7-avx -O -fomit-frame-pointer2016121620161026
18418ref64gcc -march=nocona -Os -fomit-frame-pointer2016121620161026
18492ref64gcc -m64 -march=nocona -Os -fomit-frame-pointer2016121620161026
18494ref64gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016121620161026
18532ref64gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2016121620161026
18546ref64gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2016121620161026
18634ref64gcc -fno-schedule-insns -O2 -fomit-frame-pointer2016121620161026
18696ref64gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2016121620161026
18698ref64gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2016121620161026
18706refgcc -march=barcelona -Os -fomit-frame-pointer2016121620161026
18722refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2016121620161026
18726refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2016121620161026
18736ref64gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016121620161026
18746refgcc -march=nocona -Os -fomit-frame-pointer2016121620161026
18750ref64gcc -Os -fomit-frame-pointer2016121620161026
18750refgcc -m64 -march=core-avx2 -Os -fomit-frame-pointer2016121620161026
18750ref64gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer2016121620161026
18756ref64gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2016121620161026
18756ref64gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2016121620161026
18764ref64gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2016121620161026
18764refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2016121620161026
18764ref64gcc -march=barcelona -Os -fomit-frame-pointer2016121620161026
18768ref64gcc -m64 -march=k8 -Os -fomit-frame-pointer2016121620161026
18784ref64gcc -funroll-loops -m64 -Os -fomit-frame-pointer2016121620161026
18788ref64gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2016121620161026
18792ref64gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2016121620161026
18800refgcc -m64 -march=nocona -Os -fomit-frame-pointer2016121620161026
18808refgcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2016121620161026
18810refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2016121620161026
18812ref64gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2016121620161026
18812ref64gcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2016121620161026
18818refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2016121620161026
18824ref64gcc -m64 -march=corei7 -Os -fomit-frame-pointer2016121620161026
18830ref64gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2016121620161026
18832refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016121620161026
18834refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2016121620161026
18836ref64gcc -fno-schedule-insns -Os -fomit-frame-pointer2016121620161026
18836ref64gcc -funroll-loops -Os -fomit-frame-pointer2016121620161026
18838ref64gcc -march=k8 -Os -fomit-frame-pointer2016121620161026
18848refgcc -m64 -Os -fomit-frame-pointer2016121620161026
18862ref64gcc -m64 -march=core2 -Os -fomit-frame-pointer2016121620161026
18866ref64gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2016121620161026
18868ref64gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2016121620161026
18880refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2016121620161026
18890refgcc -fno-schedule-insns -Os -fomit-frame-pointer2016121620161026
18900refgcc -march=k8 -Os -fomit-frame-pointer2016121620161026
18910ref64gcc -m64 -march=barcelona -Os -fomit-frame-pointer2016121620161026
18922refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2016121620161026
18928refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2016121620161026
18928ref64gcc -m64 -Os -fomit-frame-pointer2016121620161026
18982refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2016121620161026
18986refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2016121620161026
19010refgcc -Os -fomit-frame-pointer2016121620161026
19012refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2016121620161026
19032refgcc -m64 -march=k8 -Os -fomit-frame-pointer2016121620161026
19078refgcc -m64 -march=core2 -Os -fomit-frame-pointer2016121620161026
19084refgcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2016121620161026
19186refgcc -funroll-loops -Os -fomit-frame-pointer2016121620161026
19232refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2016121620161026
21654ref64clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121620161026
21796ref64clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments2016121620161026
22874refclang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments2016121620161026
22982refclang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121620161026
66616ref64gcc2016121620161026
66844ref64gcc -funroll-loops2016121620161026
66902ref64cc2016121620161026
67856refgcc -funroll-loops2016121620161026
68256refgcc2016121620161026
68562refcc2016121620161026

Compiler output

Implementation: crypto_aead/morus1280128v1/avx2
Compiler: cc
morus1280128v1avx2.c: morus1280128v1avx2.c: In function 'morus_stateupdate':
morus1280128v1avx2.c: morus1280128v1avx2.c:50:6: note: The ABI for passing parameters with 32-byte alignment has changed in GCC 4.6
morus1280128v1avx2.c: void morus_stateupdate(__m256i msgblk, __m256i *state)
morus1280128v1avx2.c: ^~~~~~~~~~~~~~~~~
morus1280128v1avx2.c: morus1280128v1avx2.c:52:11: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
morus1280128v1avx2.c: state[0] = XOR256(state[0], state[3]);
morus1280128v1avx2.c: ^
morus1280128v1avx2.c: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/immintrin.h:43:0,
morus1280128v1avx2.c: from morus1280128v1avx2.c:2:
morus1280128v1avx2.c: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/avx2intrin.h:574:1: error: inlining failed in call to always_inline '_mm256_or_si256': target specific option mismatch
morus1280128v1avx2.c: _mm256_or_si256 (__m256i __A, __m256i __B)
morus1280128v1avx2.c: ^~~~~~~~~~~~~~~
morus1280128v1avx2.c: morus1280128v1avx2.c:25:27: note: called from here
morus1280128v1avx2.c: #define OR256(x,y) _mm256_or_si256((x),(y)) /*OR(x,y) = x | y, where x and y are two 256-bit word*/
morus1280128v1avx2.c: ^~~~~~~~~~~~~~~~~~~~~~~~
morus1280128v1avx2.c: morus1280128v1avx2.c:36:27: note: in expansion of macro 'OR256'
morus1280128v1avx2.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*/
morus1280128v1avx2.c: ^~~~~
morus1280128v1avx2.c: morus1280128v1avx2.c:78:13: note: in expansion of macro 'ROTL256'
morus1280128v1avx2.c: state[4] = ROTL256(state[4], n5);
morus1280128v1avx2.c: ^~~~~~~
morus1280128v1avx2.c: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/immintrin.h:43:0,
morus1280128v1avx2.c: from morus1280128v1avx2.c:2:
morus1280128v1avx2.c: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/avx2intrin.h:696:1: error: inlining failed in call to always_inline '_mm256_slli_epi64': target specific option mismatch
morus1280128v1avx2.c: _mm256_slli_epi64 (__m256i __A, int __B)
morus1280128v1avx2.c: ...

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

Compiler output

Implementation: crypto_aead/morus1280128v1/sse2
Compiler: cc
try.c: crypto_aead_morus1280128v1.a(morus1280128v1sse2.o): In function `morus_initialization':
try.c: morus1280128v1sse2.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus1280128v1.a(morus1280128v1sse2.o): In function `morus_initialization_key_256':
try.c: morus1280128v1sse2.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus1280128v1.a(morus1280128v1sse2.o): In function `morus_tag_generation':
try.c: morus1280128v1sse2.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus1280128v1.a(morus1280128v1sse2.o): In function `morus_tag_verification':
try.c: morus1280128v1sse2.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus1280128v1.a(morus1280128v1sse2.o): In function `morus_enc_aut_partialblock':
try.c: morus1280128v1sse2.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus1280128v1.a(morus1280128v1sse2.o):morus1280128v1sse2.c:(.text+0x...): more undefined references to `morus_stateupdate' follow
try.c: crypto_aead_morus1280128v1.a(morus1280128v1sse2.o): In function `crypto_aead_morus1280128v1_sse2_encrypt':
try.c: morus1280128v1sse2.c:(.text+0x...): undefined reference to `morus_enc_aut_step'
try.c: morus1280128v1sse2.c:(.text+0x...): undefined reference to `morus_enc_aut_step'
try.c: crypto_aead_morus1280128v1.a(morus1280128v1sse2.o): In function `crypto_aead_morus1280128v1_sse2_decrypt':
try.c: morus1280128v1sse2.c:(.text+0x...): undefined reference to `morus_enc_aut_step'
try.c: morus1280128v1sse2.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/morus1280128v1/avx2
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
morus1280128v1avx2.c: morus1280128v1avx2.c:52:13: error: always_inline function '_mm256_xor_si256' requires target feature 'avx2', but would be inlined into function 'morus_stateupdate' that is compiled without support for 'avx2'
morus1280128v1avx2.c: state[0] = XOR256(state[0], state[3]);
morus1280128v1avx2.c: ^
morus1280128v1avx2.c: morus1280128v1avx2.c:22:27: note: expanded from macro 'XOR256'
morus1280128v1avx2.c: #define XOR256(x,y) _mm256_xor_si256((x),(y)) /*XOR256(x,y) = x ^ y, where x and y are two 256-bit word*/
morus1280128v1avx2.c: ^
morus1280128v1avx2.c: morus1280128v1avx2.c:53:13: error: always_inline function '_mm256_xor_si256' requires target feature 'avx2', but would be inlined into function 'morus_stateupdate' that is compiled without support for 'avx2'
morus1280128v1avx2.c: state[0] = XOR256(state[0], AND256(state[1], state[2]));
morus1280128v1avx2.c: ^
morus1280128v1avx2.c: morus1280128v1avx2.c:22:27: note: expanded from macro 'XOR256'
morus1280128v1avx2.c: #define XOR256(x,y) _mm256_xor_si256((x),(y)) /*XOR256(x,y) = x ^ y, where x and y are two 256-bit word*/
morus1280128v1avx2.c: ^
morus1280128v1avx2.c: morus1280128v1avx2.c:53:30: error: always_inline function '_mm256_and_si256' requires target feature 'avx2', but would be inlined into function 'morus_stateupdate' that is compiled without support for 'avx2'
morus1280128v1avx2.c: state[0] = XOR256(state[0], AND256(state[1], state[2]));
morus1280128v1avx2.c: ^
morus1280128v1avx2.c: morus1280128v1avx2.c:23:27: note: expanded from macro 'AND256'
morus1280128v1avx2.c: #define AND256(x,y) _mm256_and_si256((x),(y)) /*AND(x,y) = x & y, where x and y are two 256-bit word*/
morus1280128v1avx2.c: ^
morus1280128v1avx2.c: morus1280128v1avx2.c:54:13: error: always_inline function '_mm256_or_si256' requires target feature 'avx2', but would be inlined into function 'morus_stateupdate' that is compiled without support for 'avx2'
morus1280128v1avx2.c: state[0] = ROTL256(state[0], n1);
morus1280128v1avx2.c: ^
morus1280128v1avx2.c: morus1280128v1avx2.c:36:27: note: expanded from macro 'ROTL256'
morus1280128v1avx2.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*/
morus1280128v1avx2.c: ^
morus1280128v1avx2.c: morus1280128v1avx2.c:25:27: note: expanded from macro 'OR256'
morus1280128v1avx2.c: ...

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments avx2
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments avx2
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments avx2
clang -mcpu=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/morus1280128v1/avx2
Compiler: gcc -O2 -fomit-frame-pointer
morus1280128v1avx2.c: morus1280128v1avx2.c: In function 'morus_stateupdate':
morus1280128v1avx2.c: morus1280128v1avx2.c:50:6: note: The ABI for passing parameters with 32-byte alignment has changed in GCC 4.6
morus1280128v1avx2.c: void morus_stateupdate(__m256i msgblk, __m256i *state)
morus1280128v1avx2.c: ^~~~~~~~~~~~~~~~~
morus1280128v1avx2.c: morus1280128v1avx2.c:52:11: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
morus1280128v1avx2.c: state[0] = XOR256(state[0], state[3]);
morus1280128v1avx2.c: ^
morus1280128v1avx2.c: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/immintrin.h:43:0,
morus1280128v1avx2.c: from morus1280128v1avx2.c:2:
morus1280128v1avx2.c: morus1280128v1avx2.c: In function 'morus_enc_aut_step':
morus1280128v1avx2.c: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/avx2intrin.h:1068:1: error: inlining failed in call to always_inline '_mm256_permute4x64_epi64': target specific option mismatch
morus1280128v1avx2.c: _mm256_permute4x64_epi64 (__m256i __X, const int __M)
morus1280128v1avx2.c: ^~~~~~~~~~~~~~~~~~~~~~~~
morus1280128v1avx2.c: morus1280128v1avx2.c:38:27: note: called from here
morus1280128v1avx2.c: #define ROTL256_64(x) _mm256_permute4x64_epi64((x), _MM_SHUFFLE(2,1,0,3)) /*Rotate x by 64-bit positions to the left*/
morus1280128v1avx2.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
morus1280128v1avx2.c: morus1280128v1avx2.c:201:13: note: in expansion of macro 'ROTL256_64'
morus1280128v1avx2.c: state[2] = ROTL256_64(state[2]);
morus1280128v1avx2.c: ^~~~~~~~~~
morus1280128v1avx2.c: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/immintrin.h:43:0,
morus1280128v1avx2.c: from morus1280128v1avx2.c:2:
morus1280128v1avx2.c: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/avx2intrin.h:574:1: error: inlining failed in call to always_inline '_mm256_or_si256': target specific option mismatch
morus1280128v1avx2.c: _mm256_or_si256 (__m256i __A, __m256i __B)
morus1280128v1avx2.c: ^~~~~~~~~~~~~~~
morus1280128v1avx2.c: morus1280128v1avx2.c:25:27: note: called from here
morus1280128v1avx2.c: ...

Number of similar (compiler,implementation) pairs: 84, 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 -O3 -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 -O3 -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 -O3 -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=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=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/morus1280128v1/avx2
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
morus1280128v1avx2.c: morus1280128v1avx2.c: In function 'morus_stateupdate':
morus1280128v1avx2.c: morus1280128v1avx2.c:50:6: note: The ABI for passing parameters with 32-byte alignment has changed in GCC 4.6
morus1280128v1avx2.c: void morus_stateupdate(__m256i msgblk, __m256i *state)
morus1280128v1avx2.c: ^~~~~~~~~~~~~~~~~
morus1280128v1avx2.c: morus1280128v1avx2.c:52:11: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
morus1280128v1avx2.c: state[0] = XOR256(state[0], state[3]);
morus1280128v1avx2.c: ^
morus1280128v1avx2.c: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/immintrin.h:43:0,
morus1280128v1avx2.c: from morus1280128v1avx2.c:2:
morus1280128v1avx2.c: morus1280128v1avx2.c: In function 'morus_enc_aut_step':
morus1280128v1avx2.c: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/avx2intrin.h:1068:1: error: inlining failed in call to always_inline '_mm256_permute4x64_epi64': target specific option mismatch
morus1280128v1avx2.c: _mm256_permute4x64_epi64 (__m256i __X, const int __M)
morus1280128v1avx2.c: ^~~~~~~~~~~~~~~~~~~~~~~~
morus1280128v1avx2.c: morus1280128v1avx2.c:38:27: note: called from here
morus1280128v1avx2.c: #define ROTL256_64(x) _mm256_permute4x64_epi64((x), _MM_SHUFFLE(2,1,0,3)) /*Rotate x by 64-bit positions to the left*/
morus1280128v1avx2.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
morus1280128v1avx2.c: morus1280128v1avx2.c:201:13: note: in expansion of macro 'ROTL256_64'
morus1280128v1avx2.c: state[2] = ROTL256_64(state[2]);
morus1280128v1avx2.c: ^~~~~~~~~~
morus1280128v1avx2.c: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/immintrin.h:43:0,
morus1280128v1avx2.c: from morus1280128v1avx2.c:2:
morus1280128v1avx2.c: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/avx2intrin.h:574:1: error: inlining failed in call to always_inline '_mm256_or_si256': target specific option mismatch
morus1280128v1avx2.c: _mm256_or_si256 (__m256i __A, __m256i __B)
morus1280128v1avx2.c: ^~~~~~~~~~~~~~~
morus1280128v1avx2.c: morus1280128v1avx2.c:25:27: note: called from here
morus1280128v1avx2.c: ...
morus1280128v1avx2.c: morus1280128v1avx2.c: In function 'morus_stateupdate':
morus1280128v1avx2.c: morus1280128v1avx2.c:50:6: note: The ABI for passing parameters with 32-byte alignment has changed in GCC 4.6
morus1280128v1avx2.c: void morus_stateupdate(__m256i msgblk, __m256i *state)
morus1280128v1avx2.c: ^~~~~~~~~~~~~~~~~
morus1280128v1avx2.c: morus1280128v1avx2.c:52:11: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
morus1280128v1avx2.c: state[0] = XOR256(state[0], state[3]);
morus1280128v1avx2.c: ^
morus1280128v1avx2.c: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/immintrin.h:43:0,
morus1280128v1avx2.c: from morus1280128v1avx2.c:2:
morus1280128v1avx2.c: morus1280128v1avx2.c: In function 'morus_enc_aut_step':
morus1280128v1avx2.c: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/avx2intrin.h:1068:1: error: inlining failed in call to always_inline '_mm256_permute4x64_epi64': target specific option mismatch
morus1280128v1avx2.c: _mm256_permute4x64_epi64 (__m256i __X, const int __M)
morus1280128v1avx2.c: ^~~~~~~~~~~~~~~~~~~~~~~~
morus1280128v1avx2.c: morus1280128v1avx2.c:38:27: note: called from here
morus1280128v1avx2.c: #define ROTL256_64(x) _mm256_permute4x64_epi64((x), _MM_SHUFFLE(2,1,0,3)) /*Rotate x by 64-bit positions to the left*/
morus1280128v1avx2.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
morus1280128v1avx2.c: morus1280128v1avx2.c:201:13: note: in expansion of macro 'ROTL256_64'
morus1280128v1avx2.c: state[2] = ROTL256_64(state[2]);
morus1280128v1avx2.c: ^~~~~~~~~~
morus1280128v1avx2.c: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/immintrin.h:43:0,
morus1280128v1avx2.c: from morus1280128v1avx2.c:2:
morus1280128v1avx2.c: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/avx2intrin.h:574:1: error: inlining failed in call to always_inline '_mm256_or_si256': target specific option mismatch
morus1280128v1avx2.c: _mm256_or_si256 (__m256i __A, __m256i __B)
morus1280128v1avx2.c: ^~~~~~~~~~~~~~~
morus1280128v1avx2.c: morus1280128v1avx2.c:25:27: note: called from here
morus1280128v1avx2.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

Compiler output

Implementation: crypto_aead/morus1280128v1/avx2
Compiler: gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer
morus1280128v1avx2.c: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/immintrin.h:43:0,
morus1280128v1avx2.c: from morus1280128v1avx2.c:2:
morus1280128v1avx2.c: morus1280128v1avx2.c: In function 'morus_enc_aut_step':
morus1280128v1avx2.c: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/avx2intrin.h:1068:1: error: inlining failed in call to always_inline '_mm256_permute4x64_epi64': target specific option mismatch
morus1280128v1avx2.c: _mm256_permute4x64_epi64 (__m256i __X, const int __M)
morus1280128v1avx2.c: ^~~~~~~~~~~~~~~~~~~~~~~~
morus1280128v1avx2.c: morus1280128v1avx2.c:38:27: note: called from here
morus1280128v1avx2.c: #define ROTL256_64(x) _mm256_permute4x64_epi64((x), _MM_SHUFFLE(2,1,0,3)) /*Rotate x by 64-bit positions to the left*/
morus1280128v1avx2.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
morus1280128v1avx2.c: morus1280128v1avx2.c:201:13: note: in expansion of macro 'ROTL256_64'
morus1280128v1avx2.c: state[2] = ROTL256_64(state[2]);
morus1280128v1avx2.c: ^~~~~~~~~~
morus1280128v1avx2.c: In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/immintrin.h:43:0,
morus1280128v1avx2.c: from morus1280128v1avx2.c:2:
morus1280128v1avx2.c: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/include/avx2intrin.h:574:1: error: inlining failed in call to always_inline '_mm256_or_si256': target specific option mismatch
morus1280128v1avx2.c: _mm256_or_si256 (__m256i __A, __m256i __B)
morus1280128v1avx2.c: ^~~~~~~~~~~~~~~
morus1280128v1avx2.c: morus1280128v1avx2.c:25:27: note: called from here
morus1280128v1avx2.c: #define OR256(x,y) _mm256_or_si256((x),(y)) /*OR(x,y) = x | y, where x and y are two 256-bit word*/
morus1280128v1avx2.c: ^~~~~~~~~~~~~~~~~~~~~~~~
morus1280128v1avx2.c: morus1280128v1avx2.c:36:27: note: in expansion of macro 'OR256'
morus1280128v1avx2.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*/
morus1280128v1avx2.c: ^~~~~
morus1280128v1avx2.c: morus1280128v1avx2.c:200:13: note: in expansion of macro 'ROTL256'
morus1280128v1avx2.c: state[4] = ROTL256(state[4], n5);
morus1280128v1avx2.c: ...

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