Implementation notes: amd64, sliver, crypto_core/aes128decrypt

Computer: sliver
Architecture: amd64
CPU ID: GenuineIntel-00040651-bfebfbff
SUPERCOP version: 20160731
Operation: crypto_core
Primitive: aes128decrypt
TimeImplementationCompilerBenchmark dateSUPERCOP version
294dolbeau/aesenc-intclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016072420160718
846dolbeau/std-4rt-nodkclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016072820160724
930dolbeau/std-1rt-nodkclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016072820160724
1392dolbeau/std-2rt-nodkclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016072820160724
2472opensslclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016072420160718
2472opensslgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072420160718
2478opensslgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072420160718
2670opensslgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072420160718
2862opensslgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072420160718
1265232refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072420160718
1397298refclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016072420160718
2066274refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072420160718
2070912refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072420160718
2071278refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072420160718

Checksum failure

Implementation: crypto_core/aes128decrypt/dolbeau/std-1rt-nodk
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
89e0c9a32af40b98774785e8bda2c469f106d00017fb4f84862945944906f0c6
Number of similar (compiler,implementation) pairs: 12, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv dolbeau/std-1rt-nodk dolbeau/std-2rt-nodk dolbeau/std-4rt-nodk
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv dolbeau/std-1rt-nodk dolbeau/std-2rt-nodk dolbeau/std-4rt-nodk
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv dolbeau/std-1rt-nodk dolbeau/std-2rt-nodk dolbeau/std-4rt-nodk
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv dolbeau/std-1rt-nodk dolbeau/std-2rt-nodk dolbeau/std-4rt-nodk

Compiler output

Implementation: crypto_core/aes128decrypt/dolbeau/aesenc-int
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
core.c: core.c:12:34: warning: incompatible pointer types passing 'const unsigned int *' to parameter of type 'const __m128i *' [-Wincompatible-pointer-types]
core.c: __m128i key0 = _mm_loadu_si128((const unsigned int *)(key+0));
core.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
core.c: /usr/local/bin/../lib/clang/3.5/include/emmintrin.h:1069:32: note: passing argument to parameter '__p' here
core.c: _mm_loadu_si128(__m128i const *__p)
core.c: ^
core.c: 1 warning generated.
try.c: /tmp/try-anything-7bf31a.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-ffb295.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 dolbeau/aesenc-int

Compiler output

Implementation: crypto_core/aes128decrypt/ref
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
try.c: /tmp/try-anything-9320e7.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-70c56c.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_core/aes128decrypt/openssl
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
try.c: /tmp/try-anything-bc31f7.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-451502.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 openssl

Compiler output

Implementation: crypto_core/aes128decrypt/dolbeau/std-1rt-nodk
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
try.c: /tmp/try-anything-6a4f00.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-35940c.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 dolbeau/std-1rt-nodk

Compiler output

Implementation: crypto_core/aes128decrypt/dolbeau/std-4rt-nodk
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
try.c: /tmp/try-anything-cc7b66.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-b166ef.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 dolbeau/std-4rt-nodk

Compiler output

Implementation: crypto_core/aes128decrypt/dolbeau/std-2rt-nodk
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
try.c: /tmp/try-anything-f32b9a.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-af7dee.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 dolbeau/std-2rt-nodk

Compiler output

Implementation: crypto_core/aes128decrypt/dolbeau/aesenc-int
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
core.c: core.c:9:23: error: immintrin.h: No such file or directory
core.c: core.c:11: error: expected declaration specifiers or '...' before '__m128i'
core.c: core.c: In function 'aes128ni_setkey_encrypt':
core.c: core.c:12: error: '__m128i' undeclared (first use in this function)
core.c: core.c:12: error: (Each undeclared identifier is reported only once
core.c: core.c:12: error: for each function it appears in.)
core.c: core.c:12: error: expected ';' before 'key0'
core.c: core.c:13: error: expected ';' before 'temp0'
core.c: core.c:16: error: 'temp0' undeclared (first use in this function)
core.c: core.c:16: error: 'key0' undeclared (first use in this function)
core.c: core.c:29: error: 'temp1' undeclared (first use in this function)
core.c: core.c:29: error: 'rkeys' undeclared (first use in this function)
core.c: core.c:29: error: 'temp4' undeclared (first use in this function)
core.c: core.c: At top level:
core.c: core.c:42: error: expected declaration specifiers or '...' before '__m128i'
core.c: core.c: In function 'aes128ni_setkey_decrypt':
core.c: core.c:43: error: '__m128i' undeclared (first use in this function)
core.c: core.c:43: error: expected ';' before 'tkeys'
core.c: core.c:45: error: 'tkeys' undeclared (first use in this function)
core.c: core.c:45: error: too many arguments to function 'aes128ni_setkey_encrypt'
core.c: core.c:46: error: 'rkeys' undeclared (first use in this function)
core.c: core.c: At top level:
core.c: core.c:53: error: expected ';', ',' or ')' before 'rkeys'
core.c: core.c: In function 'crypto_core_aes128decrypt_dolbeau_aesenc_int':
core.c: core.c:72: error: '__m128i' undeclared (first use in this function)
core.c: ...

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

Compiler output

Implementation: crypto_core/aes128decrypt/openssl
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
try.c: /tmp//ccqwYtK8.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//ccOsHQWM.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 openssl

Compiler output

Implementation: crypto_core/aes128decrypt/ref
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
try.c: /tmp//cczrMGVG.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//ccKxgHwM.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_core/aes128decrypt/dolbeau/std-4rt-nodk
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
try.c: /tmp//cc13P0rD.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 dolbeau/std-4rt-nodk

Compiler output

Implementation: crypto_core/aes128decrypt/dolbeau/std-2rt-nodk
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
try.c: /tmp//ccXPTaCN.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 dolbeau/std-2rt-nodk

Compiler output

Implementation: crypto_core/aes128decrypt/dolbeau/std-1rt-nodk
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
try.c: /tmp//cczBNZbD.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 dolbeau/std-1rt-nodk

Compiler output

Implementation: crypto_core/aes128decrypt/ref
Compiler: gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
try.c: /tmp//cc0WzOm7.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//cczdzQGu.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_core/aes128decrypt/openssl
Compiler: gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
try.c: /tmp//ccimM3hu.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//ccQhkLhM.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 openssl

Compiler output

Implementation: crypto_core/aes128decrypt/dolbeau/std-1rt-nodk
Compiler: gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
try.c: /tmp//ccHyQo8f.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 dolbeau/std-1rt-nodk

Compiler output

Implementation: crypto_core/aes128decrypt/dolbeau/std-4rt-nodk
Compiler: gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
try.c: /tmp//ccR1gI8B.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 dolbeau/std-4rt-nodk

Compiler output

Implementation: crypto_core/aes128decrypt/dolbeau/std-2rt-nodk
Compiler: gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
try.c: /tmp//ccTqKlDE.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 dolbeau/std-2rt-nodk

Compiler output

Implementation: crypto_core/aes128decrypt/openssl
Compiler: gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv
try.c: /tmp//ccJpRgwP.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//ccFYvlmQ.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 openssl

Compiler output

Implementation: crypto_core/aes128decrypt/ref
Compiler: gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv
try.c: /tmp//cceDlyBR.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//ccZQ2X4b.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_core/aes128decrypt/dolbeau/std-1rt-nodk
Compiler: gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv
try.c: /tmp//cc0qSl6r.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 dolbeau/std-1rt-nodk

Compiler output

Implementation: crypto_core/aes128decrypt/dolbeau/std-2rt-nodk
Compiler: gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv
try.c: /tmp//ccLkYpSK.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 dolbeau/std-2rt-nodk

Compiler output

Implementation: crypto_core/aes128decrypt/dolbeau/std-4rt-nodk
Compiler: gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv
try.c: /tmp//cckpUUSK.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 dolbeau/std-4rt-nodk

Compiler output

Implementation: crypto_core/aes128decrypt/openssl
Compiler: gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv
try.c: /tmp//cc1dNSu0.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//ccltFp2J.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 openssl

Compiler output

Implementation: crypto_core/aes128decrypt/ref
Compiler: gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv
try.c: /tmp//ccCLQ2ul.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//ccKQn7GM.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

Compiler output

Implementation: crypto_core/aes128decrypt/dolbeau/std-4rt-nodk
Compiler: gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv
try.c: /tmp//ccM44Wyk.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 dolbeau/std-4rt-nodk

Compiler output

Implementation: crypto_core/aes128decrypt/dolbeau/std-1rt-nodk
Compiler: gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv
try.c: /tmp//ccURCTGz.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 dolbeau/std-1rt-nodk

Compiler output

Implementation: crypto_core/aes128decrypt/dolbeau/std-2rt-nodk
Compiler: gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv
try.c: /tmp//cco5YmkU.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 dolbeau/std-2rt-nodk