Implementation notes: amd64, sliver, crypto_aead/minalpherv11

Computer: sliver
Architecture: amd64
CPU ID: GenuineIntel-00040651-bfebfbff
SUPERCOP version: 20160731
Operation: crypto_aead
Primitive: minalpherv11
TimeImplementationCompilerBenchmark dateSUPERCOP version
6326736refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072420160718
7360278refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072420160718
9922974refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072420160718
12562452refclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016072420160718
13799466refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072420160718

Compiler output

Implementation: crypto_aead/minalpherv11/avx2
Compiler: clang++ -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
MinalpherMode.cpp: MinalpherMode.cpp:146:90: error: expected ')'
MinalpherMode.cpp: static inline void create_l(__m256i& ymmL, const unsigned char *_K, const unsigned char *_N){
MinalpherMode.cpp: ^
MinalpherMode.cpp: /usr/include/ctype.h:47:12: note: expanded from macro '_N'
MinalpherMode.cpp: #define _N 0x04
MinalpherMode.cpp: ^
MinalpherMode.cpp: MinalpherMode.cpp:146:28: note: to match this '('
MinalpherMode.cpp: static inline void create_l(__m256i& ymmL, const unsigned char *_K, const unsigned char *_N){
MinalpherMode.cpp: ^
MinalpherMode.cpp: MinalpherMode.cpp:150:3: error: no matching function for call to 'memcpy'
MinalpherMode.cpp: memcpy(tmp + 19, _N, 13);
MinalpherMode.cpp: ^~~~~~
MinalpherMode.cpp: /usr/include/string.h:67:7: note: candidate function not viable: no known conversion from 'int' to 'const void *restrict' for 2nd argument
MinalpherMode.cpp: void *memcpy(void *__restrict, const void *__restrict, size_t)
MinalpherMode.cpp: ^
MinalpherMode.cpp: MinalpherMode.cpp:182:28: error: expected ')'
MinalpherMode.cpp: const unsigned char *_N, /* I Nonce */
MinalpherMode.cpp: ^
MinalpherMode.cpp: /usr/include/ctype.h:47:12: note: expanded from macro '_N'
MinalpherMode.cpp: #define _N 0x04
MinalpherMode.cpp: ^
MinalpherMode.cpp: MinalpherMode.cpp:180:28: note: to match this '('
MinalpherMode.cpp: void minalpher_mode_encrypt(
MinalpherMode.cpp: ^
MinalpherMode.cpp: MinalpherMode.cpp:202:7: error: use of undeclared identifier '_alen'
MinalpherMode.cpp: ...

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

Compiler output

Implementation: crypto_aead/minalpherv11/ref
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
try.c: /tmp/try-anything-8d8721.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-352dc6.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/minalpherv11/avx2
Compiler: g++ -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
MinalpherCore.cpp: In file included from MinalpherCore.cpp:33:
MinalpherCore.cpp: define.h:47:25: error: x86intrin.h: No such file or directory
MinalpherCore.cpp: MinalpherCore.cpp:41: error: '__m256i' does not name a type
MinalpherCore.cpp: MinalpherCore.cpp:75: error: '__m256i' does not name a type
MinalpherCore.cpp: MinalpherCore.cpp:76: error: '__m256i' does not name a type
MinalpherCore.cpp: MinalpherCore.cpp:78: error: expected ',' or '...' before '&' token
MinalpherCore.cpp: MinalpherCore.cpp:81: error: ISO C++ forbids declaration of '__m256i' with no type
MinalpherCore.cpp: MinalpherCore.cpp: In function 'void minalpher_core_single_block(int)':
MinalpherCore.cpp: MinalpherCore.cpp:85: error: '__m256i' does not name a type
MinalpherCore.cpp: MinalpherCore.cpp:88: error: expected `;' before 'tmp'
MinalpherCore.cpp: MinalpherCore.cpp:91: error: expected `;' before 'tmp0'
MinalpherCore.cpp: MinalpherCore.cpp:92: error: 'tmp0' was not declared in this scope
MinalpherCore.cpp: MinalpherCore.cpp:92: error: 'ymmMask' was not declared in this scope
MinalpherCore.cpp: MinalpherCore.cpp:92: error: 'tmp' was not declared in this scope
MinalpherCore.cpp: MinalpherCore.cpp:92: error: '_mm256_and_si256' was not declared in this scope
MinalpherCore.cpp: MinalpherCore.cpp:93: error: 'tmp1' was not declared in this scope
MinalpherCore.cpp: MinalpherCore.cpp:93: error: '_mm256_andnot_si256' was not declared in this scope
MinalpherCore.cpp: MinalpherCore.cpp:96: error: '_mm256_srli_epi16' was not declared in this scope
MinalpherCore.cpp: MinalpherCore.cpp:99: error: expected `;' before 'ymm0'
MinalpherCore.cpp: MinalpherCore.cpp:100: error: expected `;' before 'ymm1'
MinalpherCore.cpp: MinalpherCore.cpp:106: error: '__m256i' does not name a type
MinalpherCore.cpp: MinalpherCore.cpp:128: error: 'ymm0' was not declared in this scope
MinalpherCore.cpp: MinalpherCore.cpp:128: error: 'ymmSbox' was not declared in this scope
MinalpherCore.cpp: MinalpherCore.cpp:128: error: '_mm256_shuffle_epi8' was not declared in this scope
MinalpherCore.cpp: MinalpherCore.cpp:128: error: 'ymm1' was not declared in this scope
MinalpherCore.cpp: ...

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

Compiler output

Implementation: crypto_aead/minalpherv11/ref
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
try.c: /tmp//ccQ2mgLE.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//cc1gqEY9.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/minalpherv11/ref
Compiler: gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
try.c: /tmp//ccmGWdSD.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//ccQVUzZl.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/minalpherv11/ref
Compiler: gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv
try.c: /tmp//ccqcJXHS.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//ccZfobJ6.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/minalpherv11/ref
Compiler: gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv
try.c: /tmp//ccNcqUQn.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//ccGVvJfc.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