Implementation notes: amd64, enigma, crypto_aead/scream12v1

Computer: enigma
Architecture: amd64
CPU ID: GenuineIntel-000006fb-bfebfbff
SUPERCOP version: 20140529
Operation: crypto_aead
Primitive: scream12v1
TimeImplementationCompilerBenchmark dateSUPERCOP version
620730refgcc -m64 -O3 -fomit-frame-pointer2014060420140529
621216refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2014060420140529
628317refgcc -O3 -fomit-frame-pointer2014060420140529
629865refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2014060420140529
630162refgcc -march=nocona -O3 -fomit-frame-pointer2014060420140529
631152refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2014060420140529
632286refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2014060420140529
632637refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2014060420140529
632700refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014060420140529
633078refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2014060420140529
633384refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2014060420140529
634950refgcc -march=k8 -O3 -fomit-frame-pointer2014060420140529
635589refgcc -funroll-loops -O3 -fomit-frame-pointer2014060420140529
635661refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2014060420140529
635949refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2014060420140529
635976refgcc -march=barcelona -O3 -fomit-frame-pointer2014060420140529
636030refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2014060420140529
636129refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2014060420140529
636255refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2014060420140529
636273refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2014060420140529
636282refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014060420140529
636561refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2014060420140529
636642refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2014060420140529
731394refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2014060420140529
731970refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2014060420140529
757170refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2014060420140529
757863refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2014060420140529
762939refgcc -funroll-loops -O -fomit-frame-pointer2014060420140529
763020refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014060420140529
763335refgcc -funroll-loops -m64 -O -fomit-frame-pointer2014060420140529
763515refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2014060420140529
763695refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2014060420140529
763893refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2014060420140529
765036refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2014060420140529
767007refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2014060420140529
767133refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2014060420140529
768312refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014060420140529
768789refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2014060420140529
768816refgcc -funroll-loops -O2 -fomit-frame-pointer2014060420140529
847017refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2014060420140529
847071refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2014060420140529
872721refgcc -march=nocona -O2 -fomit-frame-pointer2014060420140529
873495refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2014060420140529
877230refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2014060420140529
878076refgcc -O2 -fomit-frame-pointer2014060420140529
878625refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2014060420140529
878706refgcc -m64 -O2 -fomit-frame-pointer2014060420140529
879336refgcc -march=barcelona -O2 -fomit-frame-pointer2014060420140529
879534refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2014060420140529
880272refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2014060420140529
880344refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2014060420140529
880821refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2014060420140529
881820refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014060420140529
885771refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2014060420140529
893196refgcc -march=k8 -O2 -fomit-frame-pointer2014060420140529
919557refgcc -m64 -march=nocona -O -fomit-frame-pointer2014060420140529
922122refgcc -Os -fomit-frame-pointer2014060420140529
922167refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2014060420140529
922176refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2014060420140529
923337refgcc -funroll-loops -Os -fomit-frame-pointer2014060420140529
923337refgcc -m64 -Os -fomit-frame-pointer2014060420140529
923445refgcc -m64 -march=k8 -Os -fomit-frame-pointer2014060420140529
923652refgcc -march=k8 -Os -fomit-frame-pointer2014060420140529
923760refgcc -m64 -march=core2 -Os -fomit-frame-pointer2014060420140529
924012refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2014060420140529
924363refgcc -fno-schedule-insns -Os -fomit-frame-pointer2014060420140529
924777refgcc -m64 -march=nocona -Os -fomit-frame-pointer2014060420140529
924975refgcc -march=k8 -O -fomit-frame-pointer2014060420140529
925290refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2014060420140529
926730refgcc -march=barcelona -Os -fomit-frame-pointer2014060420140529
927225refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2014060420140529
927288refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2014060420140529
927945refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2014060420140529
928089refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2014060420140529
933417refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2014060420140529
934182refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2014060420140529
934650refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2014060420140529
935154refgcc -m64 -march=barcelona -O -fomit-frame-pointer2014060420140529
935163refgcc -m64 -march=barcelona -O -fomit-frame-pointer2014060420140529
935469refgcc -march=barcelona -O -fomit-frame-pointer2014060420140529
938196refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2014060420140529
938367refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014060420140529
944820refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2014060420140529
944937refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2014060420140529
944955refgcc -m64 -march=core2 -O -fomit-frame-pointer2014060420140529
949626refgcc -fno-schedule-insns -O -fomit-frame-pointer2014060420140529
949968refgcc -O -fomit-frame-pointer2014060420140529
950094refgcc -m64 -O -fomit-frame-pointer2014060420140529
950733refgcc -march=nocona -Os -fomit-frame-pointer2014060420140529
951147refgcc -m64 -march=k8 -O -fomit-frame-pointer2014060420140529
964107refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2014060420140529
1000134refgcc -march=nocona -O -fomit-frame-pointer2014060420140529
2631042refgcc -funroll-loops2014060420140529
2635497refcc2014060420140529
2642337refgcc2014060420140529

Compiler output

Implementation: crypto_aead/scream12v1/sse
Compiler: cc
scream.c: scream.c: In function 'LBox16P':
scream.c: scream.c:185: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:186: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:190: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:191: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:198: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:199: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:203: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:204: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:211: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: ...
scream.c: scream.c:306: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:307: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:311: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:312: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:319: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:320: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:324: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:325: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c: In function 'tweakey_set':
scream.c: scream.c:411: error: subscripted value is neither array nor pointer

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

Compiler output

Implementation: crypto_aead/scream12v1/sse
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
scream.c: scream.c: In function 'LBox16P':
scream.c: scream.c:185: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:186: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:190: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:191: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:198: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:199: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:203: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:204: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:211: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: ...
scream.c: scream.c:306: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:307: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:311: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:312: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:319: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:320: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:324: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:325: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c: In function 'tweakey_set':
scream.c: scream.c:411: error: subscripted value is neither array nor pointer
scream.c: scream.c: In function 'LBox16P':
scream.c: scream.c:185: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:186: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:190: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:191: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:198: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:199: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:203: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:204: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:211: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: ...
scream.c: scream.c:306: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:307: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:311: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:312: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:319: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:320: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:324: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:325: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c: In function 'tweakey_set':
scream.c: scream.c:411: error: subscripted value is neither array nor pointer

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

Compiler output

Implementation: crypto_aead/scream12v1/sse
Compiler: gcc -m64 -march=core2 -O2 -fomit-frame-pointer
scream.c: scream.c: In function 'tweakey_set':
scream.c: scream.c:411: error: subscripted value is neither array nor pointer

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