Implementation notes: armeabi, sachr, crypto_core/salsa20

Computer: sachr
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20140514
Operation: crypto_core
Primitive: salsa20
TimeImplementationCompilerBenchmark dateSUPERCOP version
3183refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014051520140514
3205refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014051520140514
3285refgcc -mcpu=arm810 -Os -fomit-frame-pointer2014051520140514
3311refgcc -mcpu=strongarm -Os -fomit-frame-pointer2014051520140514
3322refgcc -mcpu=strongarm110 -Os -fomit-frame-pointer2014051520140514
3343refgcc -mcpu=strongarm1100 -Os -fomit-frame-pointer2014051520140514
3514armneon2gcc -mcpu=strongarm -O2 -fomit-frame-pointer2014051520140514
3517refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2014051520140514
3528refgcc -mcpu=cortex-a5 -O2 -fomit-frame-pointer2014051520140514
3549armneon2gcc -funroll-loops -O3 -fomit-frame-pointer2014051520140514
3563refgcc -funroll-loops -O3 -fomit-frame-pointer2014051520140514
3564refgcc -funroll-loops -Os -fomit-frame-pointer2014051520140514
3564armneon2gcc -mcpu=arm810 -Os -fomit-frame-pointer2014051520140514
3565armneon2gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014051520140514
3577armneon2cc2014051520140514
3583armneon2gcc -mcpu=strongarm -O -fomit-frame-pointer2014051520140514
3592refgcc -fno-schedule-insns -Os -fomit-frame-pointer2014051520140514
3595armneongcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer2014051520140514
3598armneon2gcc -funroll-loops -Os -fomit-frame-pointer2014051520140514
3602armneon2gcc2014051520140514
3602armneon2gcc -mcpu=arm810 -O -fomit-frame-pointer2014051520140514
3603refgcc -mcpu=cortex-a5 -Os -fomit-frame-pointer2014051520140514
3604armneon2gcc -mcpu=strongarm1100 -Os -fomit-frame-pointer2014051520140514
3614refgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer2014051520140514
3619refgcc -mcpu=strongarm110 -O3 -fomit-frame-pointer2014051520140514
3620armneon2gcc -mcpu=arm810 -O2 -fomit-frame-pointer2014051520140514
3621refgcc -mcpu=strongarm110 -O2 -fomit-frame-pointer2014051520140514
3625refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2014051520140514
3643armneon2gcc -mcpu=cortex-a5 -O2 -fomit-frame-pointer2014051520140514
3654armneon2gcc -mcpu=strongarm -O3 -fomit-frame-pointer2014051520140514
3656refgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer2014051520140514
3658armneon2gcc -mcpu=cortex-a5 -O -fomit-frame-pointer2014051520140514
3659refgcc -mcpu=arm810 -O3 -fomit-frame-pointer2014051520140514
3664armneon2gcc -mcpu=arm8 -Os -fomit-frame-pointer2014051520140514
3664armneon2gcc -mcpu=strongarm110 -Os -fomit-frame-pointer2014051520140514
3667armneon2gcc -mcpu=cortex-a9 -O -fomit-frame-pointer2014051520140514
3668armneongcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer2014051520140514
3670armneon2gcc -mcpu=cortex-a5 -Os -fomit-frame-pointer2014051520140514
3671armneon2gcc -fno-schedule-insns -O2 -fomit-frame-pointer2014051520140514
3671armneongcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer2014051520140514
3678armneon2gcc -mcpu=cortex-a9 -Os -fomit-frame-pointer2014051520140514
3679armneon2gcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer2014051520140514
3688armneon2gcc -O -fomit-frame-pointer2014051520140514
3688armneon2gcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer2014051520140514
3693armneongcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer2014051520140514
3693refgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer2014051520140514
3696refgcc -mcpu=arm810 -O2 -fomit-frame-pointer2014051520140514
3704armneongcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer2014051520140514
3706armneon2gcc -funroll-loops -O2 -fomit-frame-pointer2014051520140514
3708armneon2gcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer2014051520140514
3711refgcc -funroll-loops -O2 -fomit-frame-pointer2014051520140514
3711armneon2gcc -mcpu=strongarm1100 -O2 -fomit-frame-pointer2014051520140514
3715armneon2gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014051520140514
3720refgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer2014051520140514
3727armneon2gcc -funroll-loops2014051520140514
3729refgcc -mcpu=strongarm -O2 -fomit-frame-pointer2014051520140514
3730refgcc -mcpu=cortex-a9 -Os -fomit-frame-pointer2014051520140514
3749armneon2gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014051520140514
3752armneon2gcc -O3 -fomit-frame-pointer2014051520140514
3758armneon2gcc -Os -fomit-frame-pointer2014051520140514
3764armneon2gcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer2014051520140514
3771armneon2gcc -mcpu=arm8 -O3 -fomit-frame-pointer2014051520140514
3772refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014051520140514
3772armneon2gcc -mcpu=strongarm110 -O3 -fomit-frame-pointer2014051520140514
3780refgcc -mcpu=strongarm -O3 -fomit-frame-pointer2014051520140514
3786refgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer2014051520140514
3796refgcc -mcpu=arm8 -O2 -fomit-frame-pointer2014051520140514
3813armneon2gcc -fno-schedule-insns -O -fomit-frame-pointer2014051520140514
3822armneon2gcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer2014051520140514
3830refgcc -mcpu=cortex-a9 -O2 -fomit-frame-pointer2014051520140514
3843refgcc -Os -fomit-frame-pointer2014051520140514
3858armneon2gcc -mcpu=arm810 -O3 -fomit-frame-pointer2014051520140514
3858refgcc -mcpu=strongarm1100 -O2 -fomit-frame-pointer2014051520140514
3902armneon2gcc -mcpu=cortex-a5 -O3 -fomit-frame-pointer2014051520140514
3912armneon2gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014051520140514
3918refgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer2014051520140514
3921refgcc -mcpu=strongarm1100 -O3 -fomit-frame-pointer2014051520140514
3951armneon2gcc -mcpu=arm8 -O -fomit-frame-pointer2014051520140514
3953armneon2gcc -O2 -fomit-frame-pointer2014051520140514
3975armneongcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer2014051520140514
4010armneongcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer2014051520140514
4029refgcc -O3 -fomit-frame-pointer2014051520140514
4082armneon2gcc -mcpu=arm8 -O2 -fomit-frame-pointer2014051520140514
4204armneon2gcc -mcpu=strongarm110 -O -fomit-frame-pointer2014051520140514
4217refgcc -O2 -fomit-frame-pointer2014051520140514
4229armneon2gcc -fno-schedule-insns -Os -fomit-frame-pointer2014051520140514
4229armneongcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer2014051520140514
4270armneon2gcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer2014051520140514
4375armneon2gcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer2014051520140514
4388refgcc -mcpu=strongarm1100 -O -fomit-frame-pointer2014051520140514
4417refgcc -mcpu=cortex-a5 -O -fomit-frame-pointer2014051520140514
4420refgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer2014051520140514
4447armneon2gcc -fno-schedule-insns -O3 -fomit-frame-pointer2014051520140514
4451armneon2gcc -mcpu=strongarm1100 -O -fomit-frame-pointer2014051520140514
4470refgcc -mcpu=strongarm -O -fomit-frame-pointer2014051520140514
4480refgcc -O -fomit-frame-pointer2014051520140514
4504armneon2gcc -funroll-loops -O -fomit-frame-pointer2014051520140514
4534refgcc -fno-schedule-insns -O -fomit-frame-pointer2014051520140514
4542armneon2gcc -mcpu=strongarm1100 -O3 -fomit-frame-pointer2014051520140514
4588refgcc -mcpu=strongarm110 -O -fomit-frame-pointer2014051520140514
4606refgcc -mcpu=arm8 -Os -fomit-frame-pointer2014051520140514
4700refgcc -mcpu=cortex-a9 -O -fomit-frame-pointer2014051520140514
4710refgcc -mcpu=cortex-a9 -O3 -fomit-frame-pointer2014051520140514
4734refgcc -mcpu=arm8 -O3 -fomit-frame-pointer2014051520140514
4740refgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer2014051520140514
4741refgcc -mcpu=cortex-a5 -O3 -fomit-frame-pointer2014051520140514
4749refgcc -mcpu=arm810 -O -fomit-frame-pointer2014051520140514
4826armneon2gcc -mcpu=cortex-a9 -O2 -fomit-frame-pointer2014051520140514
5012armneon2gcc -mcpu=strongarm110 -O2 -fomit-frame-pointer2014051520140514
5030armneon2gcc -mcpu=cortex-a9 -O3 -fomit-frame-pointer2014051520140514
5122armneon2gcc -mcpu=strongarm -Os -fomit-frame-pointer2014051520140514
5322armneon2gcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer2014051520140514
5432refgcc -mcpu=arm8 -O -fomit-frame-pointer2014051520140514
5616refgcc -funroll-loops -O -fomit-frame-pointer2014051520140514
5662refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014051520140514
8468refcc2014051520140514
8508refgcc -funroll-loops2014051520140514
8664refgcc2014051520140514

Compiler output

Implementation: crypto_core/salsa20/armneon
Compiler: cc
core.c: In file included from core.c:8:0:
core.c: /usr/lib/gcc/arm-linux-gnueabihf/4.7/include/arm_neon.h:32:2: error: #error You must enable NEON instructions (e.g. -mfloat-abi=softfp -mfpu=neon) to use arm_neon.h
core.c: core.c: In function 'crypto_core_salsa20_armneon':
core.c: core.c:20:3: error: unknown type name 'uint32x4_t'
core.c: core.c:20:3: warning: excess elements in scalar initializer [enabled by default]
core.c: core.c:20:3: warning: (near initialization for 'abab') [enabled by default]
core.c: core.c:20:3: warning: excess elements in scalar initializer [enabled by default]
core.c: core.c:20:3: warning: (near initialization for 'abab') [enabled by default]
core.c: core.c:20:3: warning: excess elements in scalar initializer [enabled by default]
core.c: core.c:20:3: warning: (near initialization for 'abab') [enabled by default]
core.c: core.c:22:3: error: unknown type name 'uint32x4_t'
core.c: core.c:22:26: error: 'uint32x4_t' undeclared (first use in this function)
core.c: core.c:22:26: note: each undeclared identifier is reported only once for each function it appears in
core.c: core.c:22:38: error: expected ',' or ';' before 'vld1q_u8'
core.c: core.c:23:14: error: expected ';' before 'k4k5k6k7'
core.c: core.c:24:14: error: expected ';' before 'c0c1c2c3'
core.c: core.c:25:14: error: expected ';' before 'n0n1n2n3'
core.c: core.c:27:14: error: expected ';' before 'n1n2n3n0'
core.c: core.c:28:3: error: unknown type name 'uint32x2_t'
core.c: core.c:28:34: error: 'n1n2n3n0' undeclared (first use in this function)
core.c: core.c:29:3: error: unknown type name 'uint32x2_t'
core.c: core.c:30:3: error: unknown type name 'uint32x2_t'
core.c: core.c:31:3: error: unknown type name 'uint32x2_t'
core.c: core.c:32:3: error: unknown type name 'uint32x2_t'
core.c: core.c:32:34: error: 'k4k5k6k7' undeclared (first use in this function)
core.c: ...

Number of similar (compiler,implementation) pairs: 27, namely:
CompilerImplementations
cc armneon
gcc armneon
gcc -O2 -fomit-frame-pointer armneon
gcc -O3 -fomit-frame-pointer armneon
gcc -O -fomit-frame-pointer armneon
gcc -Os -fomit-frame-pointer armneon
gcc -fno-schedule-insns -O2 -fomit-frame-pointer armneon
gcc -fno-schedule-insns -O3 -fomit-frame-pointer armneon
gcc -fno-schedule-insns -O -fomit-frame-pointer armneon
gcc -fno-schedule-insns -Os -fomit-frame-pointer armneon
gcc -funroll-loops armneon
gcc -funroll-loops -O2 -fomit-frame-pointer armneon
gcc -funroll-loops -O3 -fomit-frame-pointer armneon
gcc -funroll-loops -O -fomit-frame-pointer armneon
gcc -funroll-loops -Os -fomit-frame-pointer armneon
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer armneon
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer armneon
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer armneon
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer armneon
gcc -mcpu=cortex-a5 -O2 -fomit-frame-pointer armneon
gcc -mcpu=cortex-a5 -O3 -fomit-frame-pointer armneon
gcc -mcpu=cortex-a5 -O -fomit-frame-pointer armneon
gcc -mcpu=cortex-a5 -Os -fomit-frame-pointer armneon
gcc -mcpu=cortex-a9 -O2 -fomit-frame-pointer armneon
gcc -mcpu=cortex-a9 -O3 -fomit-frame-pointer armneon
gcc -mcpu=cortex-a9 -O -fomit-frame-pointer armneon
gcc -mcpu=cortex-a9 -Os -fomit-frame-pointer armneon

Compiler output

Implementation: crypto_core/salsa20/armneon
Compiler: gcc -mcpu=arm810 -O2 -fomit-frame-pointer
core.c: core.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
core.c: In file included from core.c:8:0:
core.c: /usr/lib/gcc/arm-linux-gnueabihf/4.7/include/arm_neon.h:32:2: error: #error You must enable NEON instructions (e.g. -mfloat-abi=softfp -mfpu=neon) to use arm_neon.h
core.c: core.c: In function 'crypto_core_salsa20_armneon':
core.c: core.c:20:3: error: unknown type name 'uint32x4_t'
core.c: core.c:20:3: warning: excess elements in scalar initializer [enabled by default]
core.c: core.c:20:3: warning: (near initialization for 'abab') [enabled by default]
core.c: core.c:20:3: warning: excess elements in scalar initializer [enabled by default]
core.c: core.c:20:3: warning: (near initialization for 'abab') [enabled by default]
core.c: core.c:20:3: warning: excess elements in scalar initializer [enabled by default]
core.c: core.c:20:3: warning: (near initialization for 'abab') [enabled by default]
core.c: core.c:22:3: error: unknown type name 'uint32x4_t'
core.c: core.c:22:26: error: 'uint32x4_t' undeclared (first use in this function)
core.c: core.c:22:26: note: each undeclared identifier is reported only once for each function it appears in
core.c: core.c:22:38: error: expected ',' or ';' before 'vld1q_u8'
core.c: core.c:23:14: error: expected ';' before 'k4k5k6k7'
core.c: core.c:24:14: error: expected ';' before 'c0c1c2c3'
core.c: core.c:25:14: error: expected ';' before 'n0n1n2n3'
core.c: core.c:27:14: error: expected ';' before 'n1n2n3n0'
core.c: core.c:28:3: error: unknown type name 'uint32x2_t'
core.c: core.c:28:34: error: 'n1n2n3n0' undeclared (first use in this function)
core.c: core.c:29:3: error: unknown type name 'uint32x2_t'
core.c: core.c:30:3: error: unknown type name 'uint32x2_t'
core.c: core.c:31:3: error: unknown type name 'uint32x2_t'
core.c: core.c:32:3: error: unknown type name 'uint32x2_t'
core.c: ...

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

Compiler output

Implementation: crypto_core/salsa20/ref
Compiler: gcc -mcpu=arm810 -O2 -fomit-frame-pointer
core.c: core.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: 20, namely:
CompilerImplementations
gcc -mcpu=arm810 -O2 -fomit-frame-pointer ref
gcc -mcpu=arm810 -O3 -fomit-frame-pointer ref
gcc -mcpu=arm810 -O -fomit-frame-pointer ref
gcc -mcpu=arm810 -Os -fomit-frame-pointer ref
gcc -mcpu=arm8 -O2 -fomit-frame-pointer ref
gcc -mcpu=arm8 -O3 -fomit-frame-pointer ref
gcc -mcpu=arm8 -O -fomit-frame-pointer ref
gcc -mcpu=arm8 -Os -fomit-frame-pointer ref
gcc -mcpu=strongarm1100 -O2 -fomit-frame-pointer ref
gcc -mcpu=strongarm1100 -O3 -fomit-frame-pointer ref
gcc -mcpu=strongarm1100 -O -fomit-frame-pointer ref
gcc -mcpu=strongarm1100 -Os -fomit-frame-pointer ref
gcc -mcpu=strongarm110 -O2 -fomit-frame-pointer ref
gcc -mcpu=strongarm110 -O3 -fomit-frame-pointer ref
gcc -mcpu=strongarm110 -O -fomit-frame-pointer ref
gcc -mcpu=strongarm110 -Os -fomit-frame-pointer ref
gcc -mcpu=strongarm -O2 -fomit-frame-pointer ref
gcc -mcpu=strongarm -O3 -fomit-frame-pointer ref
gcc -mcpu=strongarm -O -fomit-frame-pointer ref
gcc -mcpu=strongarm -Os -fomit-frame-pointer ref

Compiler output

Implementation: crypto_core/salsa20/armneon2
Compiler: gcc -mcpu=arm810 -O2 -fomit-frame-pointer
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: 20, namely:
CompilerImplementations
gcc -mcpu=arm810 -O2 -fomit-frame-pointer armneon2
gcc -mcpu=arm810 -O3 -fomit-frame-pointer armneon2
gcc -mcpu=arm810 -O -fomit-frame-pointer armneon2
gcc -mcpu=arm810 -Os -fomit-frame-pointer armneon2
gcc -mcpu=arm8 -O2 -fomit-frame-pointer armneon2
gcc -mcpu=arm8 -O3 -fomit-frame-pointer armneon2
gcc -mcpu=arm8 -O -fomit-frame-pointer armneon2
gcc -mcpu=arm8 -Os -fomit-frame-pointer armneon2
gcc -mcpu=strongarm1100 -O2 -fomit-frame-pointer armneon2
gcc -mcpu=strongarm1100 -O3 -fomit-frame-pointer armneon2
gcc -mcpu=strongarm1100 -O -fomit-frame-pointer armneon2
gcc -mcpu=strongarm1100 -Os -fomit-frame-pointer armneon2
gcc -mcpu=strongarm110 -O2 -fomit-frame-pointer armneon2
gcc -mcpu=strongarm110 -O3 -fomit-frame-pointer armneon2
gcc -mcpu=strongarm110 -O -fomit-frame-pointer armneon2
gcc -mcpu=strongarm110 -Os -fomit-frame-pointer armneon2
gcc -mcpu=strongarm -O2 -fomit-frame-pointer armneon2
gcc -mcpu=strongarm -O3 -fomit-frame-pointer armneon2
gcc -mcpu=strongarm -O -fomit-frame-pointer armneon2
gcc -mcpu=strongarm -Os -fomit-frame-pointer armneon2