Implementation notes: amd64, gcc16, crypto_stream/speck64128ctr

Computer: gcc16
Architecture: amd64
CPU ID: AuthenticAMD-00100f23-178bfbff
SUPERCOP version: 20171020
Operation: crypto_stream
Primitive: speck64128ctr

Test failure

Implementation: crypto_stream/speck64128ctr/sse4
Compiler: gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer sse4
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer sse4
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer sse4
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer sse4
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer sse4
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer sse4
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer sse4
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer sse4

Compiler output

Implementation: crypto_stream/speck64128ctr/sse4
Compiler: cc
stream.c: In file included from Intrinsics_SSE4_64block.h:5,
stream.c: from Speck64128SSE4.h:17,
stream.c: from stream.c:20:
stream.c: /usr/lib/gcc/x86_64-linux-gnu/4.4.5/include/smmintrin.h:32:3: error: #error "SSE4.1 instruction set not enabled"
stream.c: stream.c:24: error: expected declaration specifiers or '...' before '__m128i'
stream.c: stream.c:26: error: expected declaration specifiers or '...' before '__m128i'
stream.c: stream.c:27: error: expected declaration specifiers or '...' before '__m128i'
stream.c: stream.c: In function 'crypto_stream_speck64128ctr_sse4':
stream.c: stream.c:42: error: '__m128i' undeclared (first use in this function)
stream.c: stream.c:42: error: (Each undeclared identifier is reported only once
stream.c: stream.c:42: error: for each function it appears in.)
stream.c: stream.c:42: error: expected ';' before 'rk'
stream.c: stream.c:66: error: 'rk' undeclared (first use in this function)
stream.c: stream.c:66: error: too many arguments to function 'ExpandKey'
stream.c: stream.c:69: warning: passing argument 4 of 'Encrypt' makes integer from pointer without a cast
stream.c: stream.c:24: note: expected 'int' but argument is of type 'unsigned int *'
stream.c: stream.c:69: error: too many arguments to function 'Encrypt'
stream.c: stream.c:74: warning: passing argument 4 of 'Encrypt' makes integer from pointer without a cast
stream.c: stream.c:24: note: expected 'int' but argument is of type 'unsigned int *'
stream.c: stream.c:74: error: too many arguments to function 'Encrypt'
stream.c: stream.c:79: warning: passing argument 4 of 'Encrypt' makes integer from pointer without a cast
stream.c: stream.c:24: note: expected 'int' but argument is of type 'unsigned int *'
stream.c: stream.c:79: error: too many arguments to function 'Encrypt'
stream.c: stream.c:84: warning: passing argument 4 of 'Encrypt' makes integer from pointer without a cast
stream.c: stream.c:24: note: expected 'int' but argument is of type 'unsigned int *'
stream.c: ...

Number of similar (compiler,implementation) pairs: 83, namely:
CompilerImplementations
cc sse4
gcc sse4
gcc -O2 -fomit-frame-pointer sse4
gcc -O3 -fomit-frame-pointer sse4
gcc -O -fomit-frame-pointer sse4
gcc -Os -fomit-frame-pointer sse4
gcc -fno-schedule-insns -O2 -fomit-frame-pointer sse4
gcc -fno-schedule-insns -O3 -fomit-frame-pointer sse4
gcc -fno-schedule-insns -O -fomit-frame-pointer sse4
gcc -fno-schedule-insns -Os -fomit-frame-pointer sse4
gcc -funroll-loops sse4
gcc -funroll-loops -O2 -fomit-frame-pointer sse4
gcc -funroll-loops -O3 -fomit-frame-pointer sse4
gcc -funroll-loops -O -fomit-frame-pointer sse4
gcc -funroll-loops -Os -fomit-frame-pointer sse4
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer sse4
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer sse4
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer sse4
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer sse4
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer sse4
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer sse4
gcc -funroll-loops -m64 -O -fomit-frame-pointer sse4
gcc -funroll-loops -m64 -Os -fomit-frame-pointer sse4
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer sse4
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer sse4
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer sse4
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer sse4
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer sse4
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer sse4
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer sse4
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer sse4
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer sse4
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer sse4
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer sse4
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer sse4
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer sse4
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer sse4
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer sse4
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer sse4
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer sse4
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer sse4
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer sse4
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer sse4
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer sse4
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer sse4
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer sse4
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer sse4
gcc -m64 -O2 -fomit-frame-pointer sse4
gcc -m64 -O3 -fomit-frame-pointer sse4
gcc -m64 -O -fomit-frame-pointer sse4
gcc -m64 -Os -fomit-frame-pointer sse4
gcc -m64 -march=core2 -O2 -fomit-frame-pointer sse4
gcc -m64 -march=core2 -O3 -fomit-frame-pointer sse4
gcc -m64 -march=core2 -O -fomit-frame-pointer sse4
gcc -m64 -march=core2 -Os -fomit-frame-pointer sse4
gcc -m64 -march=k8 -O2 -fomit-frame-pointer sse4
gcc -m64 -march=k8 -O3 -fomit-frame-pointer sse4
gcc -m64 -march=k8 -O -fomit-frame-pointer sse4
gcc -m64 -march=k8 -Os -fomit-frame-pointer sse4
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer sse4
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer sse4
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer sse4
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer sse4
gcc -m64 -march=nocona -O2 -fomit-frame-pointer sse4
gcc -m64 -march=nocona -O3 -fomit-frame-pointer sse4
gcc -m64 -march=nocona -O -fomit-frame-pointer sse4
gcc -m64 -march=nocona -Os -fomit-frame-pointer sse4
gcc -march=barcelona -O2 -fomit-frame-pointer sse4
gcc -march=barcelona -O3 -fomit-frame-pointer sse4
gcc -march=barcelona -O -fomit-frame-pointer sse4
gcc -march=barcelona -Os -fomit-frame-pointer sse4
gcc -march=k8 -O2 -fomit-frame-pointer sse4
gcc -march=k8 -O3 -fomit-frame-pointer sse4
gcc -march=k8 -O -fomit-frame-pointer sse4
gcc -march=k8 -Os -fomit-frame-pointer sse4
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv sse4
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv sse4
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv sse4
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv sse4
gcc -march=nocona -O2 -fomit-frame-pointer sse4
gcc -march=nocona -O3 -fomit-frame-pointer sse4
gcc -march=nocona -O -fomit-frame-pointer sse4
gcc -march=nocona -Os -fomit-frame-pointer sse4

Compiler output

Implementation: crypto_stream/speck64128ctr/avx512
Compiler: cc
stream.c: stream.c:23: error: expected declaration specifiers or '...' before '__m512i'
stream.c: stream.c:25: error: expected declaration specifiers or '...' before '__m512i'
stream.c: stream.c:26: error: expected declaration specifiers or '...' before '__m512i'
stream.c: stream.c: In function 'crypto_stream_speck64128ctr_avx512':
stream.c: stream.c:41: error: '__m512i' undeclared (first use in this function)
stream.c: stream.c:41: error: (Each undeclared identifier is reported only once
stream.c: stream.c:41: error: for each function it appears in.)
stream.c: stream.c:41: error: expected ';' before 'rk'
stream.c: stream.c:64: error: 'rk' undeclared (first use in this function)
stream.c: stream.c:64: error: too many arguments to function 'ExpandKey'
stream.c: stream.c:67: warning: passing argument 4 of 'Encrypt' makes integer from pointer without a cast
stream.c: stream.c:23: note: expected 'int' but argument is of type 'unsigned int *'
stream.c: stream.c:67: error: too many arguments to function 'Encrypt'
stream.c: stream.c:72: warning: passing argument 4 of 'Encrypt' makes integer from pointer without a cast
stream.c: stream.c:23: note: expected 'int' but argument is of type 'unsigned int *'
stream.c: stream.c:72: error: too many arguments to function 'Encrypt'
stream.c: stream.c:77: warning: passing argument 4 of 'Encrypt' makes integer from pointer without a cast
stream.c: stream.c:23: note: expected 'int' but argument is of type 'unsigned int *'
stream.c: stream.c:77: error: too many arguments to function 'Encrypt'
stream.c: stream.c:82: warning: passing argument 4 of 'Encrypt' makes integer from pointer without a cast
stream.c: stream.c:23: note: expected 'int' but argument is of type 'unsigned int *'
stream.c: stream.c:82: error: too many arguments to function 'Encrypt'
stream.c: stream.c:86: warning: passing argument 4 of 'Encrypt' makes integer from pointer without a cast
stream.c: stream.c:23: note: expected 'int' but argument is of type 'unsigned int *'
stream.c: stream.c:86: error: too many arguments to function 'Encrypt'
stream.c: ...

Number of similar (compiler,implementation) pairs: 91, namely:
CompilerImplementations
cc avx512
gcc avx512
gcc -O2 -fomit-frame-pointer avx512
gcc -O3 -fomit-frame-pointer avx512
gcc -O -fomit-frame-pointer avx512
gcc -Os -fomit-frame-pointer avx512
gcc -fno-schedule-insns -O2 -fomit-frame-pointer avx512
gcc -fno-schedule-insns -O3 -fomit-frame-pointer avx512
gcc -fno-schedule-insns -O -fomit-frame-pointer avx512
gcc -fno-schedule-insns -Os -fomit-frame-pointer avx512
gcc -funroll-loops avx512
gcc -funroll-loops -O2 -fomit-frame-pointer avx512
gcc -funroll-loops -O3 -fomit-frame-pointer avx512
gcc -funroll-loops -O -fomit-frame-pointer avx512
gcc -funroll-loops -Os -fomit-frame-pointer avx512
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer avx512
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer avx512
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer avx512
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer avx512
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer avx512
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer avx512
gcc -funroll-loops -m64 -O -fomit-frame-pointer avx512
gcc -funroll-loops -m64 -Os -fomit-frame-pointer avx512
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer avx512
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer avx512
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer avx512
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer avx512
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer avx512
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer avx512
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer avx512
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer avx512
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer avx512
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer avx512
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer avx512
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer avx512
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer avx512
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer avx512
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer avx512
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer avx512
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer avx512
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer avx512
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer avx512
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer avx512
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer avx512
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer avx512
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer avx512
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer avx512
gcc -m64 -O2 -fomit-frame-pointer avx512
gcc -m64 -O3 -fomit-frame-pointer avx512
gcc -m64 -O -fomit-frame-pointer avx512
gcc -m64 -Os -fomit-frame-pointer avx512
gcc -m64 -march=core2 -O2 -fomit-frame-pointer avx512
gcc -m64 -march=core2 -O3 -fomit-frame-pointer avx512
gcc -m64 -march=core2 -O -fomit-frame-pointer avx512
gcc -m64 -march=core2 -Os -fomit-frame-pointer avx512
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer avx512
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer avx512
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer avx512
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer avx512
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer avx512
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer avx512
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer avx512
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer avx512
gcc -m64 -march=k8 -O2 -fomit-frame-pointer avx512
gcc -m64 -march=k8 -O3 -fomit-frame-pointer avx512
gcc -m64 -march=k8 -O -fomit-frame-pointer avx512
gcc -m64 -march=k8 -Os -fomit-frame-pointer avx512
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer avx512
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer avx512
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer avx512
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer avx512
gcc -m64 -march=nocona -O2 -fomit-frame-pointer avx512
gcc -m64 -march=nocona -O3 -fomit-frame-pointer avx512
gcc -m64 -march=nocona -O -fomit-frame-pointer avx512
gcc -m64 -march=nocona -Os -fomit-frame-pointer avx512
gcc -march=barcelona -O2 -fomit-frame-pointer avx512
gcc -march=barcelona -O3 -fomit-frame-pointer avx512
gcc -march=barcelona -O -fomit-frame-pointer avx512
gcc -march=barcelona -Os -fomit-frame-pointer avx512
gcc -march=k8 -O2 -fomit-frame-pointer avx512
gcc -march=k8 -O3 -fomit-frame-pointer avx512
gcc -march=k8 -O -fomit-frame-pointer avx512
gcc -march=k8 -Os -fomit-frame-pointer avx512
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv avx512
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv avx512
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv avx512
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv avx512
gcc -march=nocona -O2 -fomit-frame-pointer avx512
gcc -march=nocona -O3 -fomit-frame-pointer avx512
gcc -march=nocona -O -fomit-frame-pointer avx512
gcc -march=nocona -Os -fomit-frame-pointer avx512

Compiler output

Implementation: crypto_stream/speck64128ctr/avx2
Compiler: cc
stream.c: stream.c:24: error: expected declaration specifiers or '...' before '__m256i'
stream.c: stream.c:26: error: expected declaration specifiers or '...' before '__m256i'
stream.c: stream.c:27: error: expected declaration specifiers or '...' before '__m256i'
stream.c: stream.c: In function 'crypto_stream_speck64128ctr_avx2':
stream.c: stream.c:42: error: '__m256i' undeclared (first use in this function)
stream.c: stream.c:42: error: (Each undeclared identifier is reported only once
stream.c: stream.c:42: error: for each function it appears in.)
stream.c: stream.c:42: error: expected ';' before 'rk'
stream.c: stream.c:65: error: 'rk' undeclared (first use in this function)
stream.c: stream.c:65: error: too many arguments to function 'ExpandKey'
stream.c: stream.c:68: warning: passing argument 4 of 'Encrypt' makes integer from pointer without a cast
stream.c: stream.c:24: note: expected 'int' but argument is of type 'unsigned int *'
stream.c: stream.c:68: error: too many arguments to function 'Encrypt'
stream.c: stream.c:73: warning: passing argument 4 of 'Encrypt' makes integer from pointer without a cast
stream.c: stream.c:24: note: expected 'int' but argument is of type 'unsigned int *'
stream.c: stream.c:73: error: too many arguments to function 'Encrypt'
stream.c: stream.c:78: warning: passing argument 4 of 'Encrypt' makes integer from pointer without a cast
stream.c: stream.c:24: note: expected 'int' but argument is of type 'unsigned int *'
stream.c: stream.c:78: error: too many arguments to function 'Encrypt'
stream.c: stream.c:83: warning: passing argument 4 of 'Encrypt' makes integer from pointer without a cast
stream.c: stream.c:24: note: expected 'int' but argument is of type 'unsigned int *'
stream.c: stream.c:83: error: too many arguments to function 'Encrypt'
stream.c: stream.c:88: warning: passing argument 4 of 'Encrypt' makes integer from pointer without a cast
stream.c: stream.c:24: note: expected 'int' but argument is of type 'unsigned int *'
stream.c: stream.c:88: error: too many arguments to function 'Encrypt'
stream.c: ...

Number of similar (compiler,implementation) pairs: 91, namely:
CompilerImplementations
cc avx2
gcc avx2
gcc -O2 -fomit-frame-pointer avx2
gcc -O3 -fomit-frame-pointer avx2
gcc -O -fomit-frame-pointer avx2
gcc -Os -fomit-frame-pointer avx2
gcc -fno-schedule-insns -O2 -fomit-frame-pointer avx2
gcc -fno-schedule-insns -O3 -fomit-frame-pointer avx2
gcc -fno-schedule-insns -O -fomit-frame-pointer avx2
gcc -fno-schedule-insns -Os -fomit-frame-pointer avx2
gcc -funroll-loops avx2
gcc -funroll-loops -O2 -fomit-frame-pointer avx2
gcc -funroll-loops -O3 -fomit-frame-pointer avx2
gcc -funroll-loops -O -fomit-frame-pointer avx2
gcc -funroll-loops -Os -fomit-frame-pointer avx2
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer avx2
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer avx2
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer avx2
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -O -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -Os -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer avx2
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer avx2
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer avx2
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer avx2
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer avx2
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer avx2
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer avx2
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer avx2
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer avx2
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer avx2
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer avx2
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer avx2
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer avx2
gcc -m64 -O2 -fomit-frame-pointer avx2
gcc -m64 -O3 -fomit-frame-pointer avx2
gcc -m64 -O -fomit-frame-pointer avx2
gcc -m64 -Os -fomit-frame-pointer avx2
gcc -m64 -march=core2 -O2 -fomit-frame-pointer avx2
gcc -m64 -march=core2 -O3 -fomit-frame-pointer avx2
gcc -m64 -march=core2 -O -fomit-frame-pointer avx2
gcc -m64 -march=core2 -Os -fomit-frame-pointer avx2
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer avx2
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer avx2
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer avx2
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer avx2
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer avx2
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer avx2
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer avx2
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer avx2
gcc -m64 -march=k8 -O2 -fomit-frame-pointer avx2
gcc -m64 -march=k8 -O3 -fomit-frame-pointer avx2
gcc -m64 -march=k8 -O -fomit-frame-pointer avx2
gcc -m64 -march=k8 -Os -fomit-frame-pointer avx2
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer avx2
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer avx2
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer avx2
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer avx2
gcc -m64 -march=nocona -O2 -fomit-frame-pointer avx2
gcc -m64 -march=nocona -O3 -fomit-frame-pointer avx2
gcc -m64 -march=nocona -O -fomit-frame-pointer avx2
gcc -m64 -march=nocona -Os -fomit-frame-pointer avx2
gcc -march=barcelona -O2 -fomit-frame-pointer avx2
gcc -march=barcelona -O3 -fomit-frame-pointer avx2
gcc -march=barcelona -O -fomit-frame-pointer avx2
gcc -march=barcelona -Os -fomit-frame-pointer avx2
gcc -march=k8 -O2 -fomit-frame-pointer avx2
gcc -march=k8 -O3 -fomit-frame-pointer avx2
gcc -march=k8 -O -fomit-frame-pointer avx2
gcc -march=k8 -Os -fomit-frame-pointer avx2
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv avx2
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv avx2
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv avx2
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv avx2
gcc -march=nocona -O2 -fomit-frame-pointer avx2
gcc -march=nocona -O3 -fomit-frame-pointer avx2
gcc -march=nocona -O -fomit-frame-pointer avx2
gcc -march=nocona -Os -fomit-frame-pointer avx2

Compiler output

Implementation: crypto_stream/speck64128ctr/sse4
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
stream.c: In file included from Intrinsics_SSE4_64block.h:5,
stream.c: from Speck64128SSE4.h:17,
stream.c: from stream.c:20:
stream.c: /usr/lib/gcc/x86_64-linux-gnu/4.4.5/include/smmintrin.h:32:3: error: #error "SSE4.1 instruction set not enabled"
stream.c: stream.c:24: error: expected declaration specifiers or '...' before '__m128i'
stream.c: stream.c:26: error: expected declaration specifiers or '...' before '__m128i'
stream.c: stream.c:27: error: expected declaration specifiers or '...' before '__m128i'
stream.c: stream.c: In function 'crypto_stream_speck64128ctr_sse4':
stream.c: stream.c:42: error: '__m128i' undeclared (first use in this function)
stream.c: stream.c:42: error: (Each undeclared identifier is reported only once
stream.c: stream.c:42: error: for each function it appears in.)
stream.c: stream.c:42: error: expected ';' before 'rk'
stream.c: stream.c:66: error: 'rk' undeclared (first use in this function)
stream.c: stream.c:66: error: too many arguments to function 'ExpandKey'
stream.c: stream.c:69: warning: passing argument 4 of 'Encrypt' makes integer from pointer without a cast
stream.c: stream.c:24: note: expected 'int' but argument is of type 'unsigned int *'
stream.c: stream.c:69: error: too many arguments to function 'Encrypt'
stream.c: stream.c:74: warning: passing argument 4 of 'Encrypt' makes integer from pointer without a cast
stream.c: stream.c:24: note: expected 'int' but argument is of type 'unsigned int *'
stream.c: stream.c:74: error: too many arguments to function 'Encrypt'
stream.c: stream.c:79: warning: passing argument 4 of 'Encrypt' makes integer from pointer without a cast
stream.c: stream.c:24: note: expected 'int' but argument is of type 'unsigned int *'
stream.c: stream.c:79: error: too many arguments to function 'Encrypt'
stream.c: stream.c:84: warning: passing argument 4 of 'Encrypt' makes integer from pointer without a cast
stream.c: stream.c:24: note: expected 'int' but argument is of type 'unsigned int *'
stream.c: ...
stream.c: In file included from Intrinsics_SSE4_64block.h:5,
stream.c: from Speck64128SSE4.h:17,
stream.c: from stream.c:20:
stream.c: /usr/lib/gcc/x86_64-linux-gnu/4.4.5/include/smmintrin.h:32:3: error: #error "SSE4.1 instruction set not enabled"
stream.c: stream.c:24: error: expected declaration specifiers or '...' before '__m128i'
stream.c: stream.c:26: error: expected declaration specifiers or '...' before '__m128i'
stream.c: stream.c:27: error: expected declaration specifiers or '...' before '__m128i'
stream.c: stream.c: In function 'crypto_stream_speck64128ctr_sse4':
stream.c: stream.c:42: error: '__m128i' undeclared (first use in this function)
stream.c: stream.c:42: error: (Each undeclared identifier is reported only once
stream.c: stream.c:42: error: for each function it appears in.)
stream.c: stream.c:42: error: expected ';' before 'rk'
stream.c: stream.c:66: error: 'rk' undeclared (first use in this function)
stream.c: stream.c:66: error: too many arguments to function 'ExpandKey'
stream.c: stream.c:69: warning: passing argument 4 of 'Encrypt' makes integer from pointer without a cast
stream.c: stream.c:24: note: expected 'int' but argument is of type 'unsigned int *'
stream.c: stream.c:69: error: too many arguments to function 'Encrypt'
stream.c: stream.c:74: warning: passing argument 4 of 'Encrypt' makes integer from pointer without a cast
stream.c: stream.c:24: note: expected 'int' but argument is of type 'unsigned int *'
stream.c: stream.c:74: error: too many arguments to function 'Encrypt'
stream.c: stream.c:79: warning: passing argument 4 of 'Encrypt' makes integer from pointer without a cast
stream.c: stream.c:24: note: expected 'int' but argument is of type 'unsigned int *'
stream.c: stream.c:79: error: too many arguments to function 'Encrypt'
stream.c: stream.c:84: warning: passing argument 4 of 'Encrypt' makes integer from pointer without a cast
stream.c: stream.c:24: note: expected 'int' but argument is of type 'unsigned int *'
stream.c: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -m64 -march=barcelona -O2 -fomit-frame-pointer sse4
gcc -m64 -march=barcelona -O3 -fomit-frame-pointer sse4
gcc -m64 -march=barcelona -O -fomit-frame-pointer sse4
gcc -m64 -march=barcelona -Os -fomit-frame-pointer sse4

Compiler output

Implementation: crypto_stream/speck64128ctr/avx512
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
stream.c: stream.c:23: error: expected declaration specifiers or '...' before '__m512i'
stream.c: stream.c:25: error: expected declaration specifiers or '...' before '__m512i'
stream.c: stream.c:26: error: expected declaration specifiers or '...' before '__m512i'
stream.c: stream.c: In function 'crypto_stream_speck64128ctr_avx512':
stream.c: stream.c:41: error: '__m512i' undeclared (first use in this function)
stream.c: stream.c:41: error: (Each undeclared identifier is reported only once
stream.c: stream.c:41: error: for each function it appears in.)
stream.c: stream.c:41: error: expected ';' before 'rk'
stream.c: stream.c:64: error: 'rk' undeclared (first use in this function)
stream.c: stream.c:64: error: too many arguments to function 'ExpandKey'
stream.c: stream.c:67: warning: passing argument 4 of 'Encrypt' makes integer from pointer without a cast
stream.c: stream.c:23: note: expected 'int' but argument is of type 'unsigned int *'
stream.c: stream.c:67: error: too many arguments to function 'Encrypt'
stream.c: stream.c:72: warning: passing argument 4 of 'Encrypt' makes integer from pointer without a cast
stream.c: stream.c:23: note: expected 'int' but argument is of type 'unsigned int *'
stream.c: stream.c:72: error: too many arguments to function 'Encrypt'
stream.c: stream.c:77: warning: passing argument 4 of 'Encrypt' makes integer from pointer without a cast
stream.c: stream.c:23: note: expected 'int' but argument is of type 'unsigned int *'
stream.c: stream.c:77: error: too many arguments to function 'Encrypt'
stream.c: stream.c:82: warning: passing argument 4 of 'Encrypt' makes integer from pointer without a cast
stream.c: stream.c:23: note: expected 'int' but argument is of type 'unsigned int *'
stream.c: stream.c:82: error: too many arguments to function 'Encrypt'
stream.c: stream.c:86: warning: passing argument 4 of 'Encrypt' makes integer from pointer without a cast
stream.c: stream.c:23: note: expected 'int' but argument is of type 'unsigned int *'
stream.c: stream.c:86: error: too many arguments to function 'Encrypt'
stream.c: ...
stream.c: stream.c:23: error: expected declaration specifiers or '...' before '__m512i'
stream.c: stream.c:25: error: expected declaration specifiers or '...' before '__m512i'
stream.c: stream.c:26: error: expected declaration specifiers or '...' before '__m512i'
stream.c: stream.c: In function 'crypto_stream_speck64128ctr_avx512':
stream.c: stream.c:41: error: '__m512i' undeclared (first use in this function)
stream.c: stream.c:41: error: (Each undeclared identifier is reported only once
stream.c: stream.c:41: error: for each function it appears in.)
stream.c: stream.c:41: error: expected ';' before 'rk'
stream.c: stream.c:64: error: 'rk' undeclared (first use in this function)
stream.c: stream.c:64: error: too many arguments to function 'ExpandKey'
stream.c: stream.c:67: warning: passing argument 4 of 'Encrypt' makes integer from pointer without a cast
stream.c: stream.c:23: note: expected 'int' but argument is of type 'unsigned int *'
stream.c: stream.c:67: error: too many arguments to function 'Encrypt'
stream.c: stream.c:72: warning: passing argument 4 of 'Encrypt' makes integer from pointer without a cast
stream.c: stream.c:23: note: expected 'int' but argument is of type 'unsigned int *'
stream.c: stream.c:72: error: too many arguments to function 'Encrypt'
stream.c: stream.c:77: warning: passing argument 4 of 'Encrypt' makes integer from pointer without a cast
stream.c: stream.c:23: note: expected 'int' but argument is of type 'unsigned int *'
stream.c: stream.c:77: error: too many arguments to function 'Encrypt'
stream.c: stream.c:82: warning: passing argument 4 of 'Encrypt' makes integer from pointer without a cast
stream.c: stream.c:23: note: expected 'int' but argument is of type 'unsigned int *'
stream.c: stream.c:82: error: too many arguments to function 'Encrypt'
stream.c: stream.c:86: warning: passing argument 4 of 'Encrypt' makes integer from pointer without a cast
stream.c: stream.c:23: note: expected 'int' but argument is of type 'unsigned int *'
stream.c: stream.c:86: error: too many arguments to function 'Encrypt'
stream.c: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -m64 -march=barcelona -O2 -fomit-frame-pointer avx512
gcc -m64 -march=barcelona -O3 -fomit-frame-pointer avx512
gcc -m64 -march=barcelona -O -fomit-frame-pointer avx512
gcc -m64 -march=barcelona -Os -fomit-frame-pointer avx512

Compiler output

Implementation: crypto_stream/speck64128ctr/avx2
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
stream.c: stream.c:24: error: expected declaration specifiers or '...' before '__m256i'
stream.c: stream.c:26: error: expected declaration specifiers or '...' before '__m256i'
stream.c: stream.c:27: error: expected declaration specifiers or '...' before '__m256i'
stream.c: stream.c: In function 'crypto_stream_speck64128ctr_avx2':
stream.c: stream.c:42: error: '__m256i' undeclared (first use in this function)
stream.c: stream.c:42: error: (Each undeclared identifier is reported only once
stream.c: stream.c:42: error: for each function it appears in.)
stream.c: stream.c:42: error: expected ';' before 'rk'
stream.c: stream.c:65: error: 'rk' undeclared (first use in this function)
stream.c: stream.c:65: error: too many arguments to function 'ExpandKey'
stream.c: stream.c:68: warning: passing argument 4 of 'Encrypt' makes integer from pointer without a cast
stream.c: stream.c:24: note: expected 'int' but argument is of type 'unsigned int *'
stream.c: stream.c:68: error: too many arguments to function 'Encrypt'
stream.c: stream.c:73: warning: passing argument 4 of 'Encrypt' makes integer from pointer without a cast
stream.c: stream.c:24: note: expected 'int' but argument is of type 'unsigned int *'
stream.c: stream.c:73: error: too many arguments to function 'Encrypt'
stream.c: stream.c:78: warning: passing argument 4 of 'Encrypt' makes integer from pointer without a cast
stream.c: stream.c:24: note: expected 'int' but argument is of type 'unsigned int *'
stream.c: stream.c:78: error: too many arguments to function 'Encrypt'
stream.c: stream.c:83: warning: passing argument 4 of 'Encrypt' makes integer from pointer without a cast
stream.c: stream.c:24: note: expected 'int' but argument is of type 'unsigned int *'
stream.c: stream.c:83: error: too many arguments to function 'Encrypt'
stream.c: stream.c:88: warning: passing argument 4 of 'Encrypt' makes integer from pointer without a cast
stream.c: stream.c:24: note: expected 'int' but argument is of type 'unsigned int *'
stream.c: stream.c:88: error: too many arguments to function 'Encrypt'
stream.c: ...
stream.c: stream.c:24: error: expected declaration specifiers or '...' before '__m256i'
stream.c: stream.c:26: error: expected declaration specifiers or '...' before '__m256i'
stream.c: stream.c:27: error: expected declaration specifiers or '...' before '__m256i'
stream.c: stream.c: In function 'crypto_stream_speck64128ctr_avx2':
stream.c: stream.c:42: error: '__m256i' undeclared (first use in this function)
stream.c: stream.c:42: error: (Each undeclared identifier is reported only once
stream.c: stream.c:42: error: for each function it appears in.)
stream.c: stream.c:42: error: expected ';' before 'rk'
stream.c: stream.c:65: error: 'rk' undeclared (first use in this function)
stream.c: stream.c:65: error: too many arguments to function 'ExpandKey'
stream.c: stream.c:68: warning: passing argument 4 of 'Encrypt' makes integer from pointer without a cast
stream.c: stream.c:24: note: expected 'int' but argument is of type 'unsigned int *'
stream.c: stream.c:68: error: too many arguments to function 'Encrypt'
stream.c: stream.c:73: warning: passing argument 4 of 'Encrypt' makes integer from pointer without a cast
stream.c: stream.c:24: note: expected 'int' but argument is of type 'unsigned int *'
stream.c: stream.c:73: error: too many arguments to function 'Encrypt'
stream.c: stream.c:78: warning: passing argument 4 of 'Encrypt' makes integer from pointer without a cast
stream.c: stream.c:24: note: expected 'int' but argument is of type 'unsigned int *'
stream.c: stream.c:78: error: too many arguments to function 'Encrypt'
stream.c: stream.c:83: warning: passing argument 4 of 'Encrypt' makes integer from pointer without a cast
stream.c: stream.c:24: note: expected 'int' but argument is of type 'unsigned int *'
stream.c: stream.c:83: error: too many arguments to function 'Encrypt'
stream.c: stream.c:88: warning: passing argument 4 of 'Encrypt' makes integer from pointer without a cast
stream.c: stream.c:24: note: expected 'int' but argument is of type 'unsigned int *'
stream.c: stream.c:88: error: too many arguments to function 'Encrypt'
stream.c: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -m64 -march=barcelona -O2 -fomit-frame-pointer avx2
gcc -m64 -march=barcelona -O3 -fomit-frame-pointer avx2
gcc -m64 -march=barcelona -O -fomit-frame-pointer avx2
gcc -m64 -march=barcelona -Os -fomit-frame-pointer avx2