Implementation notes: amd64, enigma, crypto_aead/scream10v1

Computer: enigma
Architecture: amd64
CPU ID: GenuineIntel-000006fb-bfebfbff
SUPERCOP version: 20140529
Operation: crypto_aead
Primitive: scream10v1
TimeImplementationCompilerBenchmark dateSUPERCOP version
542511refgcc -m64 -O3 -fomit-frame-pointer2014060420140529
542565refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2014060420140529
543114refgcc -march=nocona -O3 -fomit-frame-pointer2014060420140529
543807refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2014060420140529
543807refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2014060420140529
545409refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2014060420140529
545742refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2014060420140529
546363refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014060420140529
546525refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2014060420140529
546948refgcc -funroll-loops -O3 -fomit-frame-pointer2014060420140529
547614refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2014060420140529
547695refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2014060420140529
547803refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2014060420140529
548838refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2014060420140529
549279refgcc -march=barcelona -O3 -fomit-frame-pointer2014060420140529
549549refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2014060420140529
549603refgcc -O3 -fomit-frame-pointer2014060420140529
551025refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2014060420140529
551655refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2014060420140529
551763refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014060420140529
551799refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2014060420140529
552015refgcc -march=k8 -O3 -fomit-frame-pointer2014060420140529
558414refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2014060420140529
626544refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2014060420140529
626796refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2014060420140529
641070refgcc -funroll-loops -m64 -O -fomit-frame-pointer2014060420140529
641988refgcc -funroll-loops -O -fomit-frame-pointer2014060420140529
642132refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014060420140529
644436refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2014060420140529
645525refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2014060420140529
645957refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2014060420140529
646218refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2014060420140529
646461refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2014060420140529
646677refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2014060420140529
649728refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2014060420140529
649962refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2014060420140529
656280refgcc -funroll-loops -O2 -fomit-frame-pointer2014060420140529
657063refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014060420140529
657099refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2014060420140529
715086refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2014060420140529
715527refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2014060420140529
752598refgcc -march=barcelona -O2 -fomit-frame-pointer2014060420140529
752742refgcc -m64 -O2 -fomit-frame-pointer2014060420140529
752823refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2014060420140529
754065refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2014060420140529
754263refgcc -march=nocona -O2 -fomit-frame-pointer2014060420140529
754452refgcc -O2 -fomit-frame-pointer2014060420140529
754488refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2014060420140529
754497refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2014060420140529
754803refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2014060420140529
754956refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2014060420140529
755208refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2014060420140529
755595refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014060420140529
761067refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2014060420140529
767610refgcc -march=k8 -O2 -fomit-frame-pointer2014060420140529
789597refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2014060420140529
789939refgcc -march=k8 -Os -fomit-frame-pointer2014060420140529
790011refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2014060420140529
791505refgcc -fno-schedule-insns -Os -fomit-frame-pointer2014060420140529
791730refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2014060420140529
791766refgcc -m64 -march=core2 -Os -fomit-frame-pointer2014060420140529
792315refgcc -Os -fomit-frame-pointer2014060420140529
792495refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2014060420140529
792981refgcc -m64 -Os -fomit-frame-pointer2014060420140529
793305refgcc -march=nocona -O -fomit-frame-pointer2014060420140529
793746refgcc -m64 -march=k8 -Os -fomit-frame-pointer2014060420140529
793935refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2014060420140529
794403refgcc -march=barcelona -Os -fomit-frame-pointer2014060420140529
795276refgcc -march=nocona -Os -fomit-frame-pointer2014060420140529
795951refgcc -m64 -march=k8 -O -fomit-frame-pointer2014060420140529
796491refgcc -m64 -march=nocona -Os -fomit-frame-pointer2014060420140529
797733refgcc -march=k8 -O -fomit-frame-pointer2014060420140529
797859refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2014060420140529
797931refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2014060420140529
798696refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2014060420140529
800046refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2014060420140529
800388refgcc -funroll-loops -Os -fomit-frame-pointer2014060420140529
801063refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2014060420140529
801540refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014060420140529
801729refgcc -march=barcelona -O -fomit-frame-pointer2014060420140529
801909refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2014060420140529
802476refgcc -m64 -march=barcelona -O -fomit-frame-pointer2014060420140529
802602refgcc -m64 -march=barcelona -O -fomit-frame-pointer2014060420140529
804780refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2014060420140529
808983refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2014060420140529
808992refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2014060420140529
809307refgcc -m64 -march=core2 -O -fomit-frame-pointer2014060420140529
809685refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2014060420140529
813060refgcc -m64 -O -fomit-frame-pointer2014060420140529
813069refgcc -fno-schedule-insns -O -fomit-frame-pointer2014060420140529
813717refgcc -O -fomit-frame-pointer2014060420140529
858663refgcc -m64 -march=nocona -O -fomit-frame-pointer2014060420140529
2258064refgcc -funroll-loops2014060420140529
2292849refgcc2014060420140529
2297385refcc2014060420140529

Compiler output

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