Implementation notes: mipso32, gcc49, crypto_stream/chacha12

Computer: gcc49
Architecture: mipso32
CPU ID: unknown CPU ID
SUPERCOP version: 20130126
Operation: crypto_stream
Primitive: chacha12
TimeImplementationCompilerBenchmark dateSUPERCOP version
21068e/regsgcc -O3 -fomit-frame-pointer2012041320120329
21074e/regsgcc -mabi=32 -O3 -fomit-frame-pointer2012041320120329
22230e/refgcc -funroll-loops -mabi=32 -O3 -fomit-frame-pointer2012041320120329
22246e/refgcc -funroll-loops -O3 -fomit-frame-pointer2012041320120329
22254e/regsgcc -funroll-loops -O3 -fomit-frame-pointer2012041320120329
22264e/regsgcc -funroll-loops -mabi=32 -O3 -fomit-frame-pointer2012041320120329
22590e/refgcc -O3 -fomit-frame-pointer2012041320120329
22590e/refgcc -mabi=32 -O3 -fomit-frame-pointer2012041320120329
26336e/mergedgcc -O3 -fomit-frame-pointer2012041320120329
26336e/mergedgcc -mabi=32 -O3 -fomit-frame-pointer2012041320120329
26984e/regsgcc -mabi=32 -O2 -fomit-frame-pointer2012041320120329
27026e/mergedgcc -fno-schedule-insns -O3 -fomit-frame-pointer2012041320120329
27030e/regsgcc -O2 -fomit-frame-pointer2012041320120329
27416e/regsgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2012041320120329
27490e/regsgcc -funroll-loops -O2 -fomit-frame-pointer2012041320120329
27558e/mergedgcc -funroll-loops -mabi=32 -O3 -fomit-frame-pointer2012041320120329
27566e/mergedgcc -funroll-loops -O3 -fomit-frame-pointer2012041320120329
27572e/regsgcc -fno-schedule-insns -O3 -fomit-frame-pointer2012041320120329
27680e/regsgcc -funroll-loops -mabi=32 -O2 -fomit-frame-pointer2012041320120329
27828e/mergedgcc -funroll-loops -mabi=32 -O2 -fomit-frame-pointer2012041320120329
27830e/mergedgcc -funroll-loops -O2 -fomit-frame-pointer2012041320120329
28128e/refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2012041320120329
28170e/mergedgcc -fno-schedule-insns -Os -fomit-frame-pointer2012041320120329
28382e/mergedgcc -O2 -fomit-frame-pointer2012041320120329
28524e/refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2012041320120329
28572e/mergedgcc -mabi=32 -O2 -fomit-frame-pointer2012041320120329
30540e/mergedgcc -funroll-loops -Os -fomit-frame-pointer2012041320120329
30584e/mergedgcc -funroll-loops -mabi=32 -Os -fomit-frame-pointer2012041320120329
31116e/refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2012041320120329
31712e/regsgcc -Os -fomit-frame-pointer2012041320120329
31746e/regsgcc -mabi=32 -Os -fomit-frame-pointer2012041320120329
32304e/mergedgcc -Os -fomit-frame-pointer2012041320120329
32314e/mergedgcc -mabi=32 -Os -fomit-frame-pointer2012041320120329
32516e/regsgcc -funroll-loops -Os -fomit-frame-pointer2012041320120329
32516e/regsgcc -funroll-loops -mabi=32 -Os -fomit-frame-pointer2012041320120329
33554e/regsgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2012041320120329
33694e/regsgcc -fno-schedule-insns -O2 -fomit-frame-pointer2012041320120329
34766e/refgcc -funroll-loops -mabi=32 -O -fomit-frame-pointer2012041320120329
34770e/refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2012041320120329
34788e/refgcc -funroll-loops -O -fomit-frame-pointer2012041320120329
34990e/refgcc -mabi=32 -O2 -fomit-frame-pointer2012041320120329
35012e/regsgcc -funroll-loops -mabi=32 -O -fomit-frame-pointer2012041320120329
35014e/regsgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2012041320120329
35016e/regsgcc -funroll-loops -O -fomit-frame-pointer2012041320120329
35048e/refgcc -O2 -fomit-frame-pointer2012041320120329
35162e/regsgcc -O -fomit-frame-pointer2012041320120329
35162e/regsgcc -fno-schedule-insns -O -fomit-frame-pointer2012041320120329
35166e/regsgcc -mabi=32 -O -fomit-frame-pointer2012041320120329
38782e/regsgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2012041320120329
40404e/regsgcc -fno-schedule-insns -Os -fomit-frame-pointer2012041320120329
40808e/refgcc -funroll-loops -Os -fomit-frame-pointer2012041320120329
40808e/refgcc -funroll-loops -mabi=32 -Os -fomit-frame-pointer2012041320120329
42118e/refgcc -Os -fomit-frame-pointer2012041320120329
42118e/refgcc -mabi=32 -Os -fomit-frame-pointer2012041320120329
42506e/refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2012041320120329
44508e/refgcc -fno-schedule-insns -O -fomit-frame-pointer2012041320120329
45166e/refgcc -O -fomit-frame-pointer2012041320120329
45166e/refgcc -mabi=32 -O -fomit-frame-pointer2012041320120329
47324e/refgcc -funroll-loops -O2 -fomit-frame-pointer2012041320120329
47330e/refgcc -funroll-loops -mabi=32 -O2 -fomit-frame-pointer2012041320120329
47342e/refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2012041320120329
48094e/refgcc -fno-schedule-insns -Os -fomit-frame-pointer2012041320120329
49146e/mergedgcc -fno-schedule-insns -O2 -fomit-frame-pointer2012041320120329
50664e/mergedgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2012041320120329
51204e/mergedgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2012041320120329
51490e/mergedgcc -funroll-loops -O -fomit-frame-pointer2012041320120329
51490e/mergedgcc -funroll-loops -mabi=32 -O -fomit-frame-pointer2012041320120329
51498e/mergedgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2012041320120329
51778e/mergedgcc -O -fomit-frame-pointer2012041320120329
51778e/mergedgcc -fno-schedule-insns -O -fomit-frame-pointer2012041320120329
51778e/mergedgcc -mabi=32 -O -fomit-frame-pointer2012041320120329
52400e/mergedgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2012041320120329
249970e/mergedcc2012041320120329
249970e/mergedgcc -funroll-loops2012041320120329
249986e/mergedgcc2012041320120329
304458e/regscc2012041320120329
304482e/regsgcc -funroll-loops2012041320120329
304486e/regsgcc2012041320120329
351082e/refgcc2012041320120329
351112e/refcc2012041320120329
351130e/refgcc -funroll-loops2012041320120329

Compiler output

Implementation: crypto_stream/chacha12/amd64-ssse3
Compiler: cc
api.c: In file included from api.c:1:
api.c: /home/djb/supercop-20120329/supercop-data/gcc49/mipso32/include/estream-convert-api.h:7:27: error: e/ecrypt-sync.h: No such file or directory
api.c: In file included from api.c:1:
api.c: /home/djb/supercop-20120329/supercop-data/gcc49/mipso32/include/estream-convert-api.h: In function 'crypto_stream_chacha12_amd64_ssse3':
api.c: /home/djb/supercop-20120329/supercop-data/gcc49/mipso32/include/estream-convert-api.h:82: error: 'ECRYPT_ctx' undeclared (first use in this function)
api.c: /home/djb/supercop-20120329/supercop-data/gcc49/mipso32/include/estream-convert-api.h:82: error: (Each undeclared identifier is reported only once
api.c: /home/djb/supercop-20120329/supercop-data/gcc49/mipso32/include/estream-convert-api.h:82: error: for each function it appears in.)
api.c: /home/djb/supercop-20120329/supercop-data/gcc49/mipso32/include/estream-convert-api.h:82: error: expected ';' before 'ctx'
api.c: /home/djb/supercop-20120329/supercop-data/gcc49/mipso32/include/estream-convert-api.h:85: error: 'ctx' undeclared (first use in this function)
api.c: /home/djb/supercop-20120329/supercop-data/gcc49/mipso32/include/estream-convert-api.h: In function 'crypto_stream_chacha12_amd64_ssse3_xor':
api.c: /home/djb/supercop-20120329/supercop-data/gcc49/mipso32/include/estream-convert-api.h:100: error: 'ECRYPT_ctx' undeclared (first use in this function)
api.c: /home/djb/supercop-20120329/supercop-data/gcc49/mipso32/include/estream-convert-api.h:100: error: expected ';' before 'ctx'
api.c: /home/djb/supercop-20120329/supercop-data/gcc49/mipso32/include/estream-convert-api.h:102: error: 'ctx' undeclared (first use in this function)

Number of similar (compiler,implementation) pairs: 27, namely:
CompilerImplementations
cc amd64-ssse3
gcc amd64-ssse3
gcc -O2 -fomit-frame-pointer amd64-ssse3
gcc -O3 -fomit-frame-pointer amd64-ssse3
gcc -O -fomit-frame-pointer amd64-ssse3
gcc -Os -fomit-frame-pointer amd64-ssse3
gcc -fno-schedule-insns -O2 -fomit-frame-pointer amd64-ssse3
gcc -fno-schedule-insns -O3 -fomit-frame-pointer amd64-ssse3
gcc -fno-schedule-insns -O -fomit-frame-pointer amd64-ssse3
gcc -fno-schedule-insns -Os -fomit-frame-pointer amd64-ssse3
gcc -funroll-loops amd64-ssse3
gcc -funroll-loops -O2 -fomit-frame-pointer amd64-ssse3
gcc -funroll-loops -O3 -fomit-frame-pointer amd64-ssse3
gcc -funroll-loops -O -fomit-frame-pointer amd64-ssse3
gcc -funroll-loops -Os -fomit-frame-pointer amd64-ssse3
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer amd64-ssse3
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer amd64-ssse3
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer amd64-ssse3
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer amd64-ssse3
gcc -funroll-loops -mabi=32 -O2 -fomit-frame-pointer amd64-ssse3
gcc -funroll-loops -mabi=32 -O3 -fomit-frame-pointer amd64-ssse3
gcc -funroll-loops -mabi=32 -O -fomit-frame-pointer amd64-ssse3
gcc -funroll-loops -mabi=32 -Os -fomit-frame-pointer amd64-ssse3
gcc -mabi=32 -O2 -fomit-frame-pointer amd64-ssse3
gcc -mabi=32 -O3 -fomit-frame-pointer amd64-ssse3
gcc -mabi=32 -O -fomit-frame-pointer amd64-ssse3
gcc -mabi=32 -Os -fomit-frame-pointer amd64-ssse3

Compiler output

Implementation: crypto_stream/chacha12/krovetz
Compiler: cc
stream.c: stream.c:80:2: error: #error -- Implementation supports only machines with neon, altivec or SSE2
stream.c: stream.c: In function 'crypto_stream_chacha12_krovetz_xor':
stream.c: stream.c:151: error: incompatible types when initializing type 'vec' using type 'int'
stream.c: stream.c:152: error: 'VBPI' undeclared (first use in this function)
stream.c: stream.c:152: error: (Each undeclared identifier is reported only once
stream.c: stream.c:152: error: for each function it appears in.)
stream.c: stream.c:152: error: 'GPR_TOO' undeclared (first use in this function)
stream.c: stream.c:155: error: 'ONE' undeclared (first use in this function)
stream.c: stream.c:176: error: incompatible types when assigning to type 'vec' from type 'int'
stream.c: stream.c:176: error: incompatible types when assigning to type 'vec' from type 'int'
stream.c: stream.c:176: error: incompatible types when assigning to type 'vec' from type 'int'
stream.c: stream.c:176: error: incompatible types when assigning to type 'vec' from type 'int'
stream.c: stream.c:176: error: incompatible types when assigning to type 'vec' from type 'int'
stream.c: stream.c:176: error: incompatible types when assigning to type 'vec' from type 'int'
stream.c: stream.c:176: error: incompatible types when assigning to type 'vec' from type 'int'
stream.c: stream.c:176: error: incompatible types when assigning to type 'vec' from type 'int'
stream.c: stream.c:176: error: incompatible types when assigning to type 'vec' from type 'int'
stream.c: stream.c:176: error: incompatible types when assigning to type 'vec' from type 'int'
stream.c: stream.c:176: error: incompatible types when assigning to type 'vec' from type 'int'
stream.c: stream.c:176: error: incompatible types when assigning to type 'vec' from type 'int'
stream.c: stream.c:176: error: incompatible types when assigning to type 'vec' from type 'int'
stream.c: stream.c:176: error: incompatible types when assigning to type 'vec' from type 'int'
stream.c: stream.c:177: error: incompatible types when assigning to type 'vec' from type 'int'
stream.c: stream.c:177: error: incompatible types when assigning to type 'vec' from type 'int'
stream.c: stream.c:177: error: incompatible types when assigning to type 'vec' from type 'int'
stream.c: ...

Number of similar (compiler,implementation) pairs: 27, namely:
CompilerImplementations
cc krovetz
gcc krovetz
gcc -O2 -fomit-frame-pointer krovetz
gcc -O3 -fomit-frame-pointer krovetz
gcc -O -fomit-frame-pointer krovetz
gcc -Os -fomit-frame-pointer krovetz
gcc -fno-schedule-insns -O2 -fomit-frame-pointer krovetz
gcc -fno-schedule-insns -O3 -fomit-frame-pointer krovetz
gcc -fno-schedule-insns -O -fomit-frame-pointer krovetz
gcc -fno-schedule-insns -Os -fomit-frame-pointer krovetz
gcc -funroll-loops krovetz
gcc -funroll-loops -O2 -fomit-frame-pointer krovetz
gcc -funroll-loops -O3 -fomit-frame-pointer krovetz
gcc -funroll-loops -O -fomit-frame-pointer krovetz
gcc -funroll-loops -Os -fomit-frame-pointer krovetz
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer krovetz
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer krovetz
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer krovetz
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer krovetz
gcc -funroll-loops -mabi=32 -O2 -fomit-frame-pointer krovetz
gcc -funroll-loops -mabi=32 -O3 -fomit-frame-pointer krovetz
gcc -funroll-loops -mabi=32 -O -fomit-frame-pointer krovetz
gcc -funroll-loops -mabi=32 -Os -fomit-frame-pointer krovetz
gcc -mabi=32 -O2 -fomit-frame-pointer krovetz
gcc -mabi=32 -O3 -fomit-frame-pointer krovetz
gcc -mabi=32 -O -fomit-frame-pointer krovetz
gcc -mabi=32 -Os -fomit-frame-pointer krovetz