Implementation notes: armeabi, h6dragon, crypto_hash/md5

Computer: h6dragon
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20141014
Operation: crypto_hash
Primitive: md5
TimeImplementationCompilerBenchmark dateSUPERCOP version
11899refgcc -mcpu=cortex-a5 -O3 -fomit-frame-pointer2014101820141014
11900refgcc -mcpu=cortex-a9 -O3 -fomit-frame-pointer2014101820141014
11902refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014101820141014
11929refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2014101820141014
11951refgcc -mcpu=arm8 -O3 -fomit-frame-pointer2014101820141014
11951refgcc -mcpu=strongarm1100 -O3 -fomit-frame-pointer2014101820141014
11951refgcc -mcpu=strongarm -O3 -fomit-frame-pointer2014101820141014
11971refgcc -funroll-loops -O3 -fomit-frame-pointer2014101820141014
11978refgcc -mcpu=arm810 -O3 -fomit-frame-pointer2014101820141014
11978refgcc -mcpu=strongarm110 -O3 -fomit-frame-pointer2014101820141014
12001refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014101820141014
12002refgcc -O3 -fomit-frame-pointer2014101820141014
12002refgcc -funroll-loops -O2 -fomit-frame-pointer2014101820141014
12002refgcc -funroll-loops -O -fomit-frame-pointer2014101820141014
12002refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014101820141014
12031refgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer2014101820141014
12053refclang -O3 -fwrapv -mavx -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014101820141014
12054refclang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=vfpv3-d16 -fomit-frame-pointer 2014101820141014
12054refclang -O3 -fwrapv -mavx -fomit-frame-pointer2014101820141014
12054refgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer2014101820141014
12056refclang -O3 -fwrapv -mavx2 -fomit-frame-pointer2014101820141014
12075refclang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014101820141014
12081refclang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=neon -fomit-frame-pointer 2014101820141014
12081refclang -O3 -fwrapv -mavx -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014101820141014
12082refclang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer2014101820141014
12085refclang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=vfpv3-d16 -fomit-frame-pointer -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive2014101820141014
12086refgcc -mcpu=cortex-a5 -O -fomit-frame-pointer2014101820141014
12105refclang -O3 -fomit-frame-pointer2014101820141014
12105refclang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=neon -fomit-frame-pointer -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive2014101820141014
12105refgcc -mcpu=arm8 -O -fomit-frame-pointer2014101820141014
12105refgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer2014101820141014
12105refgcc -mcpu=strongarm1100 -O -fomit-frame-pointer2014101820141014
12105refgcc -mcpu=strongarm110 -O -fomit-frame-pointer2014101820141014
12129refgcc -mcpu=cortex-a9 -Os -fomit-frame-pointer2014101820141014
12133refgcc -mcpu=arm810 -O -fomit-frame-pointer2014101820141014
12135refgcc -mcpu=strongarm -O -fomit-frame-pointer2014101820141014
12156refgcc -O -fomit-frame-pointer2014101820141014
12156refgcc -fno-schedule-insns -O -fomit-frame-pointer2014101820141014
12156refgcc -funroll-loops -Os -fomit-frame-pointer2014101820141014
12156refgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer2014101820141014
12156refgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer2014101820141014
12157refgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer2014101820141014
12184refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014101820141014
12184refgcc -mcpu=cortex-a9 -O -fomit-frame-pointer2014101820141014
12186refgcc -fno-schedule-insns -Os -fomit-frame-pointer2014101820141014
12189refgcc -mcpu=cortex-a5 -O2 -fomit-frame-pointer2014101820141014
12208refgcc -Os -fomit-frame-pointer2014101820141014
12208refgcc -mcpu=arm810 -Os -fomit-frame-pointer2014101820141014
12208refgcc -mcpu=cortex-a5 -Os -fomit-frame-pointer2014101820141014
12208refgcc -mcpu=cortex-a9 -O2 -fomit-frame-pointer2014101820141014
12208refgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer2014101820141014
12208refgcc -mcpu=strongarm110 -Os -fomit-frame-pointer2014101820141014
12235refgcc -mcpu=arm8 -Os -fomit-frame-pointer2014101820141014
12235refgcc -mcpu=strongarm1100 -Os -fomit-frame-pointer2014101820141014
12237refgcc -mcpu=strongarm -Os -fomit-frame-pointer2014101820141014
12238refgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer2014101820141014
12259refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2014101820141014
12287refgcc -mcpu=arm8 -O2 -fomit-frame-pointer2014101820141014
12287refgcc -mcpu=strongarm1100 -O2 -fomit-frame-pointer2014101820141014
12287refgcc -mcpu=strongarm -O2 -fomit-frame-pointer2014101820141014
12311refgcc -O2 -fomit-frame-pointer2014101820141014
12311refgcc -mcpu=arm810 -O2 -fomit-frame-pointer2014101820141014
12311refgcc -mcpu=strongarm110 -O2 -fomit-frame-pointer2014101820141014
13266refgcc -funroll-loops2014101820141014
13290refcc2014101820141014
13318refgcc2014101820141014
15790opensslgcc -O3 -fomit-frame-pointer2014101820141014
15792opensslgcc -mcpu=cortex-a5 -Os -fomit-frame-pointer2014101820141014
15793opensslgcc -mcpu=strongarm -O -fomit-frame-pointer2014101820141014
15794opensslgcc -O2 -fomit-frame-pointer2014101820141014
15798opensslgcc -funroll-loops -Os -fomit-frame-pointer2014101820141014
15801opensslgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer2014101820141014
15808opensslgcc -mcpu=cortex-a5 -O3 -fomit-frame-pointer2014101820141014
15813opensslgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer2014101820141014
15814opensslclang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=vfpv3-d16 -fomit-frame-pointer 2014101820141014
15814opensslclang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=vfpv3-d16 -fomit-frame-pointer -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive2014101820141014
15814opensslclang -O3 -fwrapv -mavx2 -fomit-frame-pointer2014101820141014
15814opensslclang -O3 -fwrapv -mavx -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014101820141014
15814opensslgcc -mcpu=arm810 -O -fomit-frame-pointer2014101820141014
15814opensslgcc -mcpu=arm8 -O -fomit-frame-pointer2014101820141014
15814opensslgcc -mcpu=cortex-a5 -O2 -fomit-frame-pointer2014101820141014
15814opensslgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer2014101820141014
15814opensslgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer2014101820141014
15815opensslgcc -mcpu=arm8 -O2 -fomit-frame-pointer2014101820141014
15815opensslgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer2014101820141014
15817opensslgcc -Os -fomit-frame-pointer2014101820141014
15817opensslgcc -fno-schedule-insns -O3 -fomit-frame-pointer2014101820141014
15817opensslgcc -mcpu=cortex-a9 -O2 -fomit-frame-pointer2014101820141014
15817opensslgcc -mcpu=strongarm1100 -O2 -fomit-frame-pointer2014101820141014
15817opensslgcc -mcpu=strongarm110 -O2 -fomit-frame-pointer2014101820141014
15819opensslgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer2014101820141014
15826opensslgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer2014101820141014
15829opensslgcc -fno-schedule-insns -O2 -fomit-frame-pointer2014101820141014
15835opensslgcc -mcpu=strongarm110 -Os -fomit-frame-pointer2014101820141014
15836opensslclang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=neon -fomit-frame-pointer 2014101820141014
15836opensslgcc -mcpu=cortex-a9 -Os -fomit-frame-pointer2014101820141014
15836opensslgcc -mcpu=strongarm1100 -O3 -fomit-frame-pointer2014101820141014
15837opensslgcc -mcpu=arm8 -Os -fomit-frame-pointer2014101820141014
15837opensslgcc -mcpu=strongarm1100 -Os -fomit-frame-pointer2014101820141014
15838opensslclang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=neon -fomit-frame-pointer -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive2014101820141014
15838opensslgcc -fno-schedule-insns -Os -fomit-frame-pointer2014101820141014
15839opensslclang -O3 -fomit-frame-pointer2014101820141014
15841opensslgcc -mcpu=arm8 -O3 -fomit-frame-pointer2014101820141014
15842opensslclang -O3 -fwrapv -mavx -fomit-frame-pointer2014101820141014
15842opensslclang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer2014101820141014
15842opensslgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014101820141014
15842opensslgcc -mcpu=arm810 -O2 -fomit-frame-pointer2014101820141014
15842opensslgcc -mcpu=strongarm1100 -O -fomit-frame-pointer2014101820141014
15843opensslgcc -mcpu=strongarm110 -O -fomit-frame-pointer2014101820141014
15844opensslclang -O3 -fwrapv -mavx -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014101820141014
15844opensslgcc -mcpu=strongarm -O2 -fomit-frame-pointer2014101820141014
15845opensslgcc -mcpu=arm810 -O3 -fomit-frame-pointer2014101820141014
15849opensslgcc -mcpu=arm810 -Os -fomit-frame-pointer2014101820141014
15854opensslgcc -funroll-loops -O2 -fomit-frame-pointer2014101820141014
15855opensslgcc -mcpu=cortex-a9 -O -fomit-frame-pointer2014101820141014
15857opensslgcc -mcpu=cortex-a9 -O3 -fomit-frame-pointer2014101820141014
15857opensslgcc -mcpu=strongarm -Os -fomit-frame-pointer2014101820141014
15862opensslgcc -funroll-loops -O3 -fomit-frame-pointer2014101820141014
15862opensslgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014101820141014
15865opensslgcc -mcpu=strongarm -O3 -fomit-frame-pointer2014101820141014
15866opensslcc2014101820141014
15866opensslclang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014101820141014
15866opensslgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer2014101820141014
15866opensslgcc -mcpu=strongarm110 -O3 -fomit-frame-pointer2014101820141014
15868opensslgcc2014101820141014
15868opensslgcc -fno-schedule-insns -O -fomit-frame-pointer2014101820141014
15868opensslgcc -funroll-loops2014101820141014
15883opensslgcc -O -fomit-frame-pointer2014101820141014
15885opensslgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014101820141014
15891opensslgcc -mcpu=cortex-a5 -O -fomit-frame-pointer2014101820141014
15894opensslgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014101820141014
15919opensslgcc -funroll-loops -O -fomit-frame-pointer2014101820141014

Compiler output

Implementation: crypto_hash/md5/openssl
Compiler: clang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=neon -fomit-frame-pointer -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive
hash.c: clang: warning: argument unused during compilation: '-fpolly'
hash.c: clang: warning: argument unused during compilation: '-fvectorize'
hash.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
hash.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 openssl 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 openssl ref

Compiler output

Implementation: crypto_hash/md5/openssl
Compiler: clang -O3 -fwrapv -mavx2 -fomit-frame-pointer
hash.c: clang: warning: argument unused during compilation: '-mavx2'

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

Compiler output

Implementation: crypto_hash/md5/openssl
Compiler: clang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
hash.c: clang: warning: argument unused during compilation: '-mavx2'
hash.c: clang: warning: argument unused during compilation: '-fpolly'
hash.c: clang: warning: argument unused during compilation: '-fvectorize'
hash.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
hash.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 openssl ref

Compiler output

Implementation: crypto_hash/md5/openssl
Compiler: clang -O3 -fwrapv -mavx -fomit-frame-pointer
hash.c: clang: warning: argument unused during compilation: '-mavx'

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

Compiler output

Implementation: crypto_hash/md5/openssl
Compiler: clang -O3 -fwrapv -mavx -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
hash.c: clang: warning: argument unused during compilation: '-mavx'
hash.c: clang: warning: argument unused during compilation: '-fpolly'
hash.c: clang: warning: argument unused during compilation: '-fvectorize'
hash.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
hash.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 openssl ref

Compiler output

Implementation: crypto_hash/md5/openssl
Compiler: clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer
hash.c: clang: warning: argument unused during compilation: '-mavx'
hash.c: clang: warning: argument unused during compilation: '-maes'
hash.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 openssl ref

Compiler output

Implementation: crypto_hash/md5/openssl
Compiler: clang -O3 -fwrapv -mavx -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
hash.c: clang: warning: argument unused during compilation: '-mavx'
hash.c: clang: warning: argument unused during compilation: '-maes'
hash.c: clang: warning: argument unused during compilation: '-mpclmul'
hash.c: clang: warning: argument unused during compilation: '-fpolly'
hash.c: clang: warning: argument unused during compilation: '-fvectorize'
hash.c: clang: warning: argument unused during compilation: '-fslp-vectorize'
hash.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 openssl ref

Compiler output

Implementation: crypto_hash/md5/openssl
Compiler: gcc -mcpu=arm810 -O2 -fomit-frame-pointer
hash.c: hash.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 openssl ref
gcc -mcpu=arm810 -O3 -fomit-frame-pointer openssl ref
gcc -mcpu=arm810 -O -fomit-frame-pointer openssl ref
gcc -mcpu=arm810 -Os -fomit-frame-pointer openssl ref
gcc -mcpu=arm8 -O2 -fomit-frame-pointer openssl ref
gcc -mcpu=arm8 -O3 -fomit-frame-pointer openssl ref
gcc -mcpu=arm8 -O -fomit-frame-pointer openssl ref
gcc -mcpu=arm8 -Os -fomit-frame-pointer openssl ref
gcc -mcpu=strongarm1100 -O2 -fomit-frame-pointer openssl ref
gcc -mcpu=strongarm1100 -O3 -fomit-frame-pointer openssl ref
gcc -mcpu=strongarm1100 -O -fomit-frame-pointer openssl ref
gcc -mcpu=strongarm1100 -Os -fomit-frame-pointer openssl ref
gcc -mcpu=strongarm110 -O2 -fomit-frame-pointer openssl ref
gcc -mcpu=strongarm110 -O3 -fomit-frame-pointer openssl ref
gcc -mcpu=strongarm110 -O -fomit-frame-pointer openssl ref
gcc -mcpu=strongarm110 -Os -fomit-frame-pointer openssl ref
gcc -mcpu=strongarm -O2 -fomit-frame-pointer openssl ref
gcc -mcpu=strongarm -O3 -fomit-frame-pointer openssl ref
gcc -mcpu=strongarm -O -fomit-frame-pointer openssl ref
gcc -mcpu=strongarm -Os -fomit-frame-pointer openssl ref