arm: Always build the NEON SIMD code when targetting ARMv7-A devices.
The libjpeg_turbo library only uses the NEON SIMD code path when it
determines at runtime that the CPU supports it. Always enable it when
targetting ARMv7-A devices.
Tested on a Motorola Xoom (Tegra2, thus no Neon) and on a Nexus S
(supports Neon).
Benchmarking shows a x1.48 decoding performance improvement on the
Nexus S, and x1.09 on a Galaxy Nexus.
BUG=
TEST=
The original change is created by digit@chromium.org.
Review URL: https://chromiumcodereview.appspot.com/10702002
git-svn-id: http://src.chromium.org/svn/trunk/deps/third_party/libjpeg_turbo@144411 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
diff --git a/libjpeg.gyp b/libjpeg.gyp
index f9dd9dd..411cb09 100644
--- a/libjpeg.gyp
+++ b/libjpeg.gyp
@@ -155,10 +155,12 @@
'simd/jiss2red-64.asm',
],
}],
- # The ARM SIMD implementation requires the Neon instruction set.
+ # The ARM SIMD implementation can be used for devices that support
+ # the NEON instruction set. This is done dynamically by probing CPU
+ # features at runtime, so always compile it for ARMv7-A devices.
[ 'target_arch=="arm"', {
'conditions': [
- [ 'arm_neon==1', {
+ [ 'armv7 == 1 or arm_neon == 1', {
'sources': [
'simd/jsimd_arm.c',
'simd/jsimd_arm_neon.S',