diff options
author | Pracheer <pracheer@codeaurora.org> | 2014-03-28 17:51:17 +0530 |
---|---|---|
committer | Steve Kondik <shade@chemlab.org> | 2014-10-20 15:34:06 -0700 |
commit | 75c7ca34825cbbcaf250caeb1e6821c59c739aa2 (patch) | |
tree | 9a5f6d7527507cebc13443cdad98968dc8bae080 | |
parent | 22e36b0e5285778c14d108a40007c7297ff4146a (diff) | |
download | bionic-75c7ca34825cbbcaf250caeb1e6821c59c739aa2.tar.gz bionic-75c7ca34825cbbcaf250caeb1e6821c59c739aa2.tar.bz2 bionic-75c7ca34825cbbcaf250caeb1e6821c59c739aa2.zip |
msm8916: Enable QCOM bionic optimizations
Enable QCOM bionic optimizations for 8916.
Define QCOM_NEON_OPTIMIZATION for using QCOM specific
bionic optimizations.
Change-Id: I77cb7380ed2eed42a94cdf8f2ff04e800ff75092
-rw-r--r-- | libm/Android.mk | 9 | ||||
-rw-r--r-- | libm/upstream-freebsd/lib/msun/src/e_pow.c | 2 | ||||
-rw-r--r-- | libm/upstream-freebsd/lib/msun/src/k_cos.c | 2 | ||||
-rw-r--r-- | libm/upstream-freebsd/lib/msun/src/k_sin.c | 2 | ||||
-rw-r--r-- | libm/upstream-freebsd/lib/msun/src/math_private.h | 2 |
5 files changed, 9 insertions, 8 deletions
diff --git a/libm/Android.mk b/libm/Android.mk index 85210bd2e..b6ccc4c2f 100644 --- a/libm/Android.mk +++ b/libm/Android.mk @@ -213,7 +213,7 @@ libm_common_src_files += fake_long_double.c # TODO: re-enable i387/e_sqrtf.S for x86, and maybe others. -libm_common_cflags := -DFLT_EVAL_METHOD=0 +libm_common_cflags += -DFLT_EVAL_METHOD=0 libm_common_includes := $(LOCAL_PATH)/upstream-freebsd/lib/msun/src/ libm_arm_includes := $(LOCAL_PATH)/arm @@ -225,7 +225,7 @@ ifeq ($(TARGET_CPU_VARIANT),krait) arm/s_sin.S \ arm/e_sqrtf.S \ arm/e_sqrt.S - libm_arm_cflags += -DKRAIT_NEON_OPTIMIZATION -fno-if-conversion + libm_arm_cflags += -DQCOM_NEON_OPTIMIZATION -fno-if-conversion else ifeq ($(TARGET_USE_QCOM_BIONIC_OPTIMIZATION),true) libm_arm_src_files += \ @@ -234,16 +234,17 @@ else arm/s_sin.S \ arm/e_sqrtf.S \ arm/e_sqrt.S - libm_arm_cflags += -DKRAIT_NEON_OPTIMIZATION -fno-if-conversion + libm_arm_cflags += -DQCOM_NEON_OPTIMIZATION -fno-if-conversion else libm_common_src_files += \ upstream-freebsd/lib/msun/src/s_cos.c \ upstream-freebsd/lib/msun/src/s_sin.c \ upstream-freebsd/lib/msun/src/e_sqrtf.c \ upstream-freebsd/lib/msun/src/e_sqrt.c - endif + endif endif + libm_x86_includes := $(LOCAL_PATH)/i386 $(LOCAL_PATH)/i387 libm_x86_src_files := i387/fenv.c diff --git a/libm/upstream-freebsd/lib/msun/src/e_pow.c b/libm/upstream-freebsd/lib/msun/src/e_pow.c index 917e80baf..d9f278f05 100644 --- a/libm/upstream-freebsd/lib/msun/src/e_pow.c +++ b/libm/upstream-freebsd/lib/msun/src/e_pow.c @@ -94,7 +94,7 @@ ivln2_h = 1.44269502162933349609e+00, /* 0x3FF71547, 0x60000000 =24b 1/ln2*/ ivln2_l = 1.92596299112661746887e-08; /* 0x3E54AE0B, 0xF85DDF44 =1/ln2 tail*/ double -#if defined(KRAIT_NEON_OPTIMIZATION) || defined(SPARROW_NEON_OPTIMIZATION) +#if defined(KRAIT_NEON_OPTIMIZATION) || defined(QCOM_NEON_OPTIMIZATION) __full_ieee754_pow(double x, double y) #else __ieee754_pow(double x, double y) diff --git a/libm/upstream-freebsd/lib/msun/src/k_cos.c b/libm/upstream-freebsd/lib/msun/src/k_cos.c index a7eab7b13..6037e0dc0 100644 --- a/libm/upstream-freebsd/lib/msun/src/k_cos.c +++ b/libm/upstream-freebsd/lib/msun/src/k_cos.c @@ -68,7 +68,7 @@ C6 = -1.13596475577881948265e-11; /* 0xBDA8FAE9, 0xBE8838D4 */ double __kernel_cos(double x, double y) { -#if defined(KRAIT_NEON_OPTIMIZATION) +#if defined(KRAIT_NEON_OPTIMIZATION) || defined(QCOM_NEON_OPTIMIZATION) double hz,z,zz,r,w,k; z = x*x; diff --git a/libm/upstream-freebsd/lib/msun/src/k_sin.c b/libm/upstream-freebsd/lib/msun/src/k_sin.c index 85063914a..afd2da897 100644 --- a/libm/upstream-freebsd/lib/msun/src/k_sin.c +++ b/libm/upstream-freebsd/lib/msun/src/k_sin.c @@ -59,7 +59,7 @@ S6 = 1.58969099521155010221e-10; /* 0x3DE5D93A, 0x5ACFD57C */ double __kernel_sin(double x, double y, int iy) { -#if defined(KRAIT_NEON_OPTIMIZATION) +#if defined(KRAIT_NEON_OPTIMIZATION) || defined(QCOM_NEON_OPTIMIZATION) double z,zz,r,v; z = x*x; diff --git a/libm/upstream-freebsd/lib/msun/src/math_private.h b/libm/upstream-freebsd/lib/msun/src/math_private.h index a079cc0de..58213495a 100644 --- a/libm/upstream-freebsd/lib/msun/src/math_private.h +++ b/libm/upstream-freebsd/lib/msun/src/math_private.h @@ -723,7 +723,7 @@ irintl(long double x) #define __ieee754_remainderf remainderf #define __ieee754_scalbf scalbf -#if defined(KRAIT_NEON_OPTIMIZATION) +#if defined(KRAIT_NEON_OPTIMIZATION) || defined(QCOM_NEON_OPTIMIZATION) int __kernel_rem_pio2(double*,double*,int,int,int) __attribute__((pcs("aapcs-vfp"))); double __full_ieee754_pow(double,double); #ifndef INLINE_REM_PIO2 |