Implementation notes: amd64, elroy, crypto_hash/blake256

Computer: elroy
Architecture: amd64
CPU ID: GenuineIntel-000206a7-bfebfbff
SUPERCOP version: 20110106
Operation: crypto_hash
Primitive: blake256
TimeImplementationCompilerBenchmark dateSUPERCOP version
13360ssse3gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2011012120110106
13424ssse3gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2011012120110106
13440ssse3gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2011012120110106
13736ssse3gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2011012120110106
13828ssse3gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2011012120110106
13940ssse3gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2011012120110106
13940ssse3gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2011012120110106
13952ssse3gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2011012120110106
14220ssse3gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2011012120110106
14232ssse3gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2011012120110106
14240ssse3gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2011012120110106
14256ssse3gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2011012120110106
14428ssse3gcc -m64 -march=core2 -Os -fomit-frame-pointer2011012120110106
14488ssse3gcc -m64 -march=core2 -O -fomit-frame-pointer2011012120110106
15448ssse3gcc -m64 -march=core2 -O2 -fomit-frame-pointer2011012120110106
15472ssse3gcc -m64 -march=core2 -O3 -fomit-frame-pointer2011012120110106
15928sse2gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2011012120110106
16196sse2gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2011012120110106
16312sse2gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2011012120110106
16500sse2gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2011012120110106
16856sse2gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2011012120110106
16864sse2gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2011012120110106
17120sse2gcc -march=nocona -Os -fomit-frame-pointer2011012120110106
17124sse2gcc -m64 -march=nocona -Os -fomit-frame-pointer2011012120110106
17204sse2gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2011012120110106
17228sse2gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2011012120110106
17268sse2gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2011012120110106
17268sse2gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2011012120110106
17276sse2gcc -m64 -march=k8 -O -fomit-frame-pointer2011012120110106
17276sse2gcc -march=k8 -O -fomit-frame-pointer2011012120110106
17352sse2gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2011012120110106
17388sse2gcc -funroll-loops -march=k8 -O -fomit-frame-pointer2011012120110106
17404sse2gcc -m64 -march=core2 -Os -fomit-frame-pointer2011012120110106
17440sse2gcc -m64 -march=barcelona -Os -fomit-frame-pointer2011012120110106
17452sse2gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2011012120110106
17460sse2gcc -march=barcelona -Os -fomit-frame-pointer2011012120110106
17476sse2gcc -fno-schedule-insns -Os -fomit-frame-pointer2011012120110106
17480sse2gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2011012120110106
17484sse2gcc -m64 -march=k8 -Os -fomit-frame-pointer2011012120110106
17488sse2gcc -march=k8 -Os -fomit-frame-pointer2011012120110106
17496sse2gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2011012120110106
17496sse2gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2011012120110106
17504sse2gcc -Os -fomit-frame-pointer2011012120110106
17504sse2gcc -m64 -Os -fomit-frame-pointer2011012120110106
17504sse2gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2011012120110106
17524sse2gcc -funroll-loops -Os -fomit-frame-pointer2011012120110106
17528sse2gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2011012120110106
17544sse2gcc -funroll-loops -m64 -Os -fomit-frame-pointer2011012120110106
17552sse2gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2011012120110106
17564sse2gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2011012120110106
17596sse2gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2011012120110106
17832sse2gcc -m64 -O3 -fomit-frame-pointer2011012120110106
17836sse2gcc -O3 -fomit-frame-pointer2011012120110106
17844sse2gcc -m64 -march=nocona -O3 -fomit-frame-pointer2011012120110106
17848sse2gcc -fno-schedule-insns -O3 -fomit-frame-pointer2011012120110106
17852sse2gcc -march=nocona -O2 -fomit-frame-pointer2011012120110106
17860sse2gcc -m64 -march=nocona -O2 -fomit-frame-pointer2011012120110106
17864sse2gcc -march=nocona -O3 -fomit-frame-pointer2011012120110106
17880sse2gcc -funroll-loops -O3 -fomit-frame-pointer2011012120110106
17896sse2gcc -funroll-loops -m64 -O3 -fomit-frame-pointer2011012120110106
17900sse2gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2011012120110106
17944sse2gcc -O2 -fomit-frame-pointer2011012120110106
17948sse2gcc -fno-schedule-insns -O2 -fomit-frame-pointer2011012120110106
17964sse2gcc -m64 -O2 -fomit-frame-pointer2011012120110106
17972sse2gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2011012120110106
18004sse2gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2011012120110106
18008sse2gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2011012120110106
18024sse2gcc -funroll-loops -m64 -O2 -fomit-frame-pointer2011012120110106
18024sse2gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2011012120110106
18068sse2gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2011012120110106
18092sse2gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2011012120110106
18100sse2gcc -funroll-loops -O2 -fomit-frame-pointer2011012120110106
18108sse2gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2011012120110106
18120sse2gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2011012120110106
18208sse2gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2011012120110106
18268sse2gcc -m64 -march=core2 -O3 -fomit-frame-pointer2011012120110106
18364sse2gcc -m64 -march=k8 -O3 -fomit-frame-pointer2011012120110106
18364sse2gcc -march=k8 -O3 -fomit-frame-pointer2011012120110106
18384sse2gcc -m64 -march=k8 -O2 -fomit-frame-pointer2011012120110106
18456sse2gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2011012120110106
18480sse2gcc -march=k8 -O2 -fomit-frame-pointer2011012120110106
18484sse2gcc -march=nocona -O -fomit-frame-pointer2011012120110106
18492sse2gcc -m64 -march=nocona -O -fomit-frame-pointer2011012120110106
18496sse2gcc -m64 -march=core2 -O -fomit-frame-pointer2011012120110106
18500sse2gcc -funroll-loops -m64 -O -fomit-frame-pointer2011012120110106
18532sse2gcc -funroll-loops -O -fomit-frame-pointer2011012120110106
18532sse2gcc -m64 -march=core2 -O2 -fomit-frame-pointer2011012120110106
18564sse2gcc -O -fomit-frame-pointer2011012120110106
18576sse2gcc -m64 -O -fomit-frame-pointer2011012120110106
18580sse2gcc -m64 -march=barcelona -O3 -fomit-frame-pointer2011012120110106
18580sse2gcc -march=barcelona -O2 -fomit-frame-pointer2011012120110106
18596sse2gcc -m64 -march=barcelona -O2 -fomit-frame-pointer2011012120110106
18652sse2gcc -march=barcelona -O3 -fomit-frame-pointer2011012120110106
18672sse2gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2011012120110106
18736sse2gcc -fno-schedule-insns -O -fomit-frame-pointer2011012120110106
18736sse2gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2011012120110106
18768sse2gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2011012120110106
18768sse2gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2011012120110106
18844sse2gcc -funroll-loops -march=nocona -O -fomit-frame-pointer2011012120110106
18884sse2gcc -march=barcelona -O -fomit-frame-pointer2011012120110106
18896sse2gcc -m64 -march=barcelona -O -fomit-frame-pointer2011012120110106
18900sse2gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2011012120110106
18928sse2gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2011012120110106
19008sse2gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2011012120110106
29460refgcc -m64 -O3 -fomit-frame-pointer2011012120110106
29476refgcc -O3 -fomit-frame-pointer2011012120110106
29556refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2011012120110106
29660refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2011012120110106
29732refgcc -funroll-loops -O3 -fomit-frame-pointer2011012120110106
29920refgcc -march=k8 -O3 -fomit-frame-pointer2011012120110106
30016refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2011012120110106
30020refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2011012120110106
30032refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2011012120110106
30124refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2011012120110106
30176refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2011012120110106
30180refgcc -funroll-loops -O2 -fomit-frame-pointer2011012120110106
30180refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2011012120110106
30224refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2011012120110106
30268refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2011012120110106
30292refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2011012120110106
30312refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2011012120110106
30336refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2011012120110106
30424refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2011012120110106
30432refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2011012120110106
30532refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2011012120110106
30640refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2011012120110106
30816refgcc -march=barcelona -O3 -fomit-frame-pointer2011012120110106
30836refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2011012120110106
31328refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2011012120110106
31524refgcc -march=nocona -O3 -fomit-frame-pointer2011012120110106
31552refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2011012120110106
31756refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2011012120110106
32072refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2011012120110106
32100refgcc -march=barcelona -O2 -fomit-frame-pointer2011012120110106
32340refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2011012120110106
32440refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2011012120110106
32460refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2011012120110106
32464refgcc -m64 -O2 -fomit-frame-pointer2011012120110106
32584refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2011012120110106
32688refgcc -O2 -fomit-frame-pointer2011012120110106
32760refgcc -funroll-loops -O -fomit-frame-pointer2011012120110106
32768refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2011012120110106
32784refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2011012120110106
32796refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2011012120110106
32808refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2011012120110106
32836refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2011012120110106
32844refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2011012120110106
32848refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2011012120110106
32852refgcc -funroll-loops -m64 -O -fomit-frame-pointer2011012120110106
33008refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2011012120110106
33144refgcc -march=k8 -O2 -fomit-frame-pointer2011012120110106
33436refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2011012120110106
33480refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2011012120110106
34080refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2011012120110106
34096refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2011012120110106
34432refgcc -m64 -march=k8 -Os -fomit-frame-pointer2011012120110106
34572refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2011012120110106
34628refgcc -Os -fomit-frame-pointer2011012120110106
34668refgcc -march=nocona -O2 -fomit-frame-pointer2011012120110106
34724refgcc -fno-schedule-insns -Os -fomit-frame-pointer2011012120110106
34824refgcc -m64 -Os -fomit-frame-pointer2011012120110106
34836refgcc -funroll-loops -Os -fomit-frame-pointer2011012120110106
34856refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2011012120110106
34860refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2011012120110106
34872refgcc -m64 -march=core2 -Os -fomit-frame-pointer2011012120110106
34912refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2011012120110106
34940refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2011012120110106
34948refgcc -march=barcelona -Os -fomit-frame-pointer2011012120110106
35096refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2011012120110106
35132refgcc -O -fomit-frame-pointer2011012120110106
35140refgcc -m64 -O -fomit-frame-pointer2011012120110106
35156refgcc -m64 -march=nocona -O -fomit-frame-pointer2011012120110106
35160refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2011012120110106
35172refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2011012120110106
35184refgcc -march=k8 -O -fomit-frame-pointer2011012120110106
35208refgcc -fno-schedule-insns -O -fomit-frame-pointer2011012120110106
35236refgcc -march=nocona -O -fomit-frame-pointer2011012120110106
35304refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2011012120110106
35308refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2011012120110106
35316refgcc -march=barcelona -O -fomit-frame-pointer2011012120110106
35324refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2011012120110106
35324refgcc -march=k8 -Os -fomit-frame-pointer2011012120110106
35360refgcc -m64 -march=barcelona -O -fomit-frame-pointer2011012120110106
35580refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2011012120110106
35680refgcc -m64 -march=k8 -O -fomit-frame-pointer2011012120110106
35744refgcc -m64 -march=core2 -O -fomit-frame-pointer2011012120110106
35788refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2011012120110106
36040refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2011012120110106
36332refgcc -m64 -march=nocona -Os -fomit-frame-pointer2011012120110106
36356refgcc -march=nocona -Os -fomit-frame-pointer2011012120110106
36412refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2011012120110106
37796refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2011012120110106
119620refgcc2011012120110106
119620refgcc -funroll-loops2011012120110106
119832refcc2011012120110106
256672sse2gcc -funroll-loops2011012120110106
257056sse2cc2011012120110106
257948sse2gcc2011012120110106

Checksum failure

Implementation: crypto_hash/blake256/sse41
Compiler: gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer
77b2140368fa674bccb8ccb250ddece8ea1d811f592e09b6346086c6c915f7e0
Number of similar (compiler,implementation) pairs: 12, namely:
CompilerImplementations
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer sse41
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer sse41
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer sse41
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer sse41
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer sse41
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer sse41
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer sse41
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer sse41
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer sse41
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer sse41
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer sse41
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer sse41

Compiler output

Implementation: crypto_hash/blake256/sse41
Compiler: cc
hash.c: In file included from hash.c:4:
hash.c: /usr/lib/gcc/x86_64-linux-gnu/4.4.5/include/tmmintrin.h:31: error: #error "SSSE3 instruction set not enabled"
hash.c: In file included from hash.c:5:
hash.c: /usr/lib/gcc/x86_64-linux-gnu/4.4.5/include/smmintrin.h:32: error: #error "SSE4.1 instruction set not enabled"
hash.c: hash.c: In function 'blake256_compress':
hash.c: hash.c:104: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:105: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:106: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:107: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: In file included from hash.c:121:
hash.c: ...
hash.c: rounds.sse41.h:799: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:810: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:813: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:814: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:826: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:833: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:842: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:843: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:858: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:864: error: incompatible types when assigning to type '__m128i' from type 'int'

Number of similar (compiler,implementation) pairs: 71, namely:
CompilerImplementations
cc sse41
gcc sse41
gcc -O2 -fomit-frame-pointer sse41
gcc -O3 -fomit-frame-pointer sse41
gcc -O -fomit-frame-pointer sse41
gcc -Os -fomit-frame-pointer sse41
gcc -fno-schedule-insns -O2 -fomit-frame-pointer sse41
gcc -fno-schedule-insns -O3 -fomit-frame-pointer sse41
gcc -fno-schedule-insns -O -fomit-frame-pointer sse41
gcc -fno-schedule-insns -Os -fomit-frame-pointer sse41
gcc -funroll-loops sse41
gcc -funroll-loops -O2 -fomit-frame-pointer sse41
gcc -funroll-loops -O3 -fomit-frame-pointer sse41
gcc -funroll-loops -O -fomit-frame-pointer sse41
gcc -funroll-loops -Os -fomit-frame-pointer sse41
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer sse41
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer sse41
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer sse41
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer sse41
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer sse41
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer sse41
gcc -funroll-loops -m64 -O -fomit-frame-pointer sse41
gcc -funroll-loops -m64 -Os -fomit-frame-pointer sse41
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer sse41
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer sse41
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer sse41
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer sse41
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer sse41
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer sse41
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer sse41
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer sse41
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer sse41
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer sse41
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer sse41
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer sse41
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer sse41
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer sse41
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer sse41
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer sse41
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer sse41
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer sse41
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer sse41
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer sse41
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer sse41
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer sse41
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer sse41
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer sse41
gcc -m64 -O2 -fomit-frame-pointer sse41
gcc -m64 -O3 -fomit-frame-pointer sse41
gcc -m64 -O -fomit-frame-pointer sse41
gcc -m64 -Os -fomit-frame-pointer sse41
gcc -m64 -march=k8 -O2 -fomit-frame-pointer sse41
gcc -m64 -march=k8 -O3 -fomit-frame-pointer sse41
gcc -m64 -march=k8 -O -fomit-frame-pointer sse41
gcc -m64 -march=k8 -Os -fomit-frame-pointer sse41
gcc -m64 -march=nocona -O2 -fomit-frame-pointer sse41
gcc -m64 -march=nocona -O3 -fomit-frame-pointer sse41
gcc -m64 -march=nocona -O -fomit-frame-pointer sse41
gcc -m64 -march=nocona -Os -fomit-frame-pointer sse41
gcc -march=barcelona -O2 -fomit-frame-pointer sse41
gcc -march=barcelona -O3 -fomit-frame-pointer sse41
gcc -march=barcelona -O -fomit-frame-pointer sse41
gcc -march=barcelona -Os -fomit-frame-pointer sse41
gcc -march=k8 -O2 -fomit-frame-pointer sse41
gcc -march=k8 -O3 -fomit-frame-pointer sse41
gcc -march=k8 -O -fomit-frame-pointer sse41
gcc -march=k8 -Os -fomit-frame-pointer sse41
gcc -march=nocona -O2 -fomit-frame-pointer sse41
gcc -march=nocona -O3 -fomit-frame-pointer sse41
gcc -march=nocona -O -fomit-frame-pointer sse41
gcc -march=nocona -Os -fomit-frame-pointer sse41

Compiler output

Implementation: crypto_hash/blake256/ssse3
Compiler: cc
hash.c: In file included from hash.c:4:
hash.c: /usr/lib/gcc/x86_64-linux-gnu/4.4.5/include/tmmintrin.h:31: error: #error "SSSE3 instruction set not enabled"
hash.c: hash.c: In function 'blake256_compress':
hash.c: hash.c:105: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:106: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:107: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:108: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: In file included from hash.c:122:
hash.c: rounds.ssse3.h:8: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:15: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: ...
hash.c: rounds.ssse3.h:515: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:521: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:536: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:543: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:559: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:565: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:580: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:587: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:603: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:609: error: incompatible types when assigning to type '__m128i' from type 'int'

Number of similar (compiler,implementation) pairs: 71, namely:
CompilerImplementations
cc ssse3
gcc ssse3
gcc -O2 -fomit-frame-pointer ssse3
gcc -O3 -fomit-frame-pointer ssse3
gcc -O -fomit-frame-pointer ssse3
gcc -Os -fomit-frame-pointer ssse3
gcc -fno-schedule-insns -O2 -fomit-frame-pointer ssse3
gcc -fno-schedule-insns -O3 -fomit-frame-pointer ssse3
gcc -fno-schedule-insns -O -fomit-frame-pointer ssse3
gcc -fno-schedule-insns -Os -fomit-frame-pointer ssse3
gcc -funroll-loops ssse3
gcc -funroll-loops -O2 -fomit-frame-pointer ssse3
gcc -funroll-loops -O3 -fomit-frame-pointer ssse3
gcc -funroll-loops -O -fomit-frame-pointer ssse3
gcc -funroll-loops -Os -fomit-frame-pointer ssse3
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer ssse3
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer ssse3
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer ssse3
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer ssse3
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer ssse3
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer ssse3
gcc -funroll-loops -m64 -O -fomit-frame-pointer ssse3
gcc -funroll-loops -m64 -Os -fomit-frame-pointer ssse3
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer ssse3
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer ssse3
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer ssse3
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer ssse3
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer ssse3
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer ssse3
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer ssse3
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer ssse3
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer ssse3
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer ssse3
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer ssse3
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer ssse3
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer ssse3
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer ssse3
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer ssse3
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer ssse3
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer ssse3
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer ssse3
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer ssse3
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer ssse3
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer ssse3
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer ssse3
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer ssse3
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer ssse3
gcc -m64 -O2 -fomit-frame-pointer ssse3
gcc -m64 -O3 -fomit-frame-pointer ssse3
gcc -m64 -O -fomit-frame-pointer ssse3
gcc -m64 -Os -fomit-frame-pointer ssse3
gcc -m64 -march=k8 -O2 -fomit-frame-pointer ssse3
gcc -m64 -march=k8 -O3 -fomit-frame-pointer ssse3
gcc -m64 -march=k8 -O -fomit-frame-pointer ssse3
gcc -m64 -march=k8 -Os -fomit-frame-pointer ssse3
gcc -m64 -march=nocona -O2 -fomit-frame-pointer ssse3
gcc -m64 -march=nocona -O3 -fomit-frame-pointer ssse3
gcc -m64 -march=nocona -O -fomit-frame-pointer ssse3
gcc -m64 -march=nocona -Os -fomit-frame-pointer ssse3
gcc -march=barcelona -O2 -fomit-frame-pointer ssse3
gcc -march=barcelona -O3 -fomit-frame-pointer ssse3
gcc -march=barcelona -O -fomit-frame-pointer ssse3
gcc -march=barcelona -Os -fomit-frame-pointer ssse3
gcc -march=k8 -O2 -fomit-frame-pointer ssse3
gcc -march=k8 -O3 -fomit-frame-pointer ssse3
gcc -march=k8 -O -fomit-frame-pointer ssse3
gcc -march=k8 -Os -fomit-frame-pointer ssse3
gcc -march=nocona -O2 -fomit-frame-pointer ssse3
gcc -march=nocona -O3 -fomit-frame-pointer ssse3
gcc -march=nocona -O -fomit-frame-pointer ssse3
gcc -march=nocona -Os -fomit-frame-pointer ssse3

Compiler output

Implementation: crypto_hash/blake256/sse41
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
hash.c: In file included from hash.c:4:
hash.c: /usr/lib/gcc/x86_64-linux-gnu/4.4.5/include/tmmintrin.h:31: error: #error "SSSE3 instruction set not enabled"
hash.c: In file included from hash.c:5:
hash.c: /usr/lib/gcc/x86_64-linux-gnu/4.4.5/include/smmintrin.h:32: error: #error "SSE4.1 instruction set not enabled"
hash.c: hash.c: In function 'blake256_compress':
hash.c: hash.c:104: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:105: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:106: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:107: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: In file included from hash.c:121:
hash.c: ...
hash.c: rounds.sse41.h:799: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:810: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:813: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:814: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:826: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:833: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:842: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:843: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:858: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:864: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: In file included from hash.c:4:
hash.c: /usr/lib/gcc/x86_64-linux-gnu/4.4.5/include/tmmintrin.h:31: error: #error "SSSE3 instruction set not enabled"
hash.c: In file included from hash.c:5:
hash.c: /usr/lib/gcc/x86_64-linux-gnu/4.4.5/include/smmintrin.h:32: error: #error "SSE4.1 instruction set not enabled"
hash.c: hash.c: In function 'blake256_compress':
hash.c: hash.c:104: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:105: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:106: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:107: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: In file included from hash.c:121:
hash.c: ...
hash.c: rounds.sse41.h:799: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:810: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:813: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:814: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:826: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:833: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:842: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:843: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:858: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:864: error: incompatible types when assigning to type '__m128i' from type 'int'

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -m64 -march=barcelona -O2 -fomit-frame-pointer sse41
gcc -m64 -march=barcelona -O3 -fomit-frame-pointer sse41
gcc -m64 -march=barcelona -O -fomit-frame-pointer sse41
gcc -m64 -march=barcelona -Os -fomit-frame-pointer sse41

Compiler output

Implementation: crypto_hash/blake256/ssse3
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
hash.c: In file included from hash.c:4:
hash.c: /usr/lib/gcc/x86_64-linux-gnu/4.4.5/include/tmmintrin.h:31: error: #error "SSSE3 instruction set not enabled"
hash.c: hash.c: In function 'blake256_compress':
hash.c: hash.c:105: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:106: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:107: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:108: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: In file included from hash.c:122:
hash.c: rounds.ssse3.h:8: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:15: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: ...
hash.c: rounds.ssse3.h:515: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:521: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:536: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:543: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:559: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:565: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:580: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:587: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:603: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:609: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: In file included from hash.c:4:
hash.c: /usr/lib/gcc/x86_64-linux-gnu/4.4.5/include/tmmintrin.h:31: error: #error "SSSE3 instruction set not enabled"
hash.c: hash.c: In function 'blake256_compress':
hash.c: hash.c:105: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:106: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:107: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: hash.c:108: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: In file included from hash.c:122:
hash.c: rounds.ssse3.h:8: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:15: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: ...
hash.c: rounds.ssse3.h:515: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:521: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:536: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:543: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:559: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:565: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:580: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:587: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:603: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.ssse3.h:609: error: incompatible types when assigning to type '__m128i' from type 'int'

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -m64 -march=barcelona -O2 -fomit-frame-pointer ssse3
gcc -m64 -march=barcelona -O3 -fomit-frame-pointer ssse3
gcc -m64 -march=barcelona -O -fomit-frame-pointer ssse3
gcc -m64 -march=barcelona -Os -fomit-frame-pointer ssse3

Compiler output

Implementation: crypto_hash/blake256/sse41
Compiler: gcc -m64 -march=core2 -O2 -fomit-frame-pointer
hash.c: In file included from hash.c:5:
hash.c: /usr/lib/gcc/x86_64-linux-gnu/4.4.5/include/smmintrin.h:32: error: #error "SSE4.1 instruction set not enabled"
hash.c: In file included from hash.c:121:
hash.c: rounds.sse41.h: In function 'blake256_compress':
hash.c: rounds.sse41.h:67: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:69: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:72: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:73: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:100: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:101: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: ...
hash.c: rounds.sse41.h:756: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:775: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:777: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:780: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:781: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:810: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:813: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:814: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:842: error: incompatible types when assigning to type '__m128i' from type 'int'
hash.c: rounds.sse41.h:843: error: incompatible types when assigning to type '__m128i' from type 'int'

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -m64 -march=core2 -O2 -fomit-frame-pointer sse41
gcc -m64 -march=core2 -O3 -fomit-frame-pointer sse41
gcc -m64 -march=core2 -O -fomit-frame-pointer sse41
gcc -m64 -march=core2 -Os -fomit-frame-pointer sse41