Implementation notes: armeabi, h6dragon, crypto_aead/pi32cipher256v1

Computer: h6dragon
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20141014
Operation: crypto_aead
Primitive: pi32cipher256v1
TimeImplementationCompilerBenchmark dateSUPERCOP version
366823optimized_nonSSEgcc -mcpu=strongarm1100 -O3 -fomit-frame-pointer2014102520141014
366825optimized_nonSSEgcc -mcpu=arm810 -O3 -fomit-frame-pointer2014102520141014
366876optimized_nonSSEgcc -mcpu=strongarm110 -O3 -fomit-frame-pointer2014102520141014
366880optimized_nonSSEgcc -mcpu=strongarm -O3 -fomit-frame-pointer2014102520141014
366889optimized_nonSSEgcc -mcpu=arm8 -O3 -fomit-frame-pointer2014102520141014
411463optimized_nonSSEgcc -fno-schedule-insns -O3 -fomit-frame-pointer2014102520141014
437388optimized_nonSSEgcc -O3 -fomit-frame-pointer2014102520141014
441907optimized_nonSSEgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer2014102520141014
447607optimized_nonSSEgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014102520141014
453883optimized_nonSSEgcc -mcpu=cortex-a5 -O3 -fomit-frame-pointer2014102520141014
455032optimized_nonSSEgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014102520141014
457933optimized_nonSSEgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014102520141014
457948optimized_nonSSEgcc -funroll-loops -O -fomit-frame-pointer2014102520141014
457969optimized_nonSSEgcc -mcpu=cortex-a9 -O3 -fomit-frame-pointer2014102520141014
460273optimized_nonSSEgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer2014102520141014
480806optimized_nonSSEgcc -funroll-loops -O3 -fomit-frame-pointer2014102520141014
482782optimized_nonSSEgcc -funroll-loops -O2 -fomit-frame-pointer2014102520141014
529440optimized_nonSSEgcc -mcpu=strongarm -O2 -fomit-frame-pointer2014102520141014
529496optimized_nonSSEgcc -mcpu=arm810 -O2 -fomit-frame-pointer2014102520141014
529826optimized_nonSSEgcc -mcpu=arm8 -O2 -fomit-frame-pointer2014102520141014
529864optimized_nonSSEgcc -mcpu=strongarm110 -O2 -fomit-frame-pointer2014102520141014
529877optimized_nonSSEgcc -mcpu=strongarm1100 -O2 -fomit-frame-pointer2014102520141014
550297optimized_nonSSEgcc -mcpu=arm810 -Os -fomit-frame-pointer2014102520141014
550342optimized_nonSSEgcc -mcpu=strongarm -Os -fomit-frame-pointer2014102520141014
550375optimized_nonSSEgcc -mcpu=arm8 -Os -fomit-frame-pointer2014102520141014
550385optimized_nonSSEgcc -mcpu=strongarm110 -Os -fomit-frame-pointer2014102520141014
550397optimized_nonSSEgcc -mcpu=strongarm1100 -Os -fomit-frame-pointer2014102520141014
550774optimized_nonSSEgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer2014102520141014
552705optimized_nonSSEgcc -Os -fomit-frame-pointer2014102520141014
552752optimized_nonSSEgcc -fno-schedule-insns -Os -fomit-frame-pointer2014102520141014
553168optimized_nonSSEgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer2014102520141014
553515optimized_nonSSEgcc -mcpu=cortex-a9 -Os -fomit-frame-pointer2014102520141014
554840refgcc -mcpu=arm8 -O3 -fomit-frame-pointer2014102520141014
554843refgcc -mcpu=strongarm1100 -O3 -fomit-frame-pointer2014102520141014
554854refgcc -mcpu=strongarm110 -O3 -fomit-frame-pointer2014102520141014
554865refgcc -mcpu=strongarm -O3 -fomit-frame-pointer2014102520141014
554890refgcc -mcpu=arm810 -O3 -fomit-frame-pointer2014102520141014
567971optimized_nonSSEgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014102520141014
568005optimized_nonSSEgcc -funroll-loops -Os -fomit-frame-pointer2014102520141014
568466optimized_nonSSEgcc -mcpu=cortex-a5 -Os -fomit-frame-pointer2014102520141014
572432optimized_nonSSEgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer2014102520141014
572893optimized_nonSSEgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer2014102520141014
573864optimized_nonSSEgcc -O -fomit-frame-pointer2014102520141014
573870optimized_nonSSEgcc -fno-schedule-insns -O -fomit-frame-pointer2014102520141014
573896optimized_nonSSEgcc -mcpu=cortex-a9 -O -fomit-frame-pointer2014102520141014
576045optimized_nonSSEgcc -mcpu=cortex-a5 -O -fomit-frame-pointer2014102520141014
596837optimized_nonSSEgcc -O2 -fomit-frame-pointer2014102520141014
598691refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2014102520141014
603726optimized_nonSSEgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer2014102520141014
604742optimized_nonSSEgcc -fno-schedule-insns -O2 -fomit-frame-pointer2014102520141014
617781optimized_nonSSEgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer2014102520141014
624235optimized_nonSSEgcc -mcpu=cortex-a9 -O2 -fomit-frame-pointer2014102520141014
626310optimized_nonSSEgcc -mcpu=cortex-a5 -O2 -fomit-frame-pointer2014102520141014
634855refgcc -O3 -fomit-frame-pointer2014102520141014
636134refgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer2014102520141014
661770refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014102520141014
662985refgcc -funroll-loops -O3 -fomit-frame-pointer2014102520141014
675964refgcc -mcpu=cortex-a5 -O3 -fomit-frame-pointer2014102520141014
681538optimized_nonSSEgcc -mcpu=arm8 -O -fomit-frame-pointer2014102520141014
681567optimized_nonSSEgcc -mcpu=strongarm110 -O -fomit-frame-pointer2014102520141014
681571optimized_nonSSEgcc -mcpu=strongarm -O -fomit-frame-pointer2014102520141014
681605optimized_nonSSEgcc -mcpu=strongarm1100 -O -fomit-frame-pointer2014102520141014
681618optimized_nonSSEgcc -mcpu=arm810 -O -fomit-frame-pointer2014102520141014
698282refgcc -mcpu=cortex-a9 -O3 -fomit-frame-pointer2014102520141014
699302refgcc -mcpu=strongarm -O2 -fomit-frame-pointer2014102520141014
699304refgcc -mcpu=strongarm1100 -O2 -fomit-frame-pointer2014102520141014
699305refgcc -mcpu=strongarm110 -O2 -fomit-frame-pointer2014102520141014
701314refgcc -mcpu=arm8 -O2 -fomit-frame-pointer2014102520141014
701517refgcc -mcpu=arm810 -O2 -fomit-frame-pointer2014102520141014
710919refgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer2014102520141014
720642refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014102520141014
720904refgcc -funroll-loops -O -fomit-frame-pointer2014102520141014
742532refgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer2014102520141014
744145refgcc -mcpu=strongarm -Os -fomit-frame-pointer2014102520141014
744250refgcc -mcpu=strongarm110 -Os -fomit-frame-pointer2014102520141014
744349refgcc -mcpu=strongarm1100 -Os -fomit-frame-pointer2014102520141014
744421refgcc -mcpu=arm810 -Os -fomit-frame-pointer2014102520141014
744554refgcc -mcpu=arm8 -Os -fomit-frame-pointer2014102520141014
745659refgcc -Os -fomit-frame-pointer2014102520141014
747795refgcc -fno-schedule-insns -Os -fomit-frame-pointer2014102520141014
760450refgcc -mcpu=cortex-a5 -Os -fomit-frame-pointer2014102520141014
770484refgcc -mcpu=cortex-a9 -Os -fomit-frame-pointer2014102520141014
774356refgcc -O2 -fomit-frame-pointer2014102520141014
777954refgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer2014102520141014
780245refgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer2014102520141014
782659refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014102520141014
782726refgcc -mcpu=cortex-a5 -O2 -fomit-frame-pointer2014102520141014
815152refgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer2014102520141014
815891refgcc -funroll-loops -Os -fomit-frame-pointer2014102520141014
816126refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2014102520141014
817457refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014102520141014
819527refgcc -mcpu=cortex-a5 -O -fomit-frame-pointer2014102520141014
821465refgcc -mcpu=cortex-a9 -O -fomit-frame-pointer2014102520141014
821488refgcc -O -fomit-frame-pointer2014102520141014
821518refgcc -fno-schedule-insns -O -fomit-frame-pointer2014102520141014
823860refgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer2014102520141014
824578refgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer2014102520141014
828149refgcc -funroll-loops -O2 -fomit-frame-pointer2014102520141014
854126refgcc -mcpu=cortex-a9 -O2 -fomit-frame-pointer2014102520141014
949004refgcc -mcpu=strongarm -O -fomit-frame-pointer2014102520141014
949005refgcc -mcpu=strongarm110 -O -fomit-frame-pointer2014102520141014
949115refgcc -mcpu=arm810 -O -fomit-frame-pointer2014102520141014
949122refgcc -mcpu=strongarm1100 -O -fomit-frame-pointer2014102520141014
949143refgcc -mcpu=arm8 -O -fomit-frame-pointer2014102520141014
12564597refcc2014102520141014
12565792refgcc2014102520141014
12568715refgcc -funroll-loops2014102520141014
17307535optimized_nonSSEgcc -funroll-loops2014102520141014
17309413optimized_nonSSEgcc2014102520141014
17391244optimized_nonSSEcc2014102520141014

Test failure

Implementation: crypto_aead/pi32cipher256v1/optimized_nonSSE
Compiler: clang -O3 -fomit-frame-pointer
error 111
crypto_aead_decrypt returns nonzero

Number of similar (compiler,implementation) pairs: 22, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer optimized_nonSSE ref
clang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=neon -fomit-frame-pointer optimized_nonSSE ref
clang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=neon -fomit-frame-pointer -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive optimized_nonSSE ref
clang -O3 -fwrapv -march=armv7-a -mfloat-abi=hard -mfpu=vfpv3-d16 -fomit-frame-pointer optimized_nonSSE 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 optimized_nonSSE ref
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer optimized_nonSSE ref
clang -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer optimized_nonSSE ref
clang -O3 -fwrapv -mavx -fomit-frame-pointer optimized_nonSSE ref
clang -O3 -fwrapv -mavx -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer optimized_nonSSE ref
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer optimized_nonSSE ref
clang -O3 -fwrapv -mavx -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer optimized_nonSSE ref

Compiler output

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

Compiler output

Implementation: crypto_aead/pi32cipher256v1/optimized_nonSSE
Compiler: clang -O3 -fwrapv -mavx2 -fomit-frame-pointer
encrypt.c: clang: warning: argument unused during compilation: '-mavx2'

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

Compiler output

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

Compiler output

Implementation: crypto_aead/pi32cipher256v1/optimized_nonSSE
Compiler: clang -O3 -fwrapv -mavx -fomit-frame-pointer
encrypt.c: clang: warning: argument unused during compilation: '-mavx'

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

Compiler output

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

Compiler output

Implementation: crypto_aead/pi32cipher256v1/optimized_nonSSE
Compiler: clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer
encrypt.c: clang: warning: argument unused during compilation: '-mavx'
encrypt.c: clang: warning: argument unused during compilation: '-maes'
encrypt.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 optimized_nonSSE ref

Compiler output

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

Compiler output

Implementation: crypto_aead/pi32cipher256v1/optimized_nonSSE
Compiler: gcc -mcpu=arm810 -O2 -fomit-frame-pointer
encrypt.c: encrypt.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 optimized_nonSSE ref
gcc -mcpu=arm810 -O3 -fomit-frame-pointer optimized_nonSSE ref
gcc -mcpu=arm810 -O -fomit-frame-pointer optimized_nonSSE ref
gcc -mcpu=arm810 -Os -fomit-frame-pointer optimized_nonSSE ref
gcc -mcpu=arm8 -O2 -fomit-frame-pointer optimized_nonSSE ref
gcc -mcpu=arm8 -O3 -fomit-frame-pointer optimized_nonSSE ref
gcc -mcpu=arm8 -O -fomit-frame-pointer optimized_nonSSE ref
gcc -mcpu=arm8 -Os -fomit-frame-pointer optimized_nonSSE ref
gcc -mcpu=strongarm1100 -O2 -fomit-frame-pointer optimized_nonSSE ref
gcc -mcpu=strongarm1100 -O3 -fomit-frame-pointer optimized_nonSSE ref
gcc -mcpu=strongarm1100 -O -fomit-frame-pointer optimized_nonSSE ref
gcc -mcpu=strongarm1100 -Os -fomit-frame-pointer optimized_nonSSE ref
gcc -mcpu=strongarm110 -O2 -fomit-frame-pointer optimized_nonSSE ref
gcc -mcpu=strongarm110 -O3 -fomit-frame-pointer optimized_nonSSE ref
gcc -mcpu=strongarm110 -O -fomit-frame-pointer optimized_nonSSE ref
gcc -mcpu=strongarm110 -Os -fomit-frame-pointer optimized_nonSSE ref
gcc -mcpu=strongarm -O2 -fomit-frame-pointer optimized_nonSSE ref
gcc -mcpu=strongarm -O3 -fomit-frame-pointer optimized_nonSSE ref
gcc -mcpu=strongarm -O -fomit-frame-pointer optimized_nonSSE ref
gcc -mcpu=strongarm -Os -fomit-frame-pointer optimized_nonSSE ref