From 77f49d8219d5aecebe1ae4e122ef36d6976bc07f Mon Sep 17 00:00:00 2001 From: "leozwang@google.com" Date: Wed, 27 Jul 2011 18:58:33 +0000 Subject: [PATCH] Clean up ANDROID macro definitions [common_audio] Review URL: http://webrtc-codereview.appspot.com/91004 git-svn-id: http://webrtc.googlecode.com/svn/trunk@262 4adac7df-926f-26a2-2b94-8c16560cd09d --- Android.mk | 2 +- .../resampler/main/source/Android.mk | 32 ++++--------- .../interface/signal_processing_library.h | 46 +++++++------------ .../main/interface/spl_inl.h | 16 +++---- .../main/source/Android.mk | 35 ++++---------- .../main/source/add_sat_w16.c | 4 -- .../main/source/add_sat_w32.c | 4 -- .../main/source/get_size_in_bits.c | 4 -- .../main/source/norm_u32.c | 3 -- .../main/source/norm_w16.c | 3 -- .../main/source/norm_w32.c | 4 -- .../main/source/sub_sat_w16.c | 4 -- .../main/source/sub_sat_w32.c | 4 -- src/common_audio/vad/main/source/Android.mk | 35 ++++---------- 14 files changed, 51 insertions(+), 145 deletions(-) diff --git a/Android.mk b/Android.mk index 9cf7033e8..300678541 100644 --- a/Android.mk +++ b/Android.mk @@ -19,7 +19,7 @@ MY_WEBRTC_COMMON_DEFS := \ '-DWEBRTC_ANDROID_OPENSLES' ifeq ($(TARGET_ARCH),arm) MY_WEBRTC_COMMON_DEFS += \ - '-DWEBRTC_SPL_ARM_INLINE_CALLS' \ + '-DWEBRTC_ARM_INLINE_CALLS' \ '-DWEBRTC_ARCH_ARM' endif diff --git a/src/common_audio/resampler/main/source/Android.mk b/src/common_audio/resampler/main/source/Android.mk index e639e106d..d09804ed1 100644 --- a/src/common_audio/resampler/main/source/Android.mk +++ b/src/common_audio/resampler/main/source/Android.mk @@ -15,39 +15,21 @@ LOCAL_MODULE_CLASS := STATIC_LIBRARIES LOCAL_MODULE := libwebrtc_resampler LOCAL_MODULE_TAGS := optional LOCAL_CPP_EXTENSION := .cc -LOCAL_GENERATED_SOURCES := LOCAL_SRC_FILES := resampler.cc # Flags passed to both C and C++ files. -MY_CFLAGS := -MY_CFLAGS_C := -MY_DEFS := '-DNO_TCMALLOC' \ - '-DNO_HEAPCHECKER' \ - '-DWEBRTC_TARGET_PC' \ - '-DWEBRTC_LINUX' -ifeq ($(TARGET_ARCH),arm) -MY_DEFS += \ - '-DWEBRTC_ANDROID' \ - '-DANDROID' -endif -LOCAL_CFLAGS := $(MY_CFLAGS_C) $(MY_CFLAGS) $(MY_DEFS) +LOCAL_CFLAGS := \ + $(MY_WEBRTC_COMMON_DEFS) -# Include paths placed before CFLAGS/CPPFLAGS -LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../../.. \ +LOCAL_C_INCLUDES := \ $(LOCAL_PATH)/../interface \ + $(LOCAL_PATH)/../../../.. \ $(LOCAL_PATH)/../../../signal_processing_library/main/interface -# Flags passed to only C++ (and not C) files. -LOCAL_CPPFLAGS := - -LOCAL_LDFLAGS := - -LOCAL_STATIC_LIBRARIES := - -LOCAL_SHARED_LIBRARIES := libcutils \ +LOCAL_SHARED_LIBRARIES := \ + libcutils \ libdl \ libstlport -LOCAL_ADDITIONAL_DEPENDENCIES := ifeq ($(TARGET_OS)-$(TARGET_SIMULATOR),linux-true) LOCAL_LDLIBS += -ldl -lpthread @@ -57,5 +39,7 @@ ifneq ($(TARGET_SIMULATOR),true) LOCAL_SHARED_LIBRARIES += libdl endif +ifndef NDK_ROOT include external/stlport/libstlport.mk +endif include $(BUILD_STATIC_LIBRARY) diff --git a/src/common_audio/signal_processing_library/main/interface/signal_processing_library.h b/src/common_audio/signal_processing_library/main/interface/signal_processing_library.h index da26ceb68..19721a535 100644 --- a/src/common_audio/signal_processing_library/main/interface/signal_processing_library.h +++ b/src/common_audio/signal_processing_library/main/interface/signal_processing_library.h @@ -25,11 +25,6 @@ #include // intrinsic file for windows mobile #endif -#ifdef WEBRTC_ANDROID -#define WEBRTC_SPL_INLINE_CALLS -#define SPL_NO_DOUBLE_IMPLEMENTATIONS -#endif - // Macros specific for the fixed point implementation #define WEBRTC_SPL_WORD16_MAX 32767 #define WEBRTC_SPL_WORD16_MIN -32768 @@ -65,11 +60,6 @@ ((val) << (8 * ((index) & 0x1))) #endif -#ifndef WEBRTC_ANDROID -#define WEBRTC_SPL_MUL(a, b) \ - ((WebRtc_Word32) ((WebRtc_Word32)(a) * (WebRtc_Word32)(b))) -#endif - #define WEBRTC_SPL_UMUL(a, b) \ ((WebRtc_UWord32) ((WebRtc_UWord32)(a) * (WebRtc_UWord32)(b))) #define WEBRTC_SPL_UMUL_RSFT16(a, b)\ @@ -99,26 +89,9 @@ ((WEBRTC_SPL_MUL_16_16(a, (b) >> 16) << 1) \ + (((WEBRTC_SPL_MUL_16_U16(a, (WebRtc_UWord16)(b)) >> 1) + 0x2000) >> 14)) -#ifndef WEBRTC_ANDROID -#define WEBRTC_SPL_MUL_16_32_RSFT16(a, b) \ - (WEBRTC_SPL_MUL_16_16(a, b >> 16) \ - + ((WEBRTC_SPL_MUL_16_16(a, (b & 0xffff) >> 1) + 0x4000) >> 15)) -#define WEBRTC_SPL_MUL_32_32_RSFT32(a32a, a32b, b32) \ - ((WebRtc_Word32)(WEBRTC_SPL_MUL_16_32_RSFT16(a32a, b32) \ - + (WEBRTC_SPL_MUL_16_32_RSFT16(a32b, b32) >> 16))) -#define WEBRTC_SPL_MUL_32_32_RSFT32BI(a32, b32) \ - ((WebRtc_Word32)(WEBRTC_SPL_MUL_16_32_RSFT16(( \ - (WebRtc_Word16)(a32 >> 16)), b32) + \ - (WEBRTC_SPL_MUL_16_32_RSFT16(( \ - (WebRtc_Word16)((a32 & 0x0000FFFF) >> 1)), b32) >> 15))) -#endif - #ifdef ARM_WINM #define WEBRTC_SPL_MUL_16_16(a, b) \ _SmulLo_SW_SL((WebRtc_Word16)(a), (WebRtc_Word16)(b)) -#elif !defined (WEBRTC_ANDROID) -#define WEBRTC_SPL_MUL_16_16(a, b) \ - ((WebRtc_Word32) (((WebRtc_Word16)(a)) * ((WebRtc_Word16)(b)))) #endif #define WEBRTC_SPL_MUL_16_16_RSFT(a, b, c) \ @@ -192,7 +165,7 @@ extern WebRtc_Word16 WebRtcSpl_kHanningTable[]; // Random table extern WebRtc_Word16 WebRtcSpl_kRandNTable[]; -#ifndef WEBRTC_SPL_INLINE_CALLS +#ifndef WEBRTC_ARM_INLINE_CALLS WebRtc_Word16 WebRtcSpl_AddSatW16(WebRtc_Word16 var1, WebRtc_Word16 var2); WebRtc_Word16 WebRtcSpl_SubSatW16(WebRtc_Word16 var1, WebRtc_Word16 var2); WebRtc_Word32 WebRtcSpl_AddSatW32(WebRtc_Word32 var1, WebRtc_Word32 var2); @@ -201,9 +174,24 @@ WebRtc_Word16 WebRtcSpl_GetSizeInBits(WebRtc_UWord32 value); int WebRtcSpl_NormW32(WebRtc_Word32 value); int WebRtcSpl_NormW16(WebRtc_Word16 value); int WebRtcSpl_NormU32(WebRtc_UWord32 value); +#define WEBRTC_SPL_MUL(a, b) \ + ((WebRtc_Word32) ((WebRtc_Word32)(a) * (WebRtc_Word32)(b))) +#define WEBRTC_SPL_MUL_16_16(a, b) \ + ((WebRtc_Word32) (((WebRtc_Word16)(a)) * ((WebRtc_Word16)(b)))) +#define WEBRTC_SPL_MUL_16_32_RSFT16(a, b) \ + (WEBRTC_SPL_MUL_16_16(a, b >> 16) \ + + ((WEBRTC_SPL_MUL_16_16(a, (b & 0xffff) >> 1) + 0x4000) >> 15)) +#define WEBRTC_SPL_MUL_32_32_RSFT32(a32a, a32b, b32) \ + ((WebRtc_Word32)(WEBRTC_SPL_MUL_16_32_RSFT16(a32a, b32) \ + + (WEBRTC_SPL_MUL_16_32_RSFT16(a32b, b32) >> 16))) +#define WEBRTC_SPL_MUL_32_32_RSFT32BI(a32, b32) \ + ((WebRtc_Word32)(WEBRTC_SPL_MUL_16_32_RSFT16(( \ + (WebRtc_Word16)(a32 >> 16)), b32) + \ + (WEBRTC_SPL_MUL_16_32_RSFT16(( \ + (WebRtc_Word16)((a32 & 0x0000FFFF) >> 1)), b32) >> 15))) #else #include "spl_inl.h" -#endif +#endif // WEBRTC_ARM_INLINE_CALLS // Get SPL Version WebRtc_Word16 WebRtcSpl_get_version(char* version, diff --git a/src/common_audio/signal_processing_library/main/interface/spl_inl.h b/src/common_audio/signal_processing_library/main/interface/spl_inl.h index 8716ca9f1..c7031eba0 100644 --- a/src/common_audio/signal_processing_library/main/interface/spl_inl.h +++ b/src/common_audio/signal_processing_library/main/interface/spl_inl.h @@ -15,9 +15,7 @@ #ifndef WEBRTC_SPL_SPL_INL_H_ #define WEBRTC_SPL_SPL_INL_H_ -#ifdef WEBRTC_SPL_INLINE_CALLS - -#ifdef WEBRTC_ANDROID +#ifdef WEBRTC_ARM_INLINE_CALLS WEBRTC_INLINE WebRtc_Word32 WEBRTC_SPL_MUL(WebRtc_Word32 a, WebRtc_Word32 b) { @@ -35,8 +33,8 @@ WEBRTC_INLINE WebRtc_Word32 WEBRTC_SPL_MUL_16_32_RSFT16(WebRtc_Word16 a, } WEBRTC_INLINE WebRtc_Word32 WEBRTC_SPL_MUL_32_32_RSFT32(WebRtc_Word16 a, - WebRtc_Word16 b, - WebRtc_Word32 c) + WebRtc_Word16 b, + WebRtc_Word32 c) { WebRtc_Word32 tmp; __asm__("pkhbt %0, %1, %2, lsl #16" : "=r"(tmp) : "r"(b), "r"(a)); @@ -44,9 +42,8 @@ WEBRTC_INLINE WebRtc_Word32 WEBRTC_SPL_MUL_32_32_RSFT32(WebRtc_Word16 a, return tmp; } -WEBRTC_INLINE WebRtc_Word32 WEBRTC_SPL_MUL_32_32_RSFT32BI( - WebRtc_Word32 a, - WebRtc_Word32 b) +WEBRTC_INLINE WebRtc_Word32 WEBRTC_SPL_MUL_32_32_RSFT32BI(WebRtc_Word32 a, + WebRtc_Word32 b) { WebRtc_Word32 tmp; __asm__("smmul %0, %1, %2":"=r"(tmp):"r"(a), "r"(b)); @@ -288,6 +285,5 @@ WEBRTC_INLINE int WebRtcSpl_NormU32(WebRtc_UWord32 a) return zeros; } -#endif // WEBRTC_ANDROID -#endif // WEBRTC_SPL_INLINE_CALLS +#endif // WEBRTC_ARM_INLINE_CALLS #endif // WEBRTC_SPL_SPL_INL_H_ diff --git a/src/common_audio/signal_processing_library/main/source/Android.mk b/src/common_audio/signal_processing_library/main/source/Android.mk index 401a7f673..a0ad20445 100644 --- a/src/common_audio/signal_processing_library/main/source/Android.mk +++ b/src/common_audio/signal_processing_library/main/source/Android.mk @@ -14,8 +14,8 @@ LOCAL_ARM_MODE := arm LOCAL_MODULE_CLASS := STATIC_LIBRARIES LOCAL_MODULE := libwebrtc_spl LOCAL_MODULE_TAGS := optional -LOCAL_GENERATED_SOURCES := -LOCAL_SRC_FILES := add_sat_w16.c \ +LOCAL_SRC_FILES := \ + add_sat_w16.c \ add_sat_w32.c \ auto_corr_to_refl_coef.c \ auto_correlation.c \ @@ -62,34 +62,15 @@ LOCAL_SRC_FILES := add_sat_w16.c \ vector_scaling_operations.c # Flags passed to both C and C++ files. -MY_CFLAGS := -MY_CFLAGS_C := -MY_DEFS := '-DNO_TCMALLOC' \ - '-DNO_HEAPCHECKER' \ - '-DWEBRTC_TARGET_PC' \ - '-DWEBRTC_LINUX' -ifeq ($(TARGET_ARCH),arm) -MY_DEFS += \ - '-DWEBRTC_ANDROID' \ - '-DANDROID' -endif -LOCAL_CFLAGS := $(MY_CFLAGS_C) $(MY_CFLAGS) $(MY_DEFS) +LOCAL_CFLAGS := \ + $(MY_WEBRTC_COMMON_DEFS) -# Include paths placed before CFLAGS/CPPFLAGS -LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../../.. \ - $(LOCAL_PATH)/../interface - -# Flags passed to only C++ (and not C) files. -LOCAL_CPPFLAGS := - -LOCAL_LDFLAGS := - -LOCAL_STATIC_LIBRARIES := +LOCAL_C_INCLUDES := \ + $(LOCAL_PATH)/../interface \ + $(LOCAL_PATH)/../../../.. LOCAL_SHARED_LIBRARIES := libstlport -LOCAL_ADDITIONAL_DEPENDENCIES := - ifeq ($(TARGET_OS)-$(TARGET_SIMULATOR),linux-true) LOCAL_LDLIBS += -ldl -lpthread endif @@ -98,5 +79,7 @@ ifneq ($(TARGET_SIMULATOR),true) LOCAL_SHARED_LIBRARIES += libdl endif +ifndef NDK_ROOT include external/stlport/libstlport.mk +endif include $(BUILD_STATIC_LIBRARY) diff --git a/src/common_audio/signal_processing_library/main/source/add_sat_w16.c b/src/common_audio/signal_processing_library/main/source/add_sat_w16.c index d103999b9..bb6af81d9 100644 --- a/src/common_audio/signal_processing_library/main/source/add_sat_w16.c +++ b/src/common_audio/signal_processing_library/main/source/add_sat_w16.c @@ -17,8 +17,6 @@ #include "signal_processing_library.h" -#ifndef SPL_NO_DOUBLE_IMPLEMENTATIONS - WebRtc_Word16 WebRtcSpl_AddSatW16(WebRtc_Word16 var1, WebRtc_Word16 var2) { WebRtc_Word32 s_sum = (WebRtc_Word32)var1 + (WebRtc_Word32)var2; @@ -30,5 +28,3 @@ WebRtc_Word16 WebRtcSpl_AddSatW16(WebRtc_Word16 var1, WebRtc_Word16 var2) return (WebRtc_Word16)s_sum; } - -#endif diff --git a/src/common_audio/signal_processing_library/main/source/add_sat_w32.c b/src/common_audio/signal_processing_library/main/source/add_sat_w32.c index 6d83e75bf..49c01ab39 100644 --- a/src/common_audio/signal_processing_library/main/source/add_sat_w32.c +++ b/src/common_audio/signal_processing_library/main/source/add_sat_w32.c @@ -17,8 +17,6 @@ #include "signal_processing_library.h" -#ifndef SPL_NO_DOUBLE_IMPLEMENTATIONS - WebRtc_Word32 WebRtcSpl_AddSatW32(WebRtc_Word32 var1, WebRtc_Word32 var2) { WebRtc_Word32 l_sum; @@ -43,5 +41,3 @@ WebRtc_Word32 WebRtcSpl_AddSatW32(WebRtc_Word32 var1, WebRtc_Word32 var2) return l_sum; } - -#endif diff --git a/src/common_audio/signal_processing_library/main/source/get_size_in_bits.c b/src/common_audio/signal_processing_library/main/source/get_size_in_bits.c index 53853f053..78a40bb2a 100644 --- a/src/common_audio/signal_processing_library/main/source/get_size_in_bits.c +++ b/src/common_audio/signal_processing_library/main/source/get_size_in_bits.c @@ -17,8 +17,6 @@ #include "signal_processing_library.h" -#ifndef SPL_NO_DOUBLE_IMPLEMENTATIONS - WebRtc_Word16 WebRtcSpl_GetSizeInBits(WebRtc_UWord32 value) { @@ -40,5 +38,3 @@ WebRtc_Word16 WebRtcSpl_GetSizeInBits(WebRtc_UWord32 value) return bits; } - -#endif diff --git a/src/common_audio/signal_processing_library/main/source/norm_u32.c b/src/common_audio/signal_processing_library/main/source/norm_u32.c index c903a6463..339686e08 100644 --- a/src/common_audio/signal_processing_library/main/source/norm_u32.c +++ b/src/common_audio/signal_processing_library/main/source/norm_u32.c @@ -17,8 +17,6 @@ #include "signal_processing_library.h" -#ifndef SPL_NO_DOUBLE_IMPLEMENTATIONS - int WebRtcSpl_NormU32(WebRtc_UWord32 value) { int zeros = 0; @@ -39,4 +37,3 @@ int WebRtcSpl_NormU32(WebRtc_UWord32 value) return zeros; } -#endif diff --git a/src/common_audio/signal_processing_library/main/source/norm_w16.c b/src/common_audio/signal_processing_library/main/source/norm_w16.c index be6711d53..6f3598b2c 100644 --- a/src/common_audio/signal_processing_library/main/source/norm_w16.c +++ b/src/common_audio/signal_processing_library/main/source/norm_w16.c @@ -17,8 +17,6 @@ #include "signal_processing_library.h" -#ifndef SPL_NO_DOUBLE_IMPLEMENTATIONS - int WebRtcSpl_NormW16(WebRtc_Word16 value) { int zeros = 0; @@ -37,4 +35,3 @@ int WebRtcSpl_NormW16(WebRtc_Word16 value) return zeros; } -#endif diff --git a/src/common_audio/signal_processing_library/main/source/norm_w32.c b/src/common_audio/signal_processing_library/main/source/norm_w32.c index d45633501..8db031fe6 100644 --- a/src/common_audio/signal_processing_library/main/source/norm_w32.c +++ b/src/common_audio/signal_processing_library/main/source/norm_w32.c @@ -17,8 +17,6 @@ #include "signal_processing_library.h" -#ifndef SPL_NO_DOUBLE_IMPLEMENTATIONS - int WebRtcSpl_NormW32(WebRtc_Word32 value) { int zeros = 0; @@ -41,5 +39,3 @@ int WebRtcSpl_NormW32(WebRtc_Word32 value) return zeros; } - -#endif diff --git a/src/common_audio/signal_processing_library/main/source/sub_sat_w16.c b/src/common_audio/signal_processing_library/main/source/sub_sat_w16.c index a48c3d5db..64ef24cbe 100644 --- a/src/common_audio/signal_processing_library/main/source/sub_sat_w16.c +++ b/src/common_audio/signal_processing_library/main/source/sub_sat_w16.c @@ -17,9 +17,7 @@ #include "signal_processing_library.h" -#ifndef SPL_NO_DOUBLE_IMPLEMENTATIONS #ifndef XSCALE_OPT - WebRtc_Word16 WebRtcSpl_SubSatW16(WebRtc_Word16 var1, WebRtc_Word16 var2) { WebRtc_Word32 l_diff; @@ -41,8 +39,6 @@ WebRtc_Word16 WebRtcSpl_SubSatW16(WebRtc_Word16 var1, WebRtc_Word16 var2) return s_diff; } - #else #pragma message(">> WebRtcSpl_SubSatW16.c is excluded from this build") #endif // XSCALE_OPT -#endif // SPL_NO_DOUBLE_IMPLEMENTATIONS diff --git a/src/common_audio/signal_processing_library/main/source/sub_sat_w32.c b/src/common_audio/signal_processing_library/main/source/sub_sat_w32.c index add3675b9..6582faa3a 100644 --- a/src/common_audio/signal_processing_library/main/source/sub_sat_w32.c +++ b/src/common_audio/signal_processing_library/main/source/sub_sat_w32.c @@ -17,8 +17,6 @@ #include "signal_processing_library.h" -#ifndef SPL_NO_DOUBLE_IMPLEMENTATIONS - WebRtc_Word32 WebRtcSpl_SubSatW32(WebRtc_Word32 var1, WebRtc_Word32 var2) { WebRtc_Word32 l_diff; @@ -35,5 +33,3 @@ WebRtc_Word32 WebRtcSpl_SubSatW32(WebRtc_Word32 var1, WebRtc_Word32 var2) return l_diff; } - -#endif diff --git a/src/common_audio/vad/main/source/Android.mk b/src/common_audio/vad/main/source/Android.mk index f52df935d..ef8744ee0 100644 --- a/src/common_audio/vad/main/source/Android.mk +++ b/src/common_audio/vad/main/source/Android.mk @@ -14,8 +14,8 @@ LOCAL_ARM_MODE := arm LOCAL_MODULE_CLASS := STATIC_LIBRARIES LOCAL_MODULE := libwebrtc_vad LOCAL_MODULE_TAGS := optional -LOCAL_GENERATED_SOURCES := -LOCAL_SRC_FILES := webrtc_vad.c \ +LOCAL_SRC_FILES := \ + webrtc_vad.c \ vad_const.c \ vad_core.c \ vad_filterbank.c \ @@ -23,34 +23,17 @@ LOCAL_SRC_FILES := webrtc_vad.c \ vad_sp.c # Flags passed to both C and C++ files. -MY_CFLAGS := -MY_CFLAGS_C := -MY_DEFS := '-DNO_TCMALLOC' \ - '-DNO_HEAPCHECKER' \ - '-DWEBRTC_TARGET_PC' \ - '-DWEBRTC_LINUX' -ifeq ($(TARGET_ARCH),arm) -MY_DEFS += \ - '-DWEBRTC_ANDROID' \ - '-DANDROID' -endif -LOCAL_CFLAGS := $(MY_CFLAGS_C) $(MY_CFLAGS) $(MY_DEFS) +LOCAL_CFLAGS := \ + $(MY_WEBRTC_COMMON_DEFS) -# Include paths placed before CFLAGS/CPPFLAGS -LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../../.. \ +LOCAL_C_INCLUDES := \ $(LOCAL_PATH)/../interface \ + $(LOCAL_PATH)/../../../.. \ $(LOCAL_PATH)/../../../signal_processing_library/main/interface -# Flags passed to only C++ (and not C) files. -LOCAL_CPPFLAGS := - -LOCAL_LDFLAGS := - -LOCAL_STATIC_LIBRARIES := - -LOCAL_SHARED_LIBRARIES := libdl \ +LOCAL_SHARED_LIBRARIES := \ + libdl \ libstlport -LOCAL_ADDITIONAL_DEPENDENCIES := ifeq ($(TARGET_OS)-$(TARGET_SIMULATOR),linux-true) LOCAL_LDLIBS += -ldl -lpthread @@ -60,5 +43,7 @@ ifneq ($(TARGET_SIMULATOR),true) LOCAL_SHARED_LIBRARIES += libdl endif +ifndef NDK_ROOT include external/stlport/libstlport.mk +endif include $(BUILD_STATIC_LIBRARY)