diff options
author | Seth Shelnutt <shelnutt2@gmail.com> | 2012-07-16 11:55:12 -0400 |
---|---|---|
committer | Steve Kondik <shade@chemlab.org> | 2012-09-24 12:41:52 -0700 |
commit | 49fa8770b0adce84246d5db3feec09db02eeeaee (patch) | |
tree | c4e14f0a4e8abac64c5ef28d4612bb04e1f6d06e /libFDK/include/arm/clz_arm.h | |
parent | 2228e360595641dd906bf1773307f43d304f5b2e (diff) | |
download | android_external_aac-49fa8770b0adce84246d5db3feec09db02eeeaee.tar.gz android_external_aac-49fa8770b0adce84246d5db3feec09db02eeeaee.tar.bz2 android_external_aac-49fa8770b0adce84246d5db3feec09db02eeeaee.zip |
libFDK in libaac: Add conditional definition to switch arm asm forjellybean-stablejellybean
devices that don't support thumb2. Tested on heroc with armv6j.
Change-Id: If93892e920097ac7bdfa3f15d2ad1ee6d04bdcc6
Diffstat (limited to 'libFDK/include/arm/clz_arm.h')
-rw-r--r-- | libFDK/include/arm/clz_arm.h | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/libFDK/include/arm/clz_arm.h b/libFDK/include/arm/clz_arm.h index b33b800..7b9d614 100644 --- a/libFDK/include/arm/clz_arm.h +++ b/libFDK/include/arm/clz_arm.h @@ -92,6 +92,14 @@ amm-info@iis.fraunhofer.de #if defined(__GNUC__) && defined(__ARM_ARCH_5TE__) /* cppp replaced: elif */ /* ARM gcc*/ +#if defined(__thumb__) && !defined(__thumb2__) +# define __SWITCH_TO_ARM \ + ".align\n" \ + ".arm\n" + +#else +# define __SWITCH_TO_ARM /* nothing */ +#endif #define FUNCTION_fixnormz_D #define FUNCTION_fixnorm_D @@ -99,7 +107,7 @@ amm-info@iis.fraunhofer.de inline INT fixnormz_D(LONG value) { INT result; - asm("clz %0, %1 ": "=r"(result) : "r"(value) ); + asm(__SWITCH_TO_ARM "clz %0, %1 ": "=r"(result) : "r"(value) ); return result; } |