Implementation notes: amd64, sliver, crypto_aead/aegis256

Computer: sliver
Architecture: amd64
CPU ID: GenuineIntel-00040651-bfebfbff
SUPERCOP version: 20160731
Operation: crypto_aead
Primitive: aegis256
TimeImplementationCompilerBenchmark dateSUPERCOP version
6822aesniclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016072420160718
142908refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072420160718
144540refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072420160718
154962refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072420160718
169608refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072420160718

Compiler output

Implementation: crypto_aead/aegis256/aesni
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
try.c: /tmp/try-anything-58a5bf.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?
try.c: /tmp/try-anything-75a4be.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?

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

Compiler output

Implementation: crypto_aead/aegis256/ref
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
try.c: /tmp/try-anything-6ee8ee.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?
try.c: crypto_aead_aegis256.a(encrypt.o): In function `crypto_aead_aegis256_ref_encrypt':
try.c: encrypt.c:(.text+0x...): undefined reference to `aegis256_initialization'
try.c: crypto_aead_aegis256.a(encrypt.o): In function `crypto_aead_aegis256_ref_decrypt':
try.c: encrypt.c:(.text+0x...): undefined reference to `aegis256_initialization'
try.c: clang-3.5: error: linker command failed with exit code 1 (use -v to see invocation)

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

Compiler output

Implementation: crypto_aead/aegis256/aesni
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
encrypt.c: encrypt.c:4:23: error: immintrin.h: No such file or directory
encrypt.c: encrypt.c:5:23: error: wmmintrin.h: No such file or directory
encrypt.c: encrypt.c:14: error: expected declaration specifiers or '...' before '__m128i'
encrypt.c: encrypt.c: In function 'aegis256_initialization':
encrypt.c: encrypt.c:18: error: '__m128i' undeclared (first use in this function)
encrypt.c: encrypt.c:18: error: (Each undeclared identifier is reported only once
encrypt.c: encrypt.c:18: error: for each function it appears in.)
encrypt.c: encrypt.c:18: error: expected ';' before 'tmp'
encrypt.c: encrypt.c:19: error: expected ';' before 'keytmp1'
encrypt.c: encrypt.c:20: error: expected ';' before 'keytmp2'
encrypt.c: encrypt.c:21: error: expected ';' before 'ivtmp1'
encrypt.c: encrypt.c:22: error: expected ';' before 'ivtmp2'
encrypt.c: encrypt.c:25: error: 'state' undeclared (first use in this function)
encrypt.c: encrypt.c:25: error: 'ivtmp1' undeclared (first use in this function)
encrypt.c: encrypt.c:26: error: 'ivtmp2' undeclared (first use in this function)
encrypt.c: encrypt.c:29: error: 'keytmp1' undeclared (first use in this function)
encrypt.c: encrypt.c:30: error: 'keytmp2' undeclared (first use in this function)
encrypt.c: encrypt.c:41: error: 'tmp' undeclared (first use in this function)
encrypt.c: encrypt.c: At top level:
encrypt.c: encrypt.c:70: error: expected declaration specifiers or '...' before '__m128i'
encrypt.c: encrypt.c: In function 'aegis256_tag_generation':
encrypt.c: encrypt.c:74: error: '__m128i' undeclared (first use in this function)
encrypt.c: encrypt.c:74: error: expected ';' before 'tmp'
encrypt.c: encrypt.c:75: error: expected ';' before 'msgtmp'
encrypt.c: encrypt.c:81: error: 'msgtmp' undeclared (first use in this function)
encrypt.c: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv aesni
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv aesni
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv aesni
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv aesni

Compiler output

Implementation: crypto_aead/aegis256/ref
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
try.c: /tmp//ccSi7oPz.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?
try.c: /tmp//cclbPy9d.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv ref

Compiler output

Implementation: crypto_aead/aegis256/ref
Compiler: gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
try.c: /tmp//ccFxjgJG.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?
try.c: /tmp//ccUdX3Tl.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv ref

Compiler output

Implementation: crypto_aead/aegis256/ref
Compiler: gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv
try.c: /tmp//ccEhRW0B.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?
try.c: /tmp//ccdfJqwS.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv ref

Compiler output

Implementation: crypto_aead/aegis256/ref
Compiler: gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv
try.c: /tmp//ccFplCrH.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?
try.c: /tmp//ccV0gqsR.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv ref