You can now define LOCAL_ARM_NEON to 'true' in your Android.mk
to indicate that a whole module must be compiled with NEON support.
Alternatively, use the .neon suffix when listing source files in
LOCAL_SRC_FILES to indicate that they should be built with NEON
support. E.g.:
LOCAL_SRC_FILES := foo.c.neon bar.c zoo.c.arm.neon
Note that .arm.neon is supported, but .neon.arm is NOT.
Also added documentation in docs/CPU-ARM-NEON.TXT
Another patch will provide one or more sample applications
to demonstrate all of this.
- generate thumb code by default (type forced ARM generation)
- make the generation of unoptimized binaries with APP_OPTIM := debug actually work
(the -O0 -g flags were placed before the -Os -mthumb flags for thumb binaries)
- factor common code from build-executable/shared-library/static-library into build-binary.mk
and install-binary.mk
- properly add a -L$(SYSROOT)/usr/lib line to make LOCAL_LDLIBS := -lz work as advertized
(in build-binary.mk)
- add a few missing variables from clear-vars.mk
The latter had the effect of removing the benefit of optimization settings, i.e. a typical compiler
command would look like:
<toolchain-compiler> .... -Isources/<module-path> -I -O2 -g
The "-I -O2" was interpreted literally as "search in '-O2' directory, and the optimization was
never set to 2 (or 0 in case of debug mode).