Implementation notes: armeabi, h6dragon, crypto_aead/pi32cipher128v1

Computer: h6dragon
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20141014
Operation: crypto_aead
Primitive: pi32cipher128v1
TimeImplementationCompilerBenchmark dateSUPERCOP version
366705optimized_nonSSEgcc -mcpu=strongarm1100 -O3 -fomit-frame-pointer2014102520141014
366709optimized_nonSSEgcc -mcpu=arm810 -O3 -fomit-frame-pointer2014102520141014
366709optimized_nonSSEgcc -mcpu=strongarm110 -O3 -fomit-frame-pointer2014102520141014
366728optimized_nonSSEgcc -mcpu=arm8 -O3 -fomit-frame-pointer2014102520141014
366741optimized_nonSSEgcc -mcpu=strongarm -O3 -fomit-frame-pointer2014102520141014
410713optimized_nonSSEgcc -fno-schedule-insns -O3 -fomit-frame-pointer2014102520141014
435001optimized_nonSSEgcc -O3 -fomit-frame-pointer2014102520141014
439621optimized_nonSSEgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer2014102520141014
446106optimized_nonSSEgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014102520141014
453138optimized_nonSSEgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014102520141014
456597optimized_nonSSEgcc -mcpu=cortex-a9 -O3 -fomit-frame-pointer2014102520141014
456626optimized_nonSSEgcc -funroll-loops -O -fomit-frame-pointer2014102520141014
456652optimized_nonSSEgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014102520141014
460627optimized_nonSSEgcc -mcpu=cortex-a5 -O3 -fomit-frame-pointer2014102520141014
464391optimized_nonSSEgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer2014102520141014
482250optimized_nonSSEgcc -funroll-loops -O3 -fomit-frame-pointer2014102520141014
482329optimized_nonSSEgcc -funroll-loops -O2 -fomit-frame-pointer2014102520141014
529232optimized_nonSSEgcc -mcpu=strongarm110 -O2 -fomit-frame-pointer2014102520141014
529243optimized_nonSSEgcc -mcpu=strongarm -O2 -fomit-frame-pointer2014102520141014
529305optimized_nonSSEgcc -mcpu=strongarm1100 -O2 -fomit-frame-pointer2014102520141014
529331optimized_nonSSEgcc -mcpu=arm8 -O2 -fomit-frame-pointer2014102520141014
529348optimized_nonSSEgcc -mcpu=arm810 -O2 -fomit-frame-pointer2014102520141014
550166optimized_nonSSEgcc -mcpu=arm810 -Os -fomit-frame-pointer2014102520141014
550176optimized_nonSSEgcc -mcpu=strongarm1100 -Os -fomit-frame-pointer2014102520141014
550191optimized_nonSSEgcc -mcpu=strongarm110 -Os -fomit-frame-pointer2014102520141014
550221optimized_nonSSEgcc -mcpu=strongarm -Os -fomit-frame-pointer2014102520141014
550251optimized_nonSSEgcc -mcpu=arm8 -Os -fomit-frame-pointer2014102520141014
551767optimized_nonSSEgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer2014102520141014
552086optimized_nonSSEgcc -Os -fomit-frame-pointer2014102520141014
552105optimized_nonSSEgcc -fno-schedule-insns -Os -fomit-frame-pointer2014102520141014
553041optimized_nonSSEgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer2014102520141014
554993optimized_nonSSEgcc -mcpu=cortex-a9 -Os -fomit-frame-pointer2014102520141014
555210refgcc -mcpu=arm810 -O3 -fomit-frame-pointer2014102520141014
555221refgcc -mcpu=strongarm1100 -O3 -fomit-frame-pointer2014102520141014
555240refgcc -mcpu=strongarm110 -O3 -fomit-frame-pointer2014102520141014
555253refgcc -mcpu=arm8 -O3 -fomit-frame-pointer2014102520141014
555281refgcc -mcpu=strongarm -O3 -fomit-frame-pointer2014102520141014
566531optimized_nonSSEgcc -mcpu=cortex-a5 -Os -fomit-frame-pointer2014102520141014
568669optimized_nonSSEgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014102520141014
568879optimized_nonSSEgcc -funroll-loops -Os -fomit-frame-pointer2014102520141014
573244optimized_nonSSEgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer2014102520141014
573684optimized_nonSSEgcc -fno-schedule-insns -O -fomit-frame-pointer2014102520141014
573701optimized_nonSSEgcc -O -fomit-frame-pointer2014102520141014
573718optimized_nonSSEgcc -mcpu=cortex-a9 -O -fomit-frame-pointer2014102520141014
574667optimized_nonSSEgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer2014102520141014
575908optimized_nonSSEgcc -mcpu=cortex-a5 -O -fomit-frame-pointer2014102520141014
599491refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2014102520141014
602657optimized_nonSSEgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer2014102520141014
603723optimized_nonSSEgcc -O2 -fomit-frame-pointer2014102520141014
604191optimized_nonSSEgcc -fno-schedule-insns -O2 -fomit-frame-pointer2014102520141014
620940optimized_nonSSEgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer2014102520141014
622144optimized_nonSSEgcc -mcpu=cortex-a9 -O2 -fomit-frame-pointer2014102520141014
630975optimized_nonSSEgcc -mcpu=cortex-a5 -O2 -fomit-frame-pointer2014102520141014
632004refgcc -O3 -fomit-frame-pointer2014102520141014
636286refgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer2014102520141014
661020refgcc -funroll-loops -O3 -fomit-frame-pointer2014102520141014
669968refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014102520141014
674228refgcc -mcpu=cortex-a5 -O3 -fomit-frame-pointer2014102520141014
681423optimized_nonSSEgcc -mcpu=arm8 -O -fomit-frame-pointer2014102520141014
681433optimized_nonSSEgcc -mcpu=strongarm1100 -O -fomit-frame-pointer2014102520141014
681440optimized_nonSSEgcc -mcpu=arm810 -O -fomit-frame-pointer2014102520141014
681440optimized_nonSSEgcc -mcpu=strongarm110 -O -fomit-frame-pointer2014102520141014
681451optimized_nonSSEgcc -mcpu=strongarm -O -fomit-frame-pointer2014102520141014
699150refgcc -mcpu=strongarm -O2 -fomit-frame-pointer2014102520141014
699182refgcc -mcpu=strongarm1100 -O2 -fomit-frame-pointer2014102520141014
699718refgcc -mcpu=strongarm110 -O2 -fomit-frame-pointer2014102520141014
699799refgcc -mcpu=cortex-a9 -O3 -fomit-frame-pointer2014102520141014
700211refgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer2014102520141014
701190refgcc -mcpu=arm8 -O2 -fomit-frame-pointer2014102520141014
701368refgcc -mcpu=arm810 -O2 -fomit-frame-pointer2014102520141014
713680refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014102520141014
714106refgcc -funroll-loops -O -fomit-frame-pointer2014102520141014
739296refgcc -fno-schedule-insns -Os -fomit-frame-pointer2014102520141014
739570refgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer2014102520141014
741147refgcc -Os -fomit-frame-pointer2014102520141014
743841refgcc -mcpu=arm810 -Os -fomit-frame-pointer2014102520141014
744206refgcc -mcpu=strongarm110 -Os -fomit-frame-pointer2014102520141014
744258refgcc -mcpu=arm8 -Os -fomit-frame-pointer2014102520141014
744271refgcc -mcpu=strongarm1100 -Os -fomit-frame-pointer2014102520141014
744455refgcc -mcpu=strongarm -Os -fomit-frame-pointer2014102520141014
757706refgcc -mcpu=cortex-a5 -Os -fomit-frame-pointer2014102520141014
774797refgcc -O2 -fomit-frame-pointer2014102520141014
775240refgcc -mcpu=cortex-a9 -Os -fomit-frame-pointer2014102520141014
777585refgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer2014102520141014
780509refgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer2014102520141014
783607refgcc -mcpu=cortex-a5 -O2 -fomit-frame-pointer2014102520141014
788295refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014102520141014
797977refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2014102520141014
815858refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014102520141014
816800refgcc -mcpu=cortex-a5 -O -fomit-frame-pointer2014102520141014
816890refgcc -funroll-loops -Os -fomit-frame-pointer2014102520141014
820300refgcc -O -fomit-frame-pointer2014102520141014
820300refgcc -fno-schedule-insns -O -fomit-frame-pointer2014102520141014
820303refgcc -mcpu=cortex-a9 -O -fomit-frame-pointer2014102520141014
822390refgcc -funroll-loops -O2 -fomit-frame-pointer2014102520141014
822825refgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer2014102520141014
826513refgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer2014102520141014
828184refgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer2014102520141014
850744refgcc -mcpu=cortex-a9 -O2 -fomit-frame-pointer2014102520141014
948707refgcc -mcpu=strongarm110 -O -fomit-frame-pointer2014102520141014
948819refgcc -mcpu=strongarm -O -fomit-frame-pointer2014102520141014
948832refgcc -mcpu=strongarm1100 -O -fomit-frame-pointer2014102520141014
948883refgcc -mcpu=arm810 -O -fomit-frame-pointer2014102520141014
948934refgcc -mcpu=arm8 -O -fomit-frame-pointer2014102520141014
12564392refcc2014102520141014
12564485refgcc -funroll-loops2014102520141014
12574847refgcc2014102520141014
17276000optimized_nonSSEgcc -funroll-loops2014102520141014
17348160optimized_nonSSEgcc2014102520141014
17401768optimized_nonSSEcc2014102520141014

Test failure

Implementation: crypto_aead/pi32cipher128v1/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/pi32cipher128v1/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/pi32cipher128v1/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/pi32cipher128v1/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/pi32cipher128v1/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/pi32cipher128v1/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/pi32cipher128v1/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/pi32cipher128v1/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/pi32cipher128v1/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