Implementation notes: amd64, jos, crypto_aead/scream10v1

Computer: jos
Architecture: amd64
CPU ID: GenuineIntel-00010676-bfebfbff
SUPERCOP version: 20141014
Operation: crypto_aead
Primitive: scream10v1
TimeImplementationCompilerBenchmark dateSUPERCOP version
533265refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2014070920140622
533325refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2014070920140622
535440refgcc -march=nocona -O3 -fomit-frame-pointer2014070920140622
536272refgcc -march=k8 -O3 -fomit-frame-pointer2014070920140622
536685refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2014070920140622
536707refgcc -m64 -O3 -fomit-frame-pointer2014070920140622
536895refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2014070920140622
537105refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2014070920140622
538005refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2014070920140622
538327refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2014070920140622
538350refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2014070920140622
538935refgcc -march=barcelona -O3 -fomit-frame-pointer2014070920140622
539355refgcc -O3 -fomit-frame-pointer2014070920140622
540428refgcc -funroll-loops -O3 -fomit-frame-pointer2014070920140622
541567refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2014070920140622
542573refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014070920140622
542970refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2014070920140622
543270refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2014070920140622
543803refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2014070920140622
543863refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014070920140622
546367refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2014070920140622
547005refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2014070920140622
574740refgcc -funroll-loops -O -fomit-frame-pointer2014070920140622
576975refgcc -funroll-loops -m64 -O -fomit-frame-pointer2014070920140622
578962refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014070920140622
580650refgcc -funroll-loops -O2 -fomit-frame-pointer2014070920140622
582037refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014070920140622
583192refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2014070920140622
583500refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2014070920140622
584152refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2014070920140622
584265refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2014070920140622
584722refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2014070920140622
586223refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2014070920140622
586260refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2014070920140622
587835refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2014070920140622
588645refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2014070920140622
590123refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2014070920140622
590985refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2014070920140622
596827refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2014070920140622
597075refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2014070920140622
664583refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2014070920140622
666548refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2014070920140622
667890refgcc -march=nocona -O2 -fomit-frame-pointer2014070920140622
667987refgcc -m64 -O2 -fomit-frame-pointer2014070920140622
670440refgcc -O2 -fomit-frame-pointer2014070920140622
671580refgcc -m64 -march=k8 -O -fomit-frame-pointer2014070920140622
674138refgcc -m64 -O -fomit-frame-pointer2014070920140622
675518refgcc -fno-schedule-insns -O -fomit-frame-pointer2014070920140622
675548refgcc -O -fomit-frame-pointer2014070920140622
675675refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2014070920140622
676162refgcc -march=nocona -O -fomit-frame-pointer2014070920140622
676732refgcc -march=k8 -O2 -fomit-frame-pointer2014070920140622
677018refgcc -m64 -march=nocona -O -fomit-frame-pointer2014070920140622
677445refgcc -march=barcelona -O2 -fomit-frame-pointer2014070920140622
678637refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2014070920140622
678892refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014070920140622
679020refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2014070920140622
679073refgcc -march=k8 -O -fomit-frame-pointer2014070920140622
679635refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2014070920140622
680430refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2014070920140622
681023refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2014070920140622
681165refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2014070920140622
682193refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2014070920140622
683303refgcc -m64 -march=barcelona -O -fomit-frame-pointer2014070920140622
684307refgcc -march=barcelona -O -fomit-frame-pointer2014070920140622
684473refgcc -m64 -march=core2 -O -fomit-frame-pointer2014070920140622
736763refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2014070920140622
738015refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2014070920140622
748905refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2014070920140622
749752refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2014070920140622
750210refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014070920140622
750345refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2014070920140622
750848refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2014070920140622
755932refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2014070920140622
758438refgcc -funroll-loops -Os -fomit-frame-pointer2014070920140622
764692refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2014070920140622
802657refgcc -march=nocona -Os -fomit-frame-pointer2014070920140622
805822refgcc -m64 -march=nocona -Os -fomit-frame-pointer2014070920140622
813353refgcc -m64 -march=k8 -Os -fomit-frame-pointer2014070920140622
814912refgcc -Os -fomit-frame-pointer2014070920140622
816563refgcc -m64 -Os -fomit-frame-pointer2014070920140622
817583refgcc -fno-schedule-insns -Os -fomit-frame-pointer2014070920140622
818280refgcc -march=barcelona -Os -fomit-frame-pointer2014070920140622
819938refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2014070920140622
821888refgcc -march=k8 -Os -fomit-frame-pointer2014070920140622
825000refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2014070920140622
825413refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2014070920140622
828158refgcc -m64 -march=core2 -Os -fomit-frame-pointer2014070920140622
2339910refgcc2014070920140622
2342828refcc2014070920140622
2350208refgcc -funroll-loops2014070920140622

Compiler output

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