Implementation notes: amd64, sliver, crypto_aead/scream10v2

Computer: sliver
Architecture: amd64
CPU ID: GenuineIntel-00040651-bfebfbff
SUPERCOP version: 20160731
Operation: crypto_aead
Primitive: scream10v2
TimeImplementationCompilerBenchmark dateSUPERCOP version
409026sseclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016072520160718
681060refclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016072520160718
1279194refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072520160718
1552878refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072520160718
1672710refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072520160718
2802858refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072520160718

Compiler output

Implementation: crypto_aead/scream10v2/sse
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
scream.c: scream.c:39:16: warning: unknown attribute 'flatten' ignored [-Wunknown-attributes]
scream.c: __attribute__((flatten)) void encrypt_tweakey (v16qi *restrict X, v16qi *restrict T3) {
scream.c: ^
scream.c: scream.c:96:16: warning: unknown attribute 'flatten' ignored [-Wunknown-attributes]
scream.c: __attribute__((flatten)) void decrypt_tweakey (v16qi *restrict X, v16qi *restrict T3) {
scream.c: ^
scream.c: 2 warnings generated.
try.c: /tmp/try-anything-abba8b.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-058fb8.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 sse

Compiler output

Implementation: crypto_aead/scream10v2/ref
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
try.c: /tmp/try-anything-fea84a.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-7b38d1.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 ref

Compiler output

Implementation: crypto_aead/scream10v2/sse
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
scream.c: scream.c: In function 'LBox16P':
scream.c: scream.c:185: error: incompatible types in assignment
scream.c: scream.c:186: error: incompatible types in assignment
scream.c: scream.c:190: error: incompatible types in assignment
scream.c: scream.c:191: error: incompatible types in assignment
scream.c: scream.c:198: error: invalid operands to binary ^
scream.c: scream.c:199: error: invalid operands to binary ^
scream.c: scream.c:203: error: invalid operands to binary ^
scream.c: scream.c:204: error: invalid operands to binary ^
scream.c: scream.c:211: error: invalid operands to binary ^
scream.c: scream.c:212: error: invalid operands to binary ^
scream.c: scream.c:216: error: invalid operands to binary ^
scream.c: scream.c:217: error: invalid operands to binary ^
scream.c: scream.c:224: error: invalid operands to binary ^
scream.c: scream.c:225: error: invalid operands to binary ^
scream.c: scream.c:229: error: invalid operands to binary ^
scream.c: scream.c:230: error: invalid operands to binary ^
scream.c: scream.c: In function 'LBoxInv16P':
scream.c: scream.c:280: error: incompatible types in assignment
scream.c: scream.c:281: error: incompatible types in assignment
scream.c: scream.c:285: error: incompatible types in assignment
scream.c: scream.c:286: error: incompatible types in assignment
scream.c: scream.c:293: error: invalid operands to binary ^
scream.c: scream.c:294: error: invalid operands to binary ^
scream.c: scream.c:298: error: invalid operands to binary ^
scream.c: ...

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

Compiler output

Implementation: crypto_aead/scream10v2/ref
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
try.c: /tmp//ccpUuPJN.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//cc5RfgH6.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/scream10v2/ref
Compiler: gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
try.c: /tmp//ccPkHC9M.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//ccHynGzb.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/scream10v2/ref
Compiler: gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv
try.c: /tmp//ccyLoPr6.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//ccHqiiEs.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/scream10v2/ref
Compiler: gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv
try.c: /tmp//cchDbMTO.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//ccrJttlR.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