Implementation notes: amd64, h5nano, crypto_aead/aegis128l

Computer: h5nano
Architecture: amd64
CPU ID: CentaurHauls-000006f8-afc9fbff
SUPERCOP version: 20141014
Operation: crypto_aead
Primitive: aegis128l
TimeImplementationCompilerBenchmark dateSUPERCOP version
96800refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2014070220140622
96800refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2014070220140622
96930refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2014070220140622
96930refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2014070220140622
96965refgcc -funroll-loops -O3 -fomit-frame-pointer2014070220140622
96965refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014070220140622
96965refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2014070220140622
97005refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2014070220140622
97015refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2014070220140622
97030refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2014070220140622
97155refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2014070220140622
97205refgcc -funroll-loops -O2 -fomit-frame-pointer2014070220140622
97255refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014070220140622
98575refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2014070220140622
100525refgcc -funroll-loops -Os -fomit-frame-pointer2014070220140622
100605refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2014070220140622
100770refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2014070220140622
100775refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2014070220140622
100795refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2014070220140622
101150refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2014070220140622
101285refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014070220140622
103170refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2014070220140622
103175refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014070220140622
103180refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2014070220140622
103190refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2014070220140622
103200refgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2014070220140622
103770refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2014070220140622
103770refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014070220140622
103775refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2014070220140622
103775refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2014070220140622
103790refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2014070220140622
104435refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2014070220140622
104435refgcc -march=nocona -O3 -fomit-frame-pointer2014070220140622
104585refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2014070220140622
104585refgcc -march=nocona -O2 -fomit-frame-pointer2014070220140622
105195refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2014070220140622
105195refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2014070220140622
105250refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2014070220140622
105250refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2014070220140622
105395refgcc -O3 -fomit-frame-pointer2014070220140622
105395refgcc -m64 -O3 -fomit-frame-pointer2014070220140622
105410refgcc -march=barcelona -O3 -fomit-frame-pointer2014070220140622
105415refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2014070220140622
105420refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2014070220140622
105420refgcc -march=k8 -O3 -fomit-frame-pointer2014070220140622
105425refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2014070220140622
105450refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2014070220140622
105455refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014070220140622
105460refgcc -funroll-loops -O -fomit-frame-pointer2014070220140622
105470refgcc -funroll-loops -m64 -O -fomit-frame-pointer2014070220140622
105525refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2014070220140622
105550refgcc -m64 -march=k8 -Os -fomit-frame-pointer2014070220140622
105565refgcc -march=k8 -Os -fomit-frame-pointer2014070220140622
105570refgcc -fno-schedule-insns -Os -fomit-frame-pointer2014070220140622
105580refgcc -m64 -Os -fomit-frame-pointer2014070220140622
105595refgcc -Os -fomit-frame-pointer2014070220140622
105620refgcc -fno-schedule-insns -O -fomit-frame-pointer2014070220140622
105625refgcc -march=nocona -O -fomit-frame-pointer2014070220140622
105640refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2014070220140622
105645refgcc -m64 -O -fomit-frame-pointer2014070220140622
105645refgcc -m64 -march=core2 -O -fomit-frame-pointer2014070220140622
105645refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2014070220140622
105645refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2014070220140622
105645refgcc -m64 -march=corei7 -O -fomit-frame-pointer2014070220140622
105690refgcc -m64 -march=nocona -O -fomit-frame-pointer2014070220140622
105720refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2014070220140622
105735refgcc -O -fomit-frame-pointer2014070220140622
105750refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2014070220140622
105755refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2014070220140622
105775refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2014070220140622
105825refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2014070220140622
105880refgcc -m64 -march=barcelona -O -fomit-frame-pointer2014070220140622
105880refgcc -m64 -march=k8 -O -fomit-frame-pointer2014070220140622
105905refgcc -march=k8 -O -fomit-frame-pointer2014070220140622
105920refgcc -march=barcelona -O -fomit-frame-pointer2014070220140622
106240refgcc -m64 -O2 -fomit-frame-pointer2014070220140622
106255refgcc -O2 -fomit-frame-pointer2014070220140622
106335refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2014070220140622
106335refgcc -march=barcelona -O2 -fomit-frame-pointer2014070220140622
106335refgcc -march=k8 -O2 -fomit-frame-pointer2014070220140622
106340refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2014070220140622
107470refgcc -march=barcelona -Os -fomit-frame-pointer2014070220140622
107535refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2014070220140622
108555refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2014070220140622
108580refgcc -m64 -march=core2 -Os -fomit-frame-pointer2014070220140622
108580refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2014070220140622
109255refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2014070220140622
109495refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2014070220140622
110005refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2014070220140622
110115refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2014070220140622
110120refgcc -m64 -march=nocona -Os -fomit-frame-pointer2014070220140622
110175refgcc -march=nocona -Os -fomit-frame-pointer2014070220140622
242340refgcc -funroll-loops2014070220140622
242345refgcc2014070220140622
268745refcc2014070220140622

Compiler output

Implementation: crypto_aead/aegis128l/aesnia
Compiler: cc
encrypt.c: In file included from encrypt.c:5:0:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/4.6/include/wmmintrin.h:34:3: error: #error "AES/PCLMUL instructions not enabled"
encrypt.c: encrypt.c: In function 'aegis128L_initialization':
encrypt.c: encrypt.c:34:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:35:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:36:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:37:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:38:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:39:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:40:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:41:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c: In function 'aegis128L_tag_generation':
encrypt.c: encrypt.c:71:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:72:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:73:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:74:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:75:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:76:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:77:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:78:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c: In function 'aegis128L_enc_aut_step':
encrypt.c: encrypt.c:118:18: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:119:18: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:120:18: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:121:18: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: ...

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

Compiler output

Implementation: crypto_aead/aegis128l/aesnia
Compiler: clang -O3 -fomit-frame-pointer
encrypt.c: In file included from encrypt.c:5:
encrypt.c: /usr/include/clang/3.0/include/wmmintrin.h:28:3: error: #error "AES instructions not enabled"
encrypt.c: # error "AES instructions not enabled"
encrypt.c: ^
encrypt.c: encrypt.c:34:25: warning: implicit declaration of function '_mm_aesenc_si128' is invalid in C99 [-Wimplicit-function-declaration]
encrypt.c: state[7] = _mm_aesenc_si128(state[6],state[7]);
encrypt.c: ^
encrypt.c: encrypt.c:34:23: error: assigning to '__m128i' from incompatible type 'int';
encrypt.c: state[7] = _mm_aesenc_si128(state[6],state[7]);
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:35:23: error: assigning to '__m128i' from incompatible type 'int';
encrypt.c: state[6] = _mm_aesenc_si128(state[5],state[6]);
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:36:23: error: assigning to '__m128i' from incompatible type 'int';
encrypt.c: state[5] = _mm_aesenc_si128(state[4],state[5]);
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:37:23: error: assigning to '__m128i' from incompatible type 'int';
encrypt.c: state[4] = _mm_aesenc_si128(state[3],state[4]);
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:38:23: error: assigning to '__m128i' from incompatible type 'int';
encrypt.c: state[3] = _mm_aesenc_si128(state[2],state[3]);
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:39:23: error: assigning to '__m128i' from incompatible type 'int';
encrypt.c: state[2] = _mm_aesenc_si128(state[1],state[2]);
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: ...

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer aesnia aesnib aesnic

Compiler output

Implementation: crypto_aead/aegis128l/ref
Compiler: clang -O3 -fomit-frame-pointer
try.c: try-anything.c:110:19: warning: if statement has empty body [-Wempty-body]
try.c: ;
try.c: ^
try.c: 1 warning generated.
try.c: crypto_aead_aegis128l.a(ecrypt.o): In function `crypto_aead_aegis128l_ref_encrypt':
try.c: ecrypt.c:(.text+0x...): undefined reference to `aegis128L_enc_aut_step'
try.c: ecrypt.c:(.text+0x...): undefined reference to `aegis128L_enc_aut_step'
try.c: ecrypt.c:(.text+0x...): undefined reference to `aegis128L_enc_aut_step'
try.c: ecrypt.c:(.text+0x...): undefined reference to `aegis128L_enc_aut_step'
try.c: crypto_aead_aegis128l.a(ecrypt.o): In function `crypto_aead_aegis128l_ref_decrypt':
try.c: ecrypt.c:(.text+0x...): undefined reference to `aegis128L_enc_aut_step'
try.c: crypto_aead_aegis128l.a(ecrypt.o):ecrypt.c:(.text+0x...): more undefined references to `aegis128L_enc_aut_step' follow
try.c: crypto_aead_aegis128l.a(ecrypt.o): In function `crypto_aead_aegis128l_ref_decrypt':
try.c: ecrypt.c:(.text+0x...): undefined reference to `aegis128L_dec_aut_step'
try.c: ecrypt.c:(.text+0x...): undefined reference to `aegis128L_dec_aut_step'
try.c: clang: error: linker command failed with exit code 1 (use -v to see invocation)

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer ref

Compiler output

Implementation: crypto_aead/aegis128l/ref
Compiler: clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer
aes.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
aes.c: clang: warning: argument unused during compilation: '-mavx2'
aes.c: clang: warning: argument unused during compilation: '-mpclmul'
ecrypt.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
ecrypt.c: clang: warning: argument unused during compilation: '-mavx2'
ecrypt.c: clang: warning: argument unused during compilation: '-mpclmul'
try.c: try-anything.c:110:19: warning: if statement has empty body [-Wempty-body]
try.c: ;
try.c: ^
try.c: 1 warning generated.
try.c: crypto_aead_aegis128l.a(ecrypt.o): In function `crypto_aead_aegis128l_ref_encrypt':
try.c: ecrypt.c:(.text+0x...): undefined reference to `aegis128L_enc_aut_step'
try.c: ecrypt.c:(.text+0x...): undefined reference to `aegis128L_enc_aut_step'
try.c: ecrypt.c:(.text+0x...): undefined reference to `aegis128L_enc_aut_step'
try.c: ecrypt.c:(.text+0x...): undefined reference to `aegis128L_enc_aut_step'
try.c: crypto_aead_aegis128l.a(ecrypt.o): In function `crypto_aead_aegis128l_ref_decrypt':
try.c: ecrypt.c:(.text+0x...): undefined reference to `aegis128L_enc_aut_step'
try.c: crypto_aead_aegis128l.a(ecrypt.o):ecrypt.c:(.text+0x...): more undefined references to `aegis128L_enc_aut_step' follow
try.c: crypto_aead_aegis128l.a(ecrypt.o): In function `crypto_aead_aegis128l_ref_decrypt':
try.c: ecrypt.c:(.text+0x...): undefined reference to `aegis128L_dec_aut_step'
try.c: ecrypt.c:(.text+0x...): undefined reference to `aegis128L_dec_aut_step'
try.c: clang: error: linker command failed with exit code 1 (use -v to see invocation)

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer ref

Compiler output

Implementation: crypto_aead/aegis128l/aesnia
Compiler: clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer
encrypt.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
encrypt.c: clang: warning: argument unused during compilation: '-mavx2'
encrypt.c: clang: warning: argument unused during compilation: '-mpclmul'
encrypt.c: In file included from encrypt.c:4:
encrypt.c: In file included from /usr/include/clang/3.0/include/immintrin.h:52:
encrypt.c: In file included from /usr/include/clang/3.0/include/wmmintrin.h:31:
encrypt.c: /usr/include/clang/3.0/include/smmintrin.h:28:2: error: #error "SSE4.1 instruction set not enabled"
encrypt.c: #error "SSE4.1 instruction set not enabled"
encrypt.c: ^
encrypt.c: 1 error generated.

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer aesnia aesnib aesnic

Compiler output

Implementation: crypto_aead/aegis128l/ref
Compiler: clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
aes.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
aes.c: clang: warning: argument unused during compilation: '-mavx2'
aes.c: clang: warning: argument unused during compilation: '-mpclmul'
aes.c: clang: warning: argument unused during compilation: '-fpolly'
aes.c: clang: warning: argument unused during compilation: '-fvectorize'
aes.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
aes.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
ecrypt.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
ecrypt.c: clang: warning: argument unused during compilation: '-mavx2'
ecrypt.c: clang: warning: argument unused during compilation: '-mpclmul'
ecrypt.c: clang: warning: argument unused during compilation: '-fpolly'
ecrypt.c: clang: warning: argument unused during compilation: '-fvectorize'
ecrypt.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
ecrypt.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
try.c: try-anything.c:110:19: warning: if statement has empty body [-Wempty-body]
try.c: ;
try.c: ^
try.c: 1 warning generated.
try.c: crypto_aead_aegis128l.a(ecrypt.o): In function `crypto_aead_aegis128l_ref_encrypt':
try.c: ecrypt.c:(.text+0x...): undefined reference to `aegis128L_enc_aut_step'
try.c: ecrypt.c:(.text+0x...): undefined reference to `aegis128L_enc_aut_step'
try.c: ecrypt.c:(.text+0x...): undefined reference to `aegis128L_enc_aut_step'
try.c: ecrypt.c:(.text+0x...): undefined reference to `aegis128L_enc_aut_step'
try.c: crypto_aead_aegis128l.a(ecrypt.o): In function `crypto_aead_aegis128l_ref_decrypt':
try.c: ecrypt.c:(.text+0x...): undefined reference to `aegis128L_enc_aut_step'
try.c: crypto_aead_aegis128l.a(ecrypt.o):ecrypt.c:(.text+0x...): more undefined references to `aegis128L_enc_aut_step' follow
try.c: crypto_aead_aegis128l.a(ecrypt.o): In function `crypto_aead_aegis128l_ref_decrypt':
try.c: ecrypt.c:(.text+0x...): undefined reference to `aegis128L_dec_aut_step'
try.c: ecrypt.c:(.text+0x...): undefined reference to `aegis128L_dec_aut_step'
try.c: clang: error: linker command failed with exit code 1 (use -v to see invocation)

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer ref

Compiler output

Implementation: crypto_aead/aegis128l/aesnia
Compiler: clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
encrypt.c: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
encrypt.c: clang: warning: argument unused during compilation: '-mavx2'
encrypt.c: clang: warning: argument unused during compilation: '-mpclmul'
encrypt.c: clang: warning: argument unused during compilation: '-fpolly'
encrypt.c: clang: warning: argument unused during compilation: '-fvectorize'
encrypt.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
encrypt.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
encrypt.c: In file included from encrypt.c:4:
encrypt.c: In file included from /usr/include/clang/3.0/include/immintrin.h:52:
encrypt.c: In file included from /usr/include/clang/3.0/include/wmmintrin.h:31:
encrypt.c: /usr/include/clang/3.0/include/smmintrin.h:28:2: error: #error "SSE4.1 instruction set not enabled"
encrypt.c: #error "SSE4.1 instruction set not enabled"
encrypt.c: ^
encrypt.c: 1 error generated.

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer aesnia aesnib aesnic

Compiler output

Implementation: crypto_aead/aegis128l/ref
Compiler: clang -O3 -fwrapv -mavx2 -fomit-frame-pointer
aes.c: clang: warning: argument unused during compilation: '-mavx2'
ecrypt.c: clang: warning: argument unused during compilation: '-mavx2'
try.c: try-anything.c:110:19: warning: if statement has empty body [-Wempty-body]
try.c: ;
try.c: ^
try.c: 1 warning generated.
try.c: crypto_aead_aegis128l.a(ecrypt.o): In function `crypto_aead_aegis128l_ref_encrypt':
try.c: ecrypt.c:(.text+0x...): undefined reference to `aegis128L_enc_aut_step'
try.c: ecrypt.c:(.text+0x...): undefined reference to `aegis128L_enc_aut_step'
try.c: ecrypt.c:(.text+0x...): undefined reference to `aegis128L_enc_aut_step'
try.c: ecrypt.c:(.text+0x...): undefined reference to `aegis128L_enc_aut_step'
try.c: crypto_aead_aegis128l.a(ecrypt.o): In function `crypto_aead_aegis128l_ref_decrypt':
try.c: ecrypt.c:(.text+0x...): undefined reference to `aegis128L_enc_aut_step'
try.c: crypto_aead_aegis128l.a(ecrypt.o):ecrypt.c:(.text+0x...): more undefined references to `aegis128L_enc_aut_step' follow
try.c: crypto_aead_aegis128l.a(ecrypt.o): In function `crypto_aead_aegis128l_ref_decrypt':
try.c: ecrypt.c:(.text+0x...): undefined reference to `aegis128L_dec_aut_step'
try.c: ecrypt.c:(.text+0x...): undefined reference to `aegis128L_dec_aut_step'
try.c: clang: error: linker command failed with exit code 1 (use -v to see invocation)

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer ref

Compiler output

Implementation: crypto_aead/aegis128l/aesnia
Compiler: clang -O3 -fwrapv -mavx2 -fomit-frame-pointer
encrypt.c: clang: warning: argument unused during compilation: '-mavx2'
encrypt.c: In file included from encrypt.c:5:
encrypt.c: /usr/include/clang/3.0/include/wmmintrin.h:28:3: error: #error "AES instructions not enabled"
encrypt.c: # error "AES instructions not enabled"
encrypt.c: ^
encrypt.c: encrypt.c:34:25: warning: implicit declaration of function '_mm_aesenc_si128' is invalid in C99 [-Wimplicit-function-declaration]
encrypt.c: state[7] = _mm_aesenc_si128(state[6],state[7]);
encrypt.c: ^
encrypt.c: encrypt.c:34:23: error: assigning to '__m128i' from incompatible type 'int';
encrypt.c: state[7] = _mm_aesenc_si128(state[6],state[7]);
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:35:23: error: assigning to '__m128i' from incompatible type 'int';
encrypt.c: state[6] = _mm_aesenc_si128(state[5],state[6]);
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:36:23: error: assigning to '__m128i' from incompatible type 'int';
encrypt.c: state[5] = _mm_aesenc_si128(state[4],state[5]);
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:37:23: error: assigning to '__m128i' from incompatible type 'int';
encrypt.c: state[4] = _mm_aesenc_si128(state[3],state[4]);
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:38:23: error: assigning to '__m128i' from incompatible type 'int';
encrypt.c: state[3] = _mm_aesenc_si128(state[2],state[3]);
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:39:23: error: assigning to '__m128i' from incompatible type 'int';
encrypt.c: state[2] = _mm_aesenc_si128(state[1],state[2]);
encrypt.c: ...

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer aesnia aesnib aesnic

Compiler output

Implementation: crypto_aead/aegis128l/ref
Compiler: clang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
aes.c: clang: warning: argument unused during compilation: '-mavx2'
aes.c: clang: warning: argument unused during compilation: '-fpolly'
aes.c: clang: warning: argument unused during compilation: '-fvectorize'
aes.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
aes.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
ecrypt.c: clang: warning: argument unused during compilation: '-mavx2'
ecrypt.c: clang: warning: argument unused during compilation: '-fpolly'
ecrypt.c: clang: warning: argument unused during compilation: '-fvectorize'
ecrypt.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
ecrypt.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
try.c: try-anything.c:110:19: warning: if statement has empty body [-Wempty-body]
try.c: ;
try.c: ^
try.c: 1 warning generated.
try.c: crypto_aead_aegis128l.a(ecrypt.o): In function `crypto_aead_aegis128l_ref_encrypt':
try.c: ecrypt.c:(.text+0x...): undefined reference to `aegis128L_enc_aut_step'
try.c: ecrypt.c:(.text+0x...): undefined reference to `aegis128L_enc_aut_step'
try.c: ecrypt.c:(.text+0x...): undefined reference to `aegis128L_enc_aut_step'
try.c: ecrypt.c:(.text+0x...): undefined reference to `aegis128L_enc_aut_step'
try.c: crypto_aead_aegis128l.a(ecrypt.o): In function `crypto_aead_aegis128l_ref_decrypt':
try.c: ecrypt.c:(.text+0x...): undefined reference to `aegis128L_enc_aut_step'
try.c: crypto_aead_aegis128l.a(ecrypt.o):ecrypt.c:(.text+0x...): more undefined references to `aegis128L_enc_aut_step' follow
try.c: crypto_aead_aegis128l.a(ecrypt.o): In function `crypto_aead_aegis128l_ref_decrypt':
try.c: ecrypt.c:(.text+0x...): undefined reference to `aegis128L_dec_aut_step'
try.c: ecrypt.c:(.text+0x...): undefined reference to `aegis128L_dec_aut_step'
try.c: clang: error: linker command failed with exit code 1 (use -v to see invocation)

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer ref

Compiler output

Implementation: crypto_aead/aegis128l/aesnia
Compiler: clang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
encrypt.c: clang: warning: argument unused during compilation: '-mavx2'
encrypt.c: clang: warning: argument unused during compilation: '-fpolly'
encrypt.c: clang: warning: argument unused during compilation: '-fvectorize'
encrypt.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
encrypt.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
encrypt.c: In file included from encrypt.c:5:
encrypt.c: /usr/include/clang/3.0/include/wmmintrin.h:28:3: error: #error "AES instructions not enabled"
encrypt.c: # error "AES instructions not enabled"
encrypt.c: ^
encrypt.c: encrypt.c:34:25: warning: implicit declaration of function '_mm_aesenc_si128' is invalid in C99 [-Wimplicit-function-declaration]
encrypt.c: state[7] = _mm_aesenc_si128(state[6],state[7]);
encrypt.c: ^
encrypt.c: encrypt.c:34:23: error: assigning to '__m128i' from incompatible type 'int';
encrypt.c: state[7] = _mm_aesenc_si128(state[6],state[7]);
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:35:23: error: assigning to '__m128i' from incompatible type 'int';
encrypt.c: state[6] = _mm_aesenc_si128(state[5],state[6]);
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:36:23: error: assigning to '__m128i' from incompatible type 'int';
encrypt.c: state[5] = _mm_aesenc_si128(state[4],state[5]);
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:37:23: error: assigning to '__m128i' from incompatible type 'int';
encrypt.c: state[4] = _mm_aesenc_si128(state[3],state[4]);
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:38:23: error: assigning to '__m128i' from incompatible type 'int';
encrypt.c: ...

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
clang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer aesnia aesnib aesnic

Compiler output

Implementation: crypto_aead/aegis128l/aesnia
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
encrypt.c: In file included from encrypt.c:5:0:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/4.6/include/wmmintrin.h:34:3: error: #error "AES/PCLMUL instructions not enabled"
encrypt.c: encrypt.c: In function 'aegis128L_initialization':
encrypt.c: encrypt.c:34:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:35:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:36:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:37:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:38:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:39:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:40:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:41:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c: In function 'aegis128L_tag_generation':
encrypt.c: encrypt.c:71:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:72:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:73:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:74:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:75:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:76:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:77:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:78:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c: In function 'aegis128L_enc_aut_step':
encrypt.c: encrypt.c:118:18: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:119:18: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:120:18: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:121:18: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: ...
encrypt.c: In file included from encrypt.c:5:0:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/4.6/include/wmmintrin.h:34:3: error: #error "AES/PCLMUL instructions not enabled"
encrypt.c: encrypt.c: In function 'aegis128L_initialization':
encrypt.c: encrypt.c:34:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:35:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:36:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:37:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:38:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:39:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:40:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:41:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c: In function 'aegis128L_tag_generation':
encrypt.c: encrypt.c:71:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:72:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:73:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:74:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:75:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:76:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:77:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:78:23: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c: In function 'aegis128L_enc_aut_step':
encrypt.c: encrypt.c:118:18: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:119:18: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:120:18: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: encrypt.c:121:18: error: incompatible types when assigning to type '__m128i' from type 'int'
encrypt.c: ...

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