Implementation notes: x86, leaf, crypto_aead/aes128otrpv3

Computer: leaf
Architecture: x86
CPU ID: unknown CPU ID
SUPERCOP version: 20160731
Operation: crypto_aead
Primitive: aes128otrpv3
TimeImplementationCompilerBenchmark dateSUPERCOP version
282988refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072920160724
291892refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072920160724
316420refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072920160724
391680refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072920160724

Compiler output

Implementation: crypto_aead/aes128otrpv3/ni_p7m2
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
encrypt.c: encrypt.c:32:23: error: wmmintrin.h: No such file or directory
encrypt.c: encrypt.c:33:42: error: tmmintrin.h: No such file or directory
encrypt.c: encrypt.c:34:42: error: smmintrin.h: No such file or directory
encrypt.c: In file included from encrypt.c:36:
encrypt.c: otr.h:29: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'block'
encrypt.c: encrypt.c:47: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'Q'
encrypt.c: encrypt.c:48: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'encrypt_key'
encrypt.c: encrypt.c:69: error: expected declaration specifiers or '...' before '__m128i'
encrypt.c: encrypt.c: In function 'AES_256_Key_Expansion':
encrypt.c: encrypt.c:71: error: '__m128i' undeclared (first use in this function)
encrypt.c: encrypt.c:71: error: (Each undeclared identifier is reported only once
encrypt.c: encrypt.c:71: error: for each function it appears in.)
encrypt.c: encrypt.c:71: error: expected ';' before 'x0'
encrypt.c: encrypt.c:72: error: 'kp' undeclared (first use in this function)
encrypt.c: encrypt.c:72: error: 'x0' undeclared (first use in this function)
encrypt.c: encrypt.c:72: error: expected expression before ')' token
encrypt.c: encrypt.c:73: error: 'x3' undeclared (first use in this function)
encrypt.c: encrypt.c:73: error: expected expression before ')' token
encrypt.c: encrypt.c:74: error: 'x2' undeclared (first use in this function)
encrypt.c: encrypt.c:75: error: 'x1' undeclared (first use in this function)
encrypt.c: encrypt.c: In function 'AES_128_Key_Expansion':
encrypt.c: encrypt.c:96: error: '__m128i' undeclared (first use in this function)
encrypt.c: encrypt.c:96: error: expected ';' before 'x0'
encrypt.c: encrypt.c:97: error: 'kp' undeclared (first use in this function)
encrypt.c: encrypt.c:97: error: expected expression before ')' token
encrypt.c: ...

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

Compiler output

Implementation: crypto_aead/aes128otrpv3/ni_p7m1
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
encrypt.c: encrypt.c:33:23: error: wmmintrin.h: No such file or directory
encrypt.c: encrypt.c:34:42: error: tmmintrin.h: No such file or directory
encrypt.c: encrypt.c:35:42: error: smmintrin.h: No such file or directory
encrypt.c: In file included from encrypt.c:37:
encrypt.c: otr.h:29: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'block'
encrypt.c: In file included from doubling.h:27,
encrypt.c: from encrypt.c:38:
encrypt.c: otr.h:29: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'block'
encrypt.c: In file included from encrypt.c:38:
encrypt.c: doubling.h:34: warning: integer constant is too large for 'long' type
encrypt.c: doubling.h:35: warning: integer constant is too large for 'long' type
encrypt.c: doubling.h:36: warning: integer constant is too large for 'long' type
encrypt.c: doubling.h:37: warning: integer constant is too large for 'long' type
encrypt.c: doubling.h:38: warning: integer constant is too large for 'long' type
encrypt.c: doubling.h:39: warning: integer constant is too large for 'long' type
encrypt.c: doubling.h:40: warning: integer constant is too large for 'long' type
encrypt.c: doubling.h:41: warning: integer constant is too large for 'long' type
encrypt.c: doubling.h:42: warning: integer constant is too large for 'long' type
encrypt.c: doubling.h:43: warning: integer constant is too large for 'long' type
encrypt.c: doubling.h:44: warning: integer constant is too large for 'long' type
encrypt.c: doubling.h:45: warning: integer constant is too large for 'long' type
encrypt.c: doubling.h:46: warning: integer constant is too large for 'long' type
encrypt.c: doubling.h:47: warning: integer constant is too large for 'long' type
encrypt.c: doubling.h:48: warning: integer constant is too large for 'long' type
encrypt.c: doubling.h:49: warning: integer constant is too large for 'long' type
encrypt.c: ...

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

Compiler output

Implementation: crypto_aead/aes128otrpv3/ref
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
try.c: /tmp//cciW5oc2.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//cc3l10mT.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/aes128otrpv3/ref
Compiler: gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
try.c: /tmp//ccTQofjx.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//ccHmQPqK.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/aes128otrpv3/ref
Compiler: gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv
try.c: /tmp//cc2XbF3M.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//ccqVsXaA.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/aes128otrpv3/ref
Compiler: gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv
try.c: /tmp//ccElxXgp.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//ccbZ8ERX.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