Implementation notes: mips64, gcc42, crypto_hash/keccak

Computer: gcc42
Architecture: mips64
CPU ID: unknown CPU ID
SUPERCOP version: 20130126
Operation: crypto_hash
Primitive: keccak
TimeImplementationCompilerBenchmark dateSUPERCOP version
44402opt64lcu6gcc -funroll-loops -mabi=64 -O -fomit-frame-pointer2012060220120525
44792opt64lcu24gcc -mabi=64 -O -fomit-frame-pointer2012060220120525
45974opt64lcu24gcc -funroll-loops -mabi=64 -O -fomit-frame-pointer2012060220120525
47236opt64lcu6gcc -mabi=64 -O -fomit-frame-pointer2012060220120525
50258simplegcc -mabi=64 -O -fomit-frame-pointer2012060220120525
50284simplegcc -funroll-loops -mabi=64 -O -fomit-frame-pointer2012060220120525
52878opt64u6gcc -funroll-loops -mabi=64 -O -fomit-frame-pointer2012060220120525
53254opt64u6gcc -mabi=64 -O -fomit-frame-pointer2012060220120525
62174opt64lcu24gcc -funroll-loops -mabi=64 -Os -fomit-frame-pointer2012060220120525
62750opt64lcu6gcc -funroll-loops -mabi=64 -O3 -fomit-frame-pointer2012060220120525
63192opt64lcu24gcc -mabi=64 -O2 -fomit-frame-pointer2012060220120525
63320opt64lcu24gcc -mabi=64 -O3 -fomit-frame-pointer2012060220120525
63506opt64lcu24gcc -mabi=64 -Os -fomit-frame-pointer2012060220120525
63640opt64lcu6gcc -funroll-loops -mabi=64 -Os -fomit-frame-pointer2012060220120525
63790opt64lcu6gcc -mabi=64 -Os -fomit-frame-pointer2012060220120525
63930opt64lcu6gcc -funroll-loops -mabi=64 -O2 -fomit-frame-pointer2012060220120525
64140opt64lcu24gcc -funroll-loops -mabi=64 -O2 -fomit-frame-pointer2012060220120525
64272opt64lcu24gcc -funroll-loops -mabi=64 -O3 -fomit-frame-pointer2012060220120525
66198inplacegcc -funroll-loops -mabi=64 -Os -fomit-frame-pointer2012060220120525
66366opt64lcu6gcc -mabi=64 -O3 -fomit-frame-pointer2012060220120525
66866opt64lcu6gcc -mabi=64 -O2 -fomit-frame-pointer2012060220120525
66944inplacegcc -mabi=64 -Os -fomit-frame-pointer2012060220120525
69650inplacegcc -mabi=64 -O2 -fomit-frame-pointer2012060220120525
69674inplacegcc -mabi=64 -O3 -fomit-frame-pointer2012060220120525
70276inplacegcc -funroll-loops -mabi=64 -O2 -fomit-frame-pointer2012060220120525
70278inplacegcc -funroll-loops -mabi=64 -O3 -fomit-frame-pointer2012060220120525
71258inplacegcc -funroll-loops -mabi=64 -O -fomit-frame-pointer2012060220120525
71712inplacegcc -mabi=64 -O -fomit-frame-pointer2012060220120525
77320opt64u6gcc -funroll-loops -mabi=64 -Os -fomit-frame-pointer2012060220120525
77652opt64u6gcc -mabi=64 -O3 -fomit-frame-pointer2012060220120525
77674opt64u6gcc -mabi=64 -O2 -fomit-frame-pointer2012060220120525
79168opt64u6gcc -mabi=64 -Os -fomit-frame-pointer2012060220120525
80048simplegcc -mabi=64 -O2 -fomit-frame-pointer2012060220120525
80106simplegcc -mabi=64 -O3 -fomit-frame-pointer2012060220120525
80892simplegcc -funroll-loops -mabi=64 -Os -fomit-frame-pointer2012060220120525
84384opt64u6gcc -funroll-loops -mabi=64 -O2 -fomit-frame-pointer2012060220120525
84596opt64u6gcc -funroll-loops -mabi=64 -O3 -fomit-frame-pointer2012060220120525
84722simplegcc -funroll-loops -mabi=64 -O3 -fomit-frame-pointer2012060220120525
85218simplegcc -mabi=64 -Os -fomit-frame-pointer2012060220120525
87494simplegcc -funroll-loops -mabi=64 -O2 -fomit-frame-pointer2012060220120525
124206simple32bigcc -funroll-loops -mabi=64 -O -fomit-frame-pointer2012060220120525
124568simple32bigcc -mabi=64 -O -fomit-frame-pointer2012060220120525
127742opt32bi-rvku2gcc -mabi=64 -O -fomit-frame-pointer2012060220120525
128024opt32bi-rvku2gcc -funroll-loops -mabi=64 -O -fomit-frame-pointer2012060220120525
141152compactgcc -funroll-loops -mabi=64 -Os -fomit-frame-pointer2012060220120525
147204inplace32bigcc -mabi=64 -Os -fomit-frame-pointer2012060220120525
148906inplace32bigcc -funroll-loops -mabi=64 -Os -fomit-frame-pointer2012060220120525
155594opt32bi-s2lcu4gcc -funroll-loops -mabi=64 -O -fomit-frame-pointer2012060220120525
156844opt32bi-s2lcu4gcc -mabi=64 -O -fomit-frame-pointer2012060220120525
158200inplace32bigcc -funroll-loops -mabi=64 -O3 -fomit-frame-pointer2012060220120525
163480inplace32bigcc -funroll-loops -mabi=64 -O2 -fomit-frame-pointer2012060220120525
164590inplace32bigcc -mabi=64 -O3 -fomit-frame-pointer2012060220120525
164650inplace32bigcc -mabi=64 -O2 -fomit-frame-pointer2012060220120525
167952opt32biT-s2lcu4gcc -mabi=64 -O -fomit-frame-pointer2012060220120525
169634inplace32bigcc -funroll-loops -mabi=64 -O -fomit-frame-pointer2012060220120525
170826opt32biT-s2lcu4gcc -funroll-loops -mabi=64 -O -fomit-frame-pointer2012060220120525
171534inplace32bigcc -mabi=64 -O -fomit-frame-pointer2012060220120525
205472compactgcc -funroll-loops -mabi=64 -O -fomit-frame-pointer2012060220120525
208674compactgcc -funroll-loops -mabi=64 -O2 -fomit-frame-pointer2012060220120525
209784compactgcc -mabi=64 -O3 -fomit-frame-pointer2012060220120525
217266compactgcc -funroll-loops -mabi=64 -O3 -fomit-frame-pointer2012060220120525
240120opt32bi-s2lcu4gcc -funroll-loops -mabi=64 -O2 -fomit-frame-pointer2012060220120525
246740opt32bi-s2lcu4gcc -mabi=64 -O2 -fomit-frame-pointer2012060220120525
246910opt32bi-s2lcu4gcc -mabi=64 -Os -fomit-frame-pointer2012060220120525
247460opt32bi-s2lcu4gcc -funroll-loops -mabi=64 -Os -fomit-frame-pointer2012060220120525
247572opt32biT-s2lcu4gcc -mabi=64 -O3 -fomit-frame-pointer2012060220120525
247658opt32biT-s2lcu4gcc -funroll-loops -mabi=64 -O3 -fomit-frame-pointer2012060220120525
248384opt32bi-s2lcu4gcc -funroll-loops -mabi=64 -O3 -fomit-frame-pointer2012060220120525
248648opt32bi-s2lcu4gcc -mabi=64 -O3 -fomit-frame-pointer2012060220120525
271182opt32biT-s2lcu4gcc -mabi=64 -O2 -fomit-frame-pointer2012060220120525
272104opt32biT-s2lcu4gcc -mabi=64 -Os -fomit-frame-pointer2012060220120525
272572opt32biT-s2lcu4gcc -funroll-loops -mabi=64 -O2 -fomit-frame-pointer2012060220120525
275938opt32biT-s2lcu4gcc -funroll-loops -mabi=64 -Os -fomit-frame-pointer2012060220120525
285674simple32bigcc -funroll-loops -mabi=64 -Os -fomit-frame-pointer2012060220120525
289194simple32bigcc -mabi=64 -Os -fomit-frame-pointer2012060220120525
291138opt32bi-rvku2gcc -funroll-loops -mabi=64 -O3 -fomit-frame-pointer2012060220120525
292076compactgcc -mabi=64 -Os -fomit-frame-pointer2012060220120525
298370opt32bi-rvku2gcc -funroll-loops -mabi=64 -Os -fomit-frame-pointer2012060220120525
298532simple32bigcc -funroll-loops -mabi=64 -O2 -fomit-frame-pointer2012060220120525
299724compactgcc -mabi=64 -O2 -fomit-frame-pointer2012060220120525
300682compactgcc -mabi=64 -O -fomit-frame-pointer2012060220120525
300778simple32bigcc -funroll-loops -mabi=64 -O3 -fomit-frame-pointer2012060220120525
302998opt32bi-rvku2gcc -mabi=64 -Os -fomit-frame-pointer2012060220120525
305258opt32bi-rvku2gcc -funroll-loops -mabi=64 -O2 -fomit-frame-pointer2012060220120525
305414simple32bigcc -mabi=64 -O2 -fomit-frame-pointer2012060220120525
311732opt32bi-rvku2gcc -mabi=64 -O2 -fomit-frame-pointer2012060220120525
313312opt32bi-rvku2gcc -mabi=64 -O3 -fomit-frame-pointer2012060220120525
316266simple32bigcc -mabi=64 -O3 -fomit-frame-pointer2012060220120525
470844compact8gcc -mabi=64 -O2 -fomit-frame-pointer2012060220120525
485418compact8gcc -mabi=64 -Os -fomit-frame-pointer2012060220120525
518602compact8gcc -funroll-loops -mabi=64 -O -fomit-frame-pointer2012060220120525
570326compact8gcc -mabi=64 -O -fomit-frame-pointer2012060220120525
659886compact8gcc -funroll-loops -mabi=64 -O3 -fomit-frame-pointer2012060220120525
664156compact8gcc -funroll-loops -mabi=64 -O2 -fomit-frame-pointer2012060220120525
672022compact8gcc -mabi=64 -O3 -fomit-frame-pointer2012060220120525
747204compact8gcc -funroll-loops -mabi=64 -Os -fomit-frame-pointer2012060220120525

Compiler output

Implementation: crypto_hash/keccak/inplace-armv7a-neon
Compiler: gcc -funroll-loops -mabi=64 -O2 -fomit-frame-pointer
keccak.s: keccak.s: Assembler messages:
keccak.s: keccak.s:1: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:2: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:3: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:4: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:5: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:6: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:7: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:8: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:9: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:11: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:12: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:15: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:18: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:23: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:31: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:37: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:40: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:42: Error: unrecognized opcode `push {r4-r6,lr}'
keccak.s: keccak.s:43: Error: unrecognized opcode `mov r5,r0'
keccak.s: keccak.s:44: Error: unrecognized opcode `vpush {q4-q7}'
keccak.s: keccak.s:46: Error: junk at end of line, first unrecognized character is `@'
keccak.s: keccak.s:47: Error: unrecognized opcode `pld [sp,'
keccak.s: keccak.s:48: Error: unrecognized opcode `vmov'
keccak.s: keccak.s:49: Error: unrecognized opcode `vpush {d12}'
keccak.s: ...

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
gcc -funroll-loops -mabi=64 -O2 -fomit-frame-pointer inplace-armv7a-neon
gcc -funroll-loops -mabi=64 -O3 -fomit-frame-pointer inplace-armv7a-neon
gcc -funroll-loops -mabi=64 -O -fomit-frame-pointer inplace-armv7a-neon
gcc -funroll-loops -mabi=64 -Os -fomit-frame-pointer inplace-armv7a-neon
gcc -mabi=64 -O2 -fomit-frame-pointer inplace-armv7a-neon
gcc -mabi=64 -O3 -fomit-frame-pointer inplace-armv7a-neon
gcc -mabi=64 -O -fomit-frame-pointer inplace-armv7a-neon
gcc -mabi=64 -Os -fomit-frame-pointer inplace-armv7a-neon