Implementation notes: armeabi, h6dragon, crypto_hashblocks/md5

Computer: h6dragon
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20141014
Operation: crypto_hashblocks
Primitive: md5
TimeImplementationCompilerBenchmark dateSUPERCOP version
11310little-1gcc -Os -fomit-frame-pointer2014101420141014
11310little-1gcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer2014101420141014
11355little-1gcc -fno-schedule-insns -Os -fomit-frame-pointer2014101420141014
11642little-1gcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer2014101420141014
11754little-1gcc -mcpu=cortex-a9 -Os -fomit-frame-pointer2014101420141014
11764little-1gcc -funroll-loops -Os -fomit-frame-pointer2014101420141014
11796little-1gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014101420141014
12054little-1gcc -mcpu=arm810 -O3 -fomit-frame-pointer2014101420141014
12054little-1gcc -mcpu=arm8 -O2 -fomit-frame-pointer2014101420141014
12054little-1gcc -mcpu=arm8 -O3 -fomit-frame-pointer2014101420141014
12054little-1gcc -mcpu=strongarm1100 -O2 -fomit-frame-pointer2014101420141014
12054little-1gcc -mcpu=strongarm1100 -O3 -fomit-frame-pointer2014101420141014
12054little-1gcc -mcpu=strongarm110 -O2 -fomit-frame-pointer2014101420141014
12054little-1gcc -mcpu=strongarm110 -O3 -fomit-frame-pointer2014101420141014
12054little-1gcc -mcpu=strongarm -O2 -fomit-frame-pointer2014101420141014
12054little-1gcc -mcpu=strongarm -O3 -fomit-frame-pointer2014101420141014
12056little-1gcc -mcpu=arm810 -O2 -fomit-frame-pointer2014101420141014
12105little-1gcc -fno-schedule-insns -O2 -fomit-frame-pointer2014101420141014
12208little-1gcc -mcpu=arm810 -Os -fomit-frame-pointer2014101420141014
12208little-1gcc -mcpu=arm8 -Os -fomit-frame-pointer2014101420141014
12208little-1gcc -mcpu=cortex-a5 -Os -fomit-frame-pointer2014101420141014
12208little-1gcc -mcpu=strongarm110 -Os -fomit-frame-pointer2014101420141014
12237little-1gcc -mcpu=strongarm -Os -fomit-frame-pointer2014101420141014
12259little-1gcc -mcpu=strongarm1100 -Os -fomit-frame-pointer2014101420141014
12390little-1gcc -fno-schedule-insns -O3 -fomit-frame-pointer2014101420141014
12441little-1gcc -mcpu=cortex-a9 -O2 -fomit-frame-pointer2014101420141014
12522little-1gcc -mcpu=cortex-a9 -O3 -fomit-frame-pointer2014101420141014
12619little-1gcc -mcpu=arm8 -O -fomit-frame-pointer2014101420141014
12619little-1gcc -mcpu=strongarm1100 -O -fomit-frame-pointer2014101420141014
12619little-1gcc -mcpu=strongarm110 -O -fomit-frame-pointer2014101420141014
12647little-1gcc -mcpu=strongarm -O -fomit-frame-pointer2014101420141014
12649little-1gcc -mcpu=arm810 -O -fomit-frame-pointer2014101420141014
12692little-1gcc -O2 -fomit-frame-pointer2014101420141014
12722little-1gcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer2014101420141014
12827little-1gcc -mcpu=cortex-a5 -O2 -fomit-frame-pointer2014101420141014
12855little-1gcc -O3 -fomit-frame-pointer2014101420141014
12979little-1gcc -mcpu=cortex-a5 -O3 -fomit-frame-pointer2014101420141014
13114little-1gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014101420141014
13162little-1gcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer2014101420141014
13187little-1gcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer2014101420141014
13341little-1gcc -O -fomit-frame-pointer2014101420141014
13341little-1gcc -fno-schedule-insns -O -fomit-frame-pointer2014101420141014
13341little-1gcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer2014101420141014
13341little-1gcc -mcpu=cortex-a9 -O -fomit-frame-pointer2014101420141014
13343little-1gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014101420141014
13369little-1gcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer2014101420141014
13424little-1gcc -funroll-loops -O2 -fomit-frame-pointer2014101420141014
13444little-1gcc -mcpu=cortex-a5 -O -fomit-frame-pointer2014101420141014
13472little-1gcc -funroll-loops -O -fomit-frame-pointer2014101420141014
13520little-1gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014101420141014
13600little-1gcc -funroll-loops -O3 -fomit-frame-pointer2014101420141014
13626little-1gcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer2014101420141014
13828refgcc -mcpu=strongarm -O2 -fomit-frame-pointer2014101420141014
13832refgcc -mcpu=arm8 -O2 -fomit-frame-pointer2014101420141014
13856refgcc -mcpu=arm810 -O2 -fomit-frame-pointer2014101420141014
13856refgcc -mcpu=arm810 -O3 -fomit-frame-pointer2014101420141014
13856refgcc -mcpu=arm8 -O3 -fomit-frame-pointer2014101420141014
13856refgcc -mcpu=strongarm1100 -O2 -fomit-frame-pointer2014101420141014
13856refgcc -mcpu=strongarm1100 -O3 -fomit-frame-pointer2014101420141014
13856refgcc -mcpu=strongarm110 -O2 -fomit-frame-pointer2014101420141014
13856refgcc -mcpu=strongarm110 -O3 -fomit-frame-pointer2014101420141014
13856refgcc -mcpu=strongarm -O3 -fomit-frame-pointer2014101420141014
14526little-1clang -O3 -fomit-frame-pointer2014101420141014
14526little-1clang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=neon -fomit-frame-pointer 2014101420141014
14526little-1clang -O3 -fwrapv -mavx2 -fomit-frame-pointer2014101420141014
14526little-1clang -O3 -fwrapv -mavx -fomit-frame-pointer2014101420141014
14526little-1clang -O3 -fwrapv -mavx -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014101420141014
14526little-1clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer2014101420141014
14526little-1clang -O3 -fwrapv -mavx -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014101420141014
14554little-1clang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=neon -fomit-frame-pointer -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive2014101420141014
14554little-1clang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=vfpv3-d16 -fomit-frame-pointer 2014101420141014
14554little-1clang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=vfpv3-d16 -fomit-frame-pointer -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive2014101420141014
14554little-1clang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014101420141014
14784refgcc -O2 -fomit-frame-pointer2014101420141014
14835refgcc -O3 -fomit-frame-pointer2014101420141014
15016refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2014101420141014
15017refgcc -mcpu=cortex-a5 -O3 -fomit-frame-pointer2014101420141014
15092refgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer2014101420141014
15145refgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer2014101420141014
15171refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2014101420141014
15195refgcc -mcpu=cortex-a5 -O2 -fomit-frame-pointer2014101420141014
15299refgcc -funroll-loops -O3 -fomit-frame-pointer2014101420141014
15376refgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer2014101420141014
15498refgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer2014101420141014
15506refgcc -mcpu=cortex-a9 -O2 -fomit-frame-pointer2014101420141014
15558refgcc -funroll-loops -O2 -fomit-frame-pointer2014101420141014
15632refgcc -mcpu=cortex-a9 -O3 -fomit-frame-pointer2014101420141014
15660refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014101420141014
15715refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014101420141014
15739refgcc -Os -fomit-frame-pointer2014101420141014
15790refgcc -fno-schedule-insns -Os -fomit-frame-pointer2014101420141014
15945refgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer2014101420141014
16226refgcc -mcpu=cortex-a9 -Os -fomit-frame-pointer2014101420141014
16431refgcc -mcpu=arm810 -Os -fomit-frame-pointer2014101420141014
16431refgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer2014101420141014
16431refgcc -mcpu=strongarm -Os -fomit-frame-pointer2014101420141014
16432refgcc -mcpu=arm8 -Os -fomit-frame-pointer2014101420141014
16432refgcc -mcpu=strongarm1100 -Os -fomit-frame-pointer2014101420141014
16432refgcc -mcpu=strongarm110 -Os -fomit-frame-pointer2014101420141014
16534refgcc -mcpu=cortex-a5 -Os -fomit-frame-pointer2014101420141014
16564refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014101420141014
16588refgcc -funroll-loops -Os -fomit-frame-pointer2014101420141014
16948refgcc -mcpu=arm810 -O -fomit-frame-pointer2014101420141014
16975refgcc -mcpu=arm8 -O -fomit-frame-pointer2014101420141014
16975refgcc -mcpu=strongarm -O -fomit-frame-pointer2014101420141014
16976refgcc -mcpu=strongarm1100 -O -fomit-frame-pointer2014101420141014
16976refgcc -mcpu=strongarm110 -O -fomit-frame-pointer2014101420141014
17027refgcc -mcpu=cortex-a5 -O -fomit-frame-pointer2014101420141014
17123refgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer2014101420141014
17295refgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer2014101420141014
17308refgcc -O -fomit-frame-pointer2014101420141014
17308refgcc -fno-schedule-insns -O -fomit-frame-pointer2014101420141014
17308refgcc -mcpu=cortex-a9 -O -fomit-frame-pointer2014101420141014
17418refgcc -funroll-loops -O -fomit-frame-pointer2014101420141014
17432refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014101420141014
18469refclang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=neon -fomit-frame-pointer -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive2014101420141014
18469refclang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014101420141014
18469refclang -O3 -fwrapv -mavx -fomit-frame-pointer2014101420141014
18469refclang -O3 -fwrapv -mavx -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014101420141014
18469refclang -O3 -fwrapv -mavx -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014101420141014
18493refclang -O3 -fomit-frame-pointer2014101420141014
18493refclang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=neon -fomit-frame-pointer 2014101420141014
18493refclang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=vfpv3-d16 -fomit-frame-pointer 2014101420141014
18493refclang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=vfpv3-d16 -fomit-frame-pointer -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive2014101420141014
18493refclang -O3 -fwrapv -mavx2 -fomit-frame-pointer2014101420141014
18493refclang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer2014101420141014
54551little-1cc2014101420141014
54576little-1gcc -funroll-loops2014101420141014
54578little-1gcc2014101420141014
113837refcc2014101420141014
113838refgcc -funroll-loops2014101420141014
113839refgcc2014101420141014

Compiler output

Implementation: crypto_hashblocks/md5/little-1
Compiler: clang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=neon -fomit-frame-pointer -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive
blocks.c: clang: warning: argument unused during compilation: '-fpolly'
blocks.c: clang: warning: argument unused during compilation: '-fvectorize'
blocks.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
blocks.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
clang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=neon -fomit-frame-pointer -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive little-1 ref
clang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=vfpv3-d16 -fomit-frame-pointer -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive little-1 ref

Compiler output

Implementation: crypto_hashblocks/md5/little-1
Compiler: clang -O3 -fwrapv -mavx2 -fomit-frame-pointer
blocks.c: clang: warning: argument unused during compilation: '-mavx2'

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer little-1 ref

Compiler output

Implementation: crypto_hashblocks/md5/little-1
Compiler: clang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
blocks.c: clang: warning: argument unused during compilation: '-mavx2'
blocks.c: clang: warning: argument unused during compilation: '-fpolly'
blocks.c: clang: warning: argument unused during compilation: '-fvectorize'
blocks.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
blocks.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
clang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer little-1 ref

Compiler output

Implementation: crypto_hashblocks/md5/little-1
Compiler: clang -O3 -fwrapv -mavx -fomit-frame-pointer
blocks.c: clang: warning: argument unused during compilation: '-mavx'

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
clang -O3 -fwrapv -mavx -fomit-frame-pointer little-1 ref

Compiler output

Implementation: crypto_hashblocks/md5/little-1
Compiler: clang -O3 -fwrapv -mavx -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
blocks.c: clang: warning: argument unused during compilation: '-mavx'
blocks.c: clang: warning: argument unused during compilation: '-fpolly'
blocks.c: clang: warning: argument unused during compilation: '-fvectorize'
blocks.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
blocks.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
clang -O3 -fwrapv -mavx -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer little-1 ref

Compiler output

Implementation: crypto_hashblocks/md5/little-1
Compiler: clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer
blocks.c: clang: warning: argument unused during compilation: '-mavx'
blocks.c: clang: warning: argument unused during compilation: '-maes'
blocks.c: clang: warning: argument unused during compilation: '-mpclmul'

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer little-1 ref

Compiler output

Implementation: crypto_hashblocks/md5/little-1
Compiler: clang -O3 -fwrapv -mavx -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
blocks.c: clang: warning: argument unused during compilation: '-mavx'
blocks.c: clang: warning: argument unused during compilation: '-maes'
blocks.c: clang: warning: argument unused during compilation: '-mpclmul'
blocks.c: clang: warning: argument unused during compilation: '-fpolly'
blocks.c: clang: warning: argument unused during compilation: '-fvectorize'
blocks.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
blocks.c: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
clang -O3 -fwrapv -mavx -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer little-1 ref

Compiler output

Implementation: crypto_hashblocks/md5/little-1
Compiler: gcc -mcpu=arm810 -O2 -fomit-frame-pointer
blocks.c: blocks.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
try.c: try.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
try.c: try-anything.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
try.c: try.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
try.c: try-anything.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
measure.c: measure.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
measure.c: measure-anything.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]

Number of similar (compiler,implementation) pairs: 40, namely:
CompilerImplementations
gcc -mcpu=arm810 -O2 -fomit-frame-pointer little-1 ref
gcc -mcpu=arm810 -O3 -fomit-frame-pointer little-1 ref
gcc -mcpu=arm810 -O -fomit-frame-pointer little-1 ref
gcc -mcpu=arm810 -Os -fomit-frame-pointer little-1 ref
gcc -mcpu=arm8 -O2 -fomit-frame-pointer little-1 ref
gcc -mcpu=arm8 -O3 -fomit-frame-pointer little-1 ref
gcc -mcpu=arm8 -O -fomit-frame-pointer little-1 ref
gcc -mcpu=arm8 -Os -fomit-frame-pointer little-1 ref
gcc -mcpu=strongarm1100 -O2 -fomit-frame-pointer little-1 ref
gcc -mcpu=strongarm1100 -O3 -fomit-frame-pointer little-1 ref
gcc -mcpu=strongarm1100 -O -fomit-frame-pointer little-1 ref
gcc -mcpu=strongarm1100 -Os -fomit-frame-pointer little-1 ref
gcc -mcpu=strongarm110 -O2 -fomit-frame-pointer little-1 ref
gcc -mcpu=strongarm110 -O3 -fomit-frame-pointer little-1 ref
gcc -mcpu=strongarm110 -O -fomit-frame-pointer little-1 ref
gcc -mcpu=strongarm110 -Os -fomit-frame-pointer little-1 ref
gcc -mcpu=strongarm -O2 -fomit-frame-pointer little-1 ref
gcc -mcpu=strongarm -O3 -fomit-frame-pointer little-1 ref
gcc -mcpu=strongarm -O -fomit-frame-pointer little-1 ref
gcc -mcpu=strongarm -Os -fomit-frame-pointer little-1 ref