Implementation notes: armeabi, h6dragon, crypto_aead/pi64cipher128v1

Computer: h6dragon
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20141014
Operation: crypto_aead
Primitive: pi64cipher128v1
TimeImplementationCompilerBenchmark dateSUPERCOP version
808568optimized_nonSSEgcc -Os -fomit-frame-pointer2014102520141014
808654optimized_nonSSEgcc -fno-schedule-insns -Os -fomit-frame-pointer2014102520141014
816397optimized_nonSSEgcc -mcpu=cortex-a5 -Os -fomit-frame-pointer2014102520141014
837203optimized_nonSSEgcc -funroll-loops -Os -fomit-frame-pointer2014102520141014
837508optimized_nonSSEgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014102520141014
851132optimized_nonSSEgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014102520141014
851670optimized_nonSSEgcc -mcpu=cortex-a9 -Os -fomit-frame-pointer2014102520141014
857548optimized_nonSSEgcc -fno-schedule-insns -O3 -fomit-frame-pointer2014102520141014
873900optimized_nonSSEgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014102520141014
875698optimized_nonSSEgcc -funroll-loops -O -fomit-frame-pointer2014102520141014
940267optimized_nonSSEgcc -mcpu=strongarm1100 -Os -fomit-frame-pointer2014102520141014
940324optimized_nonSSEgcc -mcpu=strongarm110 -Os -fomit-frame-pointer2014102520141014
940324optimized_nonSSEgcc -mcpu=strongarm -Os -fomit-frame-pointer2014102520141014
940341optimized_nonSSEgcc -mcpu=arm810 -Os -fomit-frame-pointer2014102520141014
940395optimized_nonSSEgcc -mcpu=arm8 -Os -fomit-frame-pointer2014102520141014
967751optimized_nonSSEgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014102520141014
970421refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2014102520141014
988125optimized_nonSSEgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer2014102520141014
1013586refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014102520141014
1180224refgcc -mcpu=strongarm1100 -O3 -fomit-frame-pointer2014102520141014
1180286refgcc -mcpu=strongarm110 -O3 -fomit-frame-pointer2014102520141014
1180303refgcc -mcpu=arm8 -O3 -fomit-frame-pointer2014102520141014
1180324refgcc -mcpu=strongarm -O3 -fomit-frame-pointer2014102520141014
1180385refgcc -mcpu=arm810 -O3 -fomit-frame-pointer2014102520141014
1180933refgcc -mcpu=cortex-a9 -Os -fomit-frame-pointer2014102520141014
1189778refgcc -mcpu=cortex-a5 -Os -fomit-frame-pointer2014102520141014
1207830refgcc -Os -fomit-frame-pointer2014102520141014
1208074refgcc -fno-schedule-insns -Os -fomit-frame-pointer2014102520141014
1218370refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014102520141014
1218707refgcc -funroll-loops -O -fomit-frame-pointer2014102520141014
1227600refgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer2014102520141014
1233795refgcc -funroll-loops -Os -fomit-frame-pointer2014102520141014
1233949refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014102520141014
1234205refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014102520141014
1244474refgcc -O -fomit-frame-pointer2014102520141014
1244897refgcc -fno-schedule-insns -O -fomit-frame-pointer2014102520141014
1250672refgcc -mcpu=cortex-a5 -O -fomit-frame-pointer2014102520141014
1251332refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2014102520141014
1262547refgcc -mcpu=cortex-a9 -O -fomit-frame-pointer2014102520141014
1274895optimized_nonSSEgcc -O3 -fomit-frame-pointer2014102520141014
1301421refgcc -mcpu=arm810 -O -fomit-frame-pointer2014102520141014
1301431refgcc -mcpu=arm8 -O -fomit-frame-pointer2014102520141014
1301645refgcc -mcpu=strongarm -O -fomit-frame-pointer2014102520141014
1301828refgcc -mcpu=strongarm1100 -O -fomit-frame-pointer2014102520141014
1301865refgcc -mcpu=strongarm110 -O -fomit-frame-pointer2014102520141014
1330062refgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer2014102520141014
1341480refgcc -O3 -fomit-frame-pointer2014102520141014
1347210optimized_nonSSEgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer2014102520141014
1351084refgcc -mcpu=cortex-a5 -O3 -fomit-frame-pointer2014102520141014
1369618refgcc -mcpu=cortex-a9 -O3 -fomit-frame-pointer2014102520141014
1377370refgcc -mcpu=strongarm1100 -Os -fomit-frame-pointer2014102520141014
1377394refgcc -mcpu=strongarm110 -Os -fomit-frame-pointer2014102520141014
1377398refgcc -mcpu=arm810 -Os -fomit-frame-pointer2014102520141014
1377450refgcc -mcpu=arm8 -Os -fomit-frame-pointer2014102520141014
1377458refgcc -mcpu=strongarm -Os -fomit-frame-pointer2014102520141014
1379638refgcc -funroll-loops -O3 -fomit-frame-pointer2014102520141014
1382250optimized_nonSSEgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer2014102520141014
1437415optimized_nonSSEgcc -mcpu=cortex-a9 -O3 -fomit-frame-pointer2014102520141014
1453149refgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer2014102520141014
1456031refgcc -mcpu=arm8 -O2 -fomit-frame-pointer2014102520141014
1456142refgcc -mcpu=arm810 -O2 -fomit-frame-pointer2014102520141014
1456260refgcc -mcpu=strongarm110 -O2 -fomit-frame-pointer2014102520141014
1456294refgcc -mcpu=strongarm -O2 -fomit-frame-pointer2014102520141014
1456316refgcc -mcpu=strongarm1100 -O2 -fomit-frame-pointer2014102520141014
1518617optimized_nonSSEgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer2014102520141014
1552414refgcc -mcpu=cortex-a5 -O2 -fomit-frame-pointer2014102520141014
1600755optimized_nonSSEgcc -mcpu=cortex-a5 -O3 -fomit-frame-pointer2014102520141014
1667518refgcc -mcpu=cortex-a9 -O2 -fomit-frame-pointer2014102520141014
1724672refgcc -funroll-loops -O2 -fomit-frame-pointer2014102520141014
1760904optimized_nonSSEgcc -mcpu=strongarm110 -O3 -fomit-frame-pointer2014102520141014
1761924optimized_nonSSEgcc -mcpu=arm810 -O3 -fomit-frame-pointer2014102520141014
1761975optimized_nonSSEgcc -mcpu=strongarm -O3 -fomit-frame-pointer2014102520141014
1766883optimized_nonSSEgcc -mcpu=arm8 -O3 -fomit-frame-pointer2014102520141014
1769167refgcc -O2 -fomit-frame-pointer2014102520141014
1777505optimized_nonSSEgcc -mcpu=strongarm1100 -O3 -fomit-frame-pointer2014102520141014
1782512optimized_nonSSEgcc -funroll-loops -O3 -fomit-frame-pointer2014102520141014
1837547refgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer2014102520141014
1851938refgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer2014102520141014
1976691refgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer2014102520141014
2707048refgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer2014102520141014
2707585refgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer2014102520141014
3497596optimized_nonSSEgcc -funroll-loops -O2 -fomit-frame-pointer2014102520141014
9169615refgcc -funroll-loops2014102520141014
9215479refgcc2014102520141014
9350962refcc2014102520141014
11897042optimized_nonSSEgcc -funroll-loops2014102520141014
12021332optimized_nonSSEgcc2014102520141014
12059372optimized_nonSSEcc2014102520141014

Test failure

Implementation: crypto_aead/pi64cipher128v1/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/pi64cipher128v1/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/pi64cipher128v1/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/pi64cipher128v1/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/pi64cipher128v1/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/pi64cipher128v1/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/pi64cipher128v1/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/pi64cipher128v1/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/pi64cipher128v1/optimized_nonSSE
Compiler: gcc -O2 -fomit-frame-pointer
encrypt.c: Alarm clock

Number of similar (compiler,implementation) pairs: 12, namely:
CompilerImplementations
gcc -O2 -fomit-frame-pointer optimized_nonSSE
gcc -O -fomit-frame-pointer optimized_nonSSE
gcc -fno-schedule-insns -O2 -fomit-frame-pointer optimized_nonSSE
gcc -fno-schedule-insns -O -fomit-frame-pointer optimized_nonSSE
gcc -mcpu=cortex-a5 -O2 -fomit-frame-pointer optimized_nonSSE
gcc -mcpu=cortex-a5 -O -fomit-frame-pointer optimized_nonSSE
gcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer optimized_nonSSE
gcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer optimized_nonSSE
gcc -mcpu=cortex-a9 -O2 -fomit-frame-pointer optimized_nonSSE
gcc -mcpu=cortex-a9 -O -fomit-frame-pointer optimized_nonSSE
gcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer optimized_nonSSE
gcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer optimized_nonSSE

Compiler output

Implementation: crypto_aead/pi64cipher128v1/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]
encrypt.c: Alarm clock

Number of similar (compiler,implementation) pairs: 10, namely:
CompilerImplementations
gcc -mcpu=arm810 -O2 -fomit-frame-pointer optimized_nonSSE
gcc -mcpu=arm810 -O -fomit-frame-pointer optimized_nonSSE
gcc -mcpu=arm8 -O2 -fomit-frame-pointer optimized_nonSSE
gcc -mcpu=arm8 -O -fomit-frame-pointer optimized_nonSSE
gcc -mcpu=strongarm1100 -O2 -fomit-frame-pointer optimized_nonSSE
gcc -mcpu=strongarm1100 -O -fomit-frame-pointer optimized_nonSSE
gcc -mcpu=strongarm110 -O2 -fomit-frame-pointer optimized_nonSSE
gcc -mcpu=strongarm110 -O -fomit-frame-pointer optimized_nonSSE
gcc -mcpu=strongarm -O2 -fomit-frame-pointer optimized_nonSSE
gcc -mcpu=strongarm -O -fomit-frame-pointer optimized_nonSSE

Compiler output

Implementation: crypto_aead/pi64cipher128v1/ref
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: 30, namely:
CompilerImplementations
gcc -mcpu=arm810 -O2 -fomit-frame-pointer ref
gcc -mcpu=arm810 -O3 -fomit-frame-pointer optimized_nonSSE ref
gcc -mcpu=arm810 -O -fomit-frame-pointer ref
gcc -mcpu=arm810 -Os -fomit-frame-pointer optimized_nonSSE ref
gcc -mcpu=arm8 -O2 -fomit-frame-pointer ref
gcc -mcpu=arm8 -O3 -fomit-frame-pointer optimized_nonSSE ref
gcc -mcpu=arm8 -O -fomit-frame-pointer ref
gcc -mcpu=arm8 -Os -fomit-frame-pointer optimized_nonSSE ref
gcc -mcpu=strongarm1100 -O2 -fomit-frame-pointer ref
gcc -mcpu=strongarm1100 -O3 -fomit-frame-pointer optimized_nonSSE ref
gcc -mcpu=strongarm1100 -O -fomit-frame-pointer ref
gcc -mcpu=strongarm1100 -Os -fomit-frame-pointer optimized_nonSSE ref
gcc -mcpu=strongarm110 -O2 -fomit-frame-pointer ref
gcc -mcpu=strongarm110 -O3 -fomit-frame-pointer optimized_nonSSE ref
gcc -mcpu=strongarm110 -O -fomit-frame-pointer ref
gcc -mcpu=strongarm110 -Os -fomit-frame-pointer optimized_nonSSE ref
gcc -mcpu=strongarm -O2 -fomit-frame-pointer ref
gcc -mcpu=strongarm -O3 -fomit-frame-pointer optimized_nonSSE ref
gcc -mcpu=strongarm -O -fomit-frame-pointer ref
gcc -mcpu=strongarm -Os -fomit-frame-pointer optimized_nonSSE ref