Implementation notes: amd64, jos, crypto_aead/scream10v2

Computer: jos
Architecture: amd64
CPU ID: GenuineIntel-00010676-bfebfbff
SUPERCOP version: 20141014
Operation: crypto_aead
Primitive: scream10v2
TimeImplementationCompilerBenchmark dateSUPERCOP version
533872refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2014070920140622
535358refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2014070920140622
535530refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2014070920140622
536063refgcc -march=k8 -O3 -fomit-frame-pointer2014070920140622
536437refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2014070920140622
536633refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2014070920140622
536775refgcc -march=barcelona -O3 -fomit-frame-pointer2014070920140622
537930refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2014070920140622
538508refgcc -m64 -O3 -fomit-frame-pointer2014070920140622
539160refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2014070920140622
539378refgcc -O3 -fomit-frame-pointer2014070920140622
540532refgcc -funroll-loops -O3 -fomit-frame-pointer2014070920140622
540765refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2014070920140622
541350refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2014070920140622
541478refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2014070920140622
541515refgcc -march=nocona -O3 -fomit-frame-pointer2014070920140622
541792refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2014070920140622
542363refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014070920140622
542888refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014070920140622
543615refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2014070920140622
543780refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2014070920140622
544732refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2014070920140622
577935refgcc -funroll-loops -O -fomit-frame-pointer2014070920140622
578033refgcc -funroll-loops -m64 -O -fomit-frame-pointer2014070920140622
578370refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014070920140622
581662refgcc -funroll-loops -O2 -fomit-frame-pointer2014070920140622
583132refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2014070920140622
583560refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2014070920140622
584625refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2014070920140622
584797refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014070920140622
584977refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2014070920140622
586545refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2014070920140622
587940refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2014070920140622
589065refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2014070920140622
589387refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2014070920140622
589583refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2014070920140622
590640refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2014070920140622
590663refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2014070920140622
592755refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2014070920140622
592853refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2014070920140622
663173refgcc -m64 -march=nocona -O -fomit-frame-pointer2014070920140622
663540refgcc -march=nocona -O -fomit-frame-pointer2014070920140622
665152refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2014070920140622
667087refgcc -march=nocona -O2 -fomit-frame-pointer2014070920140622
668843refgcc -m64 -march=k8 -O -fomit-frame-pointer2014070920140622
669487refgcc -m64 -O2 -fomit-frame-pointer2014070920140622
669750refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2014070920140622
669892refgcc -O2 -fomit-frame-pointer2014070920140622
669930refgcc -march=k8 -O -fomit-frame-pointer2014070920140622
672278refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2014070920140622
674513refgcc -m64 -O -fomit-frame-pointer2014070920140622
674678refgcc -march=barcelona -O2 -fomit-frame-pointer2014070920140622
676620refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2014070920140622
676740refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2014070920140622
677205refgcc -fno-schedule-insns -O -fomit-frame-pointer2014070920140622
677347refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2014070920140622
677542refgcc -march=k8 -O2 -fomit-frame-pointer2014070920140622
677835refgcc -m64 -march=core2 -O -fomit-frame-pointer2014070920140622
679147refgcc -O -fomit-frame-pointer2014070920140622
681307refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2014070920140622
683078refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014070920140622
683265refgcc -march=barcelona -O -fomit-frame-pointer2014070920140622
683520refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2014070920140622
684015refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2014070920140622
685350refgcc -m64 -march=barcelona -O -fomit-frame-pointer2014070920140622
686505refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2014070920140622
745718refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2014070920140622
748643refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2014070920140622
748778refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2014070920140622
749617refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2014070920140622
752295refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014070920140622
752610refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2014070920140622
753000refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2014070920140622
753113refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2014070920140622
753217refgcc -funroll-loops -Os -fomit-frame-pointer2014070920140622
792638refgcc -march=nocona -Os -fomit-frame-pointer2014070920140622
808973refgcc -m64 -march=nocona -Os -fomit-frame-pointer2014070920140622
816802refgcc -march=k8 -Os -fomit-frame-pointer2014070920140622
816885refgcc -Os -fomit-frame-pointer2014070920140622
817103refgcc -fno-schedule-insns -Os -fomit-frame-pointer2014070920140622
817823refgcc -march=barcelona -Os -fomit-frame-pointer2014070920140622
818670refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2014070920140622
821992refgcc -m64 -Os -fomit-frame-pointer2014070920140622
824100refgcc -m64 -march=k8 -Os -fomit-frame-pointer2014070920140622
830760refgcc -m64 -march=core2 -Os -fomit-frame-pointer2014070920140622
838163refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2014070920140622
840435refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2014070920140622
844140refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2014070920140622
2327287refcc2014070920140622
2328533refgcc2014070920140622
2339917refgcc -funroll-loops2014070920140622

Compiler output

Implementation: crypto_aead/scream10v2/sse
Compiler: cc
scream.c: scream.c: In function 'LBox16P':
scream.c: scream.c:185:8: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:186:8: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:190:8: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:191:8: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:198:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:199:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:203:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:204:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:211:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:212:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:216:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:217:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:224:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:225:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:229:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:230:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c: In function 'LBoxInv16P':
scream.c: scream.c:280:8: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:281:8: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:285:8: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:286:8: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:293:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:294:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:298:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: ...

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/scream10v2/sse
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
scream.c: scream.c: In function 'LBox16P':
scream.c: scream.c:185:8: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:186:8: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:190:8: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:191:8: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:198:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:199:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:203:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:204:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:211:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:212:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:216:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:217:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:224:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:225:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:229:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:230:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c: In function 'LBoxInv16P':
scream.c: scream.c:280:8: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:281:8: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:285:8: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:286:8: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:293:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:294:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:298:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: ...
scream.c: scream.c: In function 'LBox16P':
scream.c: scream.c:185:8: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:186:8: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:190:8: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:191:8: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:198:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:199:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:203:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:204:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:211:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:212:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:216:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:217:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:224:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:225:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:229:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:230:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c: In function 'LBoxInv16P':
scream.c: scream.c:280:8: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:281:8: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:285:8: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:286:8: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:293:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:294:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:298:7: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: ...

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/scream10v2/sse
Compiler: gcc -m64 -march=core2 -O2 -fomit-frame-pointer
scream.c: scream.c: In function 'tweakey_set':
scream.c: scream.c:412:16: 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