Implementation notes: amd64, jos, crypto_aead/scream12v1

Computer: jos
Architecture: amd64
CPU ID: GenuineIntel-00010676-bfebfbff
SUPERCOP version: 20141014
Operation: crypto_aead
Primitive: scream12v1
TimeImplementationCompilerBenchmark dateSUPERCOP version
617460refgcc -march=nocona -O3 -fomit-frame-pointer2014070920140622
617670refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2014070920140622
621623refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2014070920140622
621780refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2014070920140622
621878refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2014070920140622
622072refgcc -march=k8 -O3 -fomit-frame-pointer2014070920140622
622590refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2014070920140622
622740refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2014070920140622
623220refgcc -m64 -O3 -fomit-frame-pointer2014070920140622
626055refgcc -O3 -fomit-frame-pointer2014070920140622
626767refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2014070920140622
626813refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2014070920140622
626865refgcc -funroll-loops -O3 -fomit-frame-pointer2014070920140622
627255refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2014070920140622
628275refgcc -march=barcelona -O3 -fomit-frame-pointer2014070920140622
628463refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2014070920140622
628553refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014070920140622
630518refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2014070920140622
632205refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2014070920140622
632265refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2014070920140622
632557refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014070920140622
634575refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2014070920140622
683325refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2014070920140622
683753refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2014070920140622
684037refgcc -funroll-loops -m64 -O -fomit-frame-pointer2014070920140622
684113refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2014070920140622
684188refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014070920140622
684308refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2014070920140622
684555refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2014070920140622
684720refgcc -funroll-loops -O -fomit-frame-pointer2014070920140622
685417refgcc -funroll-loops -O2 -fomit-frame-pointer2014070920140622
686565refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014070920140622
687630refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2014070920140622
687892refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2014070920140622
691223refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2014070920140622
691657refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2014070920140622
692370refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2014070920140622
692558refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2014070920140622
708292refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2014070920140622
708330refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2014070920140622
765780refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2014070920140622
777615refgcc -m64 -march=k8 -O -fomit-frame-pointer2014070920140622
778073refgcc -m64 -march=nocona -O -fomit-frame-pointer2014070920140622
779198refgcc -m64 -O -fomit-frame-pointer2014070920140622
780202refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2014070920140622
780375refgcc -m64 -O2 -fomit-frame-pointer2014070920140622
780915refgcc -O2 -fomit-frame-pointer2014070920140622
782310refgcc -march=nocona -O -fomit-frame-pointer2014070920140622
783173refgcc -O -fomit-frame-pointer2014070920140622
784598refgcc -march=k8 -O -fomit-frame-pointer2014070920140622
784868refgcc -fno-schedule-insns -O -fomit-frame-pointer2014070920140622
784988refgcc -march=barcelona -O2 -fomit-frame-pointer2014070920140622
785145refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2014070920140622
785370refgcc -march=nocona -O2 -fomit-frame-pointer2014070920140622
785438refgcc -march=k8 -O2 -fomit-frame-pointer2014070920140622
785985refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2014070920140622
787575refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2014070920140622
787972refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2014070920140622
788910refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2014070920140622
790508refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2014070920140622
790598refgcc -m64 -march=barcelona -O -fomit-frame-pointer2014070920140622
794108refgcc -m64 -march=core2 -O -fomit-frame-pointer2014070920140622
798443refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2014070920140622
801652refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014070920140622
802605refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2014070920140622
805252refgcc -march=barcelona -O -fomit-frame-pointer2014070920140622
853005refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2014070920140622
854182refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2014070920140622
867645refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2014070920140622
867803refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2014070920140622
868440refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2014070920140622
868627refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2014070920140622
869288refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014070920140622
869452refgcc -funroll-loops -Os -fomit-frame-pointer2014070920140622
876157refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2014070920140622
919740refgcc -march=nocona -Os -fomit-frame-pointer2014070920140622
923610refgcc -m64 -march=nocona -Os -fomit-frame-pointer2014070920140622
943200refgcc -march=k8 -Os -fomit-frame-pointer2014070920140622
949365refgcc -march=barcelona -Os -fomit-frame-pointer2014070920140622
954398refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2014070920140622
956070refgcc -m64 -march=k8 -Os -fomit-frame-pointer2014070920140622
963517refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2014070920140622
965422refgcc -m64 -march=core2 -Os -fomit-frame-pointer2014070920140622
966578refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2014070920140622
967808refgcc -fno-schedule-insns -Os -fomit-frame-pointer2014070920140622
968152refgcc -Os -fomit-frame-pointer2014070920140622
969487refgcc -m64 -Os -fomit-frame-pointer2014070920140622
978465refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2014070920140622
2765137refcc2014070920140622
2772623refgcc2014070920140622
2773957refgcc -funroll-loops2014070920140622

Compiler output

Implementation: crypto_aead/scream12v1/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/scream12v1/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/scream12v1/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