Implementation notes: amd64, sliver, crypto_aead/scream10v3

Computer: sliver
Architecture: amd64
CPU ID: GenuineIntel-00040651-bfebfbff
SUPERCOP version: 20160731
Operation: crypto_aead
Primitive: scream10v3
TimeImplementationCompilerBenchmark dateSUPERCOP version
417108sseclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016072520160718
1092438refclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016072520160718
1252902refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072520160718
1378578refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072520160718
1478676refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072520160718
2343750refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072520160718

Compiler output

Implementation: crypto_aead/scream10v3/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:105: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-d54dbb.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-a49fa2.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/scream10v3/ref
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
try.c: /tmp/try-anything-bb1cb9.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-537868.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/scream10v3/sse
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
scream.c: scream.c: In function 'LBox16P':
scream.c: scream.c:202: error: incompatible types in assignment
scream.c: scream.c:203: error: incompatible types in assignment
scream.c: scream.c:207: error: incompatible types in assignment
scream.c: scream.c:208: error: incompatible types in assignment
scream.c: scream.c:215: error: invalid operands to binary ^
scream.c: scream.c:216: error: invalid operands to binary ^
scream.c: scream.c:220: error: invalid operands to binary ^
scream.c: scream.c:221: error: invalid operands to binary ^
scream.c: scream.c:228: error: invalid operands to binary ^
scream.c: scream.c:229: error: invalid operands to binary ^
scream.c: scream.c:233: error: invalid operands to binary ^
scream.c: scream.c:234: error: invalid operands to binary ^
scream.c: scream.c:241: error: invalid operands to binary ^
scream.c: scream.c:242: error: invalid operands to binary ^
scream.c: scream.c:246: error: invalid operands to binary ^
scream.c: scream.c:247: error: invalid operands to binary ^
scream.c: scream.c: In function 'LBoxInv16P':
scream.c: scream.c:297: error: incompatible types in assignment
scream.c: scream.c:298: error: incompatible types in assignment
scream.c: scream.c:302: error: incompatible types in assignment
scream.c: scream.c:303: error: incompatible types in assignment
scream.c: scream.c:310: error: invalid operands to binary ^
scream.c: scream.c:311: error: invalid operands to binary ^
scream.c: scream.c:315: 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/scream10v3/ref
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
try.c: /tmp//ccfMRLVS.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//cchQtIkb.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/scream10v3/ref
Compiler: gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
try.c: /tmp//ccbk1gVS.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//ccbuL9Uj.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/scream10v3/ref
Compiler: gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv
try.c: /tmp//ccxXEshv.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//cceVsYBL.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/scream10v3/ref
Compiler: gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv
try.c: /tmp//cc7TE4UF.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//ccfgyIHT.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