Implementation notes: amd64, bigmem, crypto_aead/scream12v1

Computer: bigmem
Architecture: amd64
CPU ID: GenuineIntel-000206e6-bfebfbff
SUPERCOP version: 20141124
Operation: crypto_aead
Primitive: scream12v1
TimeImplementationCompilerBenchmark dateSUPERCOP version
523999refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2015021620141124
524022refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2015021620141124
524467refgcc -funroll-loops -O3 -fomit-frame-pointer2015021620141124
525643refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2015021620141124
526116refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2015021620141124
526142refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2015021620141124
526867refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2015021620141124
530462refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2015021620141124
530547refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2015021620141124
530876refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2015021620141124
532307refgcc -march=nocona -O3 -fomit-frame-pointer2015021620141124
532429refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2015021620141124
532474refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2015021620141124
532576refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2015021620141124
533369refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2015021620141124
533803refgcc -O3 -fomit-frame-pointer2015021620141124
533863refgcc -m64 -O3 -fomit-frame-pointer2015021620141124
533993refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2015021620141124
538713refgcc -march=k8 -O3 -fomit-frame-pointer2015021620141124
538784refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2015021620141124
540166refgcc -march=barcelona -O3 -fomit-frame-pointer2015021620141124
540271refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2015021620141124
614873refgcc -funroll-loops -O -fomit-frame-pointer2015021620141124
614873refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2015021620141124
614873refgcc -funroll-loops -m64 -O -fomit-frame-pointer2015021620141124
618820refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2015021620141124
619001refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2015021620141124
619939refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2015021620141124
619973refgcc -funroll-loops -O2 -fomit-frame-pointer2015021620141124
619976refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2015021620141124
621902refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2015021620141124
621956refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2015021620141124
622030refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2015021620141124
622036refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2015021620141124
622237refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2015021620141124
622378refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2015021620141124
622687refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2015021620141124
623534refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2015021620141124
690642refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2015021620141124
690988refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2015021620141124
739251refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2015021620141124
740789refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2015021620141124
741200refgcc -march=k8 -O2 -fomit-frame-pointer2015021620141124
741316refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2015021620141124
745274refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2015021620141124
745946refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2015021620141124
748218refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2015021620141124
748694refgcc -march=barcelona -O2 -fomit-frame-pointer2015021620141124
749519refgcc -O2 -fomit-frame-pointer2015021620141124
749536refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2015021620141124
750224refgcc -m64 -O2 -fomit-frame-pointer2015021620141124
750703refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2015021620141124
753205refgcc -march=nocona -O2 -fomit-frame-pointer2015021620141124
756744refgcc -march=k8 -Os -fomit-frame-pointer2015021620141124
756905refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2015021620141124
757656refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2015021620141124
757656refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2015021620141124
758107refgcc -march=barcelona -Os -fomit-frame-pointer2015021620141124
758974refgcc -m64 -march=nocona -Os -fomit-frame-pointer2015021620141124
767097refgcc -fno-schedule-insns -Os -fomit-frame-pointer2015021620141124
767111refgcc -m64 -Os -fomit-frame-pointer2015021620141124
767142refgcc -Os -fomit-frame-pointer2015021620141124
767258refgcc -m64 -march=k8 -Os -fomit-frame-pointer2015021620141124
767720refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2015021620141124
767822refgcc -m64 -march=core2 -Os -fomit-frame-pointer2015021620141124
771837refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2015021620141124
771961refgcc -march=nocona -Os -fomit-frame-pointer2015021620141124
772129refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2015021620141124
772233refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2015021620141124
772658refgcc -funroll-loops -Os -fomit-frame-pointer2015021620141124
772786refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2015021620141124
772916refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2015021620141124
773007refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2015021620141124
784802refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2015021620141124
788185refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2015021620141124
790262refgcc -m64 -march=barcelona -O -fomit-frame-pointer2015021620141124
796084refgcc -march=nocona -O -fomit-frame-pointer2015021620141124
800400refgcc -march=k8 -O -fomit-frame-pointer2015021620141124
802737refgcc -m64 -march=nocona -O -fomit-frame-pointer2015021620141124
803953refgcc -m64 -march=core2 -O -fomit-frame-pointer2015021620141124
804083refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2015021620141124
804089refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2015021620141124
804749refgcc -m64 -O -fomit-frame-pointer2015021620141124
804899refgcc -fno-schedule-insns -O -fomit-frame-pointer2015021620141124
805404refgcc -march=barcelona -O -fomit-frame-pointer2015021620141124
807098refgcc -m64 -march=k8 -O -fomit-frame-pointer2015021620141124
810781refgcc -O -fomit-frame-pointer2015021620141124
816618refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2015021620141124
2241042refgcc2015021620141124
2241300refgcc -funroll-loops2015021620141124
2241677refcc2015021620141124

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:212: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:216: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:217: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:224: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:225: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:229: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:230: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c: In function 'LBoxInv16P':
scream.c: scream.c:280: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:281: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:285: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:286: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:293: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:294: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:298: 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: 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:212: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:216: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:217: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:224: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:225: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:229: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:230: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c: In function 'LBoxInv16P':
scream.c: scream.c:280: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:281: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:285: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:286: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:293: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:294: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:298: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: ...
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:212: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:216: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:217: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:224: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:225: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:229: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:230: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c: In function 'LBoxInv16P':
scream.c: scream.c:280: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:281: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:285: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:286: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:293: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:294: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:298: 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: 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