diff options
Diffstat (limited to 'chromium/third_party/openmax_dl/dl/dl.gyp')
-rw-r--r-- | chromium/third_party/openmax_dl/dl/dl.gyp | 231 |
1 files changed, 161 insertions, 70 deletions
diff --git a/chromium/third_party/openmax_dl/dl/dl.gyp b/chromium/third_party/openmax_dl/dl/dl.gyp index 0573ce25631..61a05b007d9 100644 --- a/chromium/third_party/openmax_dl/dl/dl.gyp +++ b/chromium/third_party/openmax_dl/dl/dl.gyp @@ -18,79 +18,10 @@ 'include_dirs': [ '../', ], - 'cflags!': [ - '-mfpu=vfpv3-d16', - ], - 'cflags': [ - # We enable Neon instructions even with arm_neon==0, to support - # runtime detection. - '-mfpu=neon', - ], 'sources': [ - 'api/armCOMM_s.h', - 'api/armOMX.h', 'api/omxtypes.h', - 'api/omxtypes_s.h', - 'sp/api/armSP.h', 'sp/api/omxSP.h', - # Complex 32-bit fixed-point FFT. - 'sp/src/armSP_FFT_S32TwiddleTable.c', - 'sp/src/omxSP_FFTGetBufSize_C_SC32.c', - 'sp/src/omxSP_FFTInit_C_SC32.c', - 'sp/src/armSP_FFT_CToC_SC32_Radix2_fs_unsafe_s.S', - 'sp/src/armSP_FFT_CToC_SC32_Radix2_ls_unsafe_s.S', - 'sp/src/armSP_FFT_CToC_SC32_Radix2_fs_unsafe_s.S', - 'sp/src/armSP_FFT_CToC_SC32_Radix4_fs_unsafe_s.S', - 'sp/src/armSP_FFT_CToC_SC32_Radix4_ls_unsafe_s.S', - 'sp/src/armSP_FFT_CToC_SC32_Radix2_unsafe_s.S', - 'sp/src/armSP_FFT_CToC_SC32_Radix4_unsafe_s.S', - 'sp/src/armSP_FFT_CToC_SC32_Radix8_fs_unsafe_s.S', - 'sp/src/omxSP_FFTInv_CToC_SC32_Sfs_s.S', - 'sp/src/omxSP_FFTFwd_CToC_SC32_Sfs_s.S', - # Real 32-bit fixed-point FFT - 'sp/src/armSP_FFTInv_CCSToR_S32_preTwiddleRadix2_unsafe_s.S', - 'sp/src/omxSP_FFTFwd_RToCCS_S32_Sfs_s.S', - 'sp/src/omxSP_FFTGetBufSize_R_S32.c', - 'sp/src/omxSP_FFTInit_R_S32.c', - 'sp/src/omxSP_FFTInv_CCSToR_S32_Sfs_s.S', - # Complex 16-bit fixed-point FFT - 'sp/src/omxSP_FFTInit_C_SC16.c', - 'sp/src/omxSP_FFTGetBufSize_C_SC16.c', - 'sp/src/armSP_FFT_CToC_SC16_Radix2_fs_unsafe_s.S', - 'sp/src/armSP_FFT_CToC_SC16_Radix2_ls_unsafe_s.S', - 'sp/src/armSP_FFT_CToC_SC16_Radix2_ps_unsafe_s.S', - 'sp/src/armSP_FFT_CToC_SC16_Radix2_unsafe_s.S', - 'sp/src/armSP_FFT_CToC_SC16_Radix4_fs_unsafe_s.S', - 'sp/src/armSP_FFT_CToC_SC16_Radix4_ls_unsafe_s.S', - 'sp/src/armSP_FFT_CToC_SC16_Radix4_unsafe_s.S', - 'sp/src/armSP_FFT_CToC_SC16_Radix8_fs_unsafe_s.S', - 'sp/src/omxSP_FFTFwd_CToC_SC16_Sfs_s.S', - 'sp/src/omxSP_FFTInv_CToC_SC16_Sfs_s.S', - # Real 16-bit fixed-point FFT - 'sp/src/omxSP_FFTFwd_RToCCS_S16S32_Sfs_s.S', - 'sp/src/omxSP_FFTGetBufSize_R_S16S32.c', - 'sp/src/omxSP_FFTInit_R_S16S32.c', - 'sp/src/omxSP_FFTInv_CCSToR_S32S16_Sfs_s.S', - # Complex floating-point FFT - 'sp/src/armSP_FFT_CToC_FC32_Radix2_fs_unsafe_s.S', - 'sp/src/armSP_FFT_CToC_FC32_Radix2_ls_unsafe_s.S', - 'sp/src/armSP_FFT_CToC_FC32_Radix2_fs_unsafe_s.S', - 'sp/src/armSP_FFT_CToC_FC32_Radix4_fs_unsafe_s.S', - 'sp/src/armSP_FFT_CToC_FC32_Radix4_ls_unsafe_s.S', - 'sp/src/armSP_FFT_CToC_FC32_Radix2_unsafe_s.S', - 'sp/src/armSP_FFT_CToC_FC32_Radix4_unsafe_s.S', - 'sp/src/armSP_FFT_CToC_FC32_Radix8_fs_unsafe_s.S', 'sp/src/armSP_FFT_F32TwiddleTable.c', - 'sp/src/omxSP_FFTGetBufSize_C_FC32.c', - 'sp/src/omxSP_FFTInit_C_FC32.c', - 'sp/src/omxSP_FFTInv_CToC_FC32_Sfs_s.S', - 'sp/src/omxSP_FFTFwd_CToC_FC32_Sfs_s.S', - # Real floating-point FFT - 'sp/src/armSP_FFTInv_CCSToR_F32_preTwiddleRadix2_unsafe_s.S', - 'sp/src/omxSP_FFTFwd_RToCCS_F32_Sfs_s.S', - 'sp/src/omxSP_FFTGetBufSize_R_F32.c', - 'sp/src/omxSP_FFTInit_R_F32.c', - 'sp/src/omxSP_FFTInv_CCSToR_F32_Sfs_s.S', ], 'conditions' : [ ['big_float_fft == 1', { @@ -98,6 +29,166 @@ 'BIG_FFT_TABLE', ], }], + ['target_arch=="arm"', { + 'cflags!': [ + '-mfpu=vfpv3-d16', + ], + 'cflags': [ + # We enable Neon instructions even with arm_neon==0, to support + # runtime detection. + '-mfpu=neon', + ], + 'dependencies': [ + '<(android_ndk_root)/android_tools_ndk.gyp:cpu_features', + 'openmax_dl_armv7', + ], + 'link_settings' : { + 'libraries': [ + # To get the __android_log_print routine + '-llog', + ], + }, + 'sources': [ + # Common files that are used by both the NEON and non-NEON code. + 'api/armCOMM_s.h', + 'api/armOMX.h', + 'api/omxtypes_s.h', + 'sp/api/armSP.h', + 'sp/src/arm/armSP_FFT_S32TwiddleTable.c', + 'sp/src/arm/detect.c', + 'sp/src/arm/omxSP_FFTGetBufSize_C_FC32.c', + 'sp/src/arm/omxSP_FFTGetBufSize_C_SC16.c', + 'sp/src/arm/omxSP_FFTGetBufSize_C_SC32.c', + 'sp/src/arm/omxSP_FFTGetBufSize_R_F32.c', + 'sp/src/arm/omxSP_FFTGetBufSize_R_S16.c', + 'sp/src/arm/omxSP_FFTGetBufSize_R_S16S32.c', + 'sp/src/arm/omxSP_FFTGetBufSize_R_S32.c', + 'sp/src/arm/omxSP_FFTInit_C_FC32.c', + 'sp/src/arm/omxSP_FFTInit_C_SC16.c', + 'sp/src/arm/omxSP_FFTInit_C_SC32.c', + 'sp/src/arm/omxSP_FFTInit_R_F32.c', + 'sp/src/arm/omxSP_FFTInit_R_S16.c', + 'sp/src/arm/omxSP_FFTInit_R_S16S32.c', + 'sp/src/arm/omxSP_FFTInit_R_S32.c', + + # Complex 32-bit fixed-point FFT. + 'sp/src/arm/neon/armSP_FFT_CToC_SC32_Radix2_fs_unsafe_s.S', + 'sp/src/arm/neon/armSP_FFT_CToC_SC32_Radix2_ls_unsafe_s.S', + 'sp/src/arm/neon/armSP_FFT_CToC_SC32_Radix2_fs_unsafe_s.S', + 'sp/src/arm/neon/armSP_FFT_CToC_SC32_Radix4_fs_unsafe_s.S', + 'sp/src/arm/neon/armSP_FFT_CToC_SC32_Radix4_ls_unsafe_s.S', + 'sp/src/arm/neon/armSP_FFT_CToC_SC32_Radix2_unsafe_s.S', + 'sp/src/arm/neon/armSP_FFT_CToC_SC32_Radix4_unsafe_s.S', + 'sp/src/arm/neon/armSP_FFT_CToC_SC32_Radix8_fs_unsafe_s.S', + 'sp/src/arm/neon/omxSP_FFTInv_CToC_SC32_Sfs_s.S', + 'sp/src/arm/neon/omxSP_FFTFwd_CToC_SC32_Sfs_s.S', + # Real 32-bit fixed-point FFT + 'sp/src/arm/neon/armSP_FFTInv_CCSToR_S32_preTwiddleRadix2_unsafe_s.S', + 'sp/src/arm/neon/omxSP_FFTFwd_RToCCS_S32_Sfs_s.S', + 'sp/src/arm/neon/omxSP_FFTInv_CCSToR_S32_Sfs_s.S', + # Complex 16-bit fixed-point FFT + 'sp/src/arm/neon/armSP_FFTInv_CCSToR_S16_preTwiddleRadix2_unsafe_s.S', + 'sp/src/arm/neon/armSP_FFT_CToC_SC16_Radix2_fs_unsafe_s.S', + 'sp/src/arm/neon/armSP_FFT_CToC_SC16_Radix2_ls_unsafe_s.S', + 'sp/src/arm/neon/armSP_FFT_CToC_SC16_Radix2_ps_unsafe_s.S', + 'sp/src/arm/neon/armSP_FFT_CToC_SC16_Radix2_unsafe_s.S', + 'sp/src/arm/neon/armSP_FFT_CToC_SC16_Radix4_fs_unsafe_s.S', + 'sp/src/arm/neon/armSP_FFT_CToC_SC16_Radix4_ls_unsafe_s.S', + 'sp/src/arm/neon/armSP_FFT_CToC_SC16_Radix4_unsafe_s.S', + 'sp/src/arm/neon/armSP_FFT_CToC_SC16_Radix8_fs_unsafe_s.S', + 'sp/src/arm/neon/omxSP_FFTFwd_CToC_SC16_Sfs_s.S', + 'sp/src/arm/neon/omxSP_FFTInv_CToC_SC16_Sfs_s.S', + # Real 16-bit fixed-point FFT + 'sp/src/arm/neon/omxSP_FFTFwd_RToCCS_S16_Sfs_s.S', + 'sp/src/arm/neon/omxSP_FFTInv_CCSToR_S16_Sfs_s.S', + 'sp/src/arm/neon/omxSP_FFTFwd_RToCCS_S16S32_Sfs_s.S', + 'sp/src/arm/neon/omxSP_FFTInv_CCSToR_S32S16_Sfs_s.S', + # Complex floating-point FFT + 'sp/src/arm/neon/armSP_FFT_CToC_FC32_Radix2_fs_unsafe_s.S', + 'sp/src/arm/neon/armSP_FFT_CToC_FC32_Radix2_ls_unsafe_s.S', + 'sp/src/arm/neon/armSP_FFT_CToC_FC32_Radix2_fs_unsafe_s.S', + 'sp/src/arm/neon/armSP_FFT_CToC_FC32_Radix4_fs_unsafe_s.S', + 'sp/src/arm/neon/armSP_FFT_CToC_FC32_Radix4_ls_unsafe_s.S', + 'sp/src/arm/neon/armSP_FFT_CToC_FC32_Radix2_unsafe_s.S', + 'sp/src/arm/neon/armSP_FFT_CToC_FC32_Radix4_unsafe_s.S', + 'sp/src/arm/neon/armSP_FFT_CToC_FC32_Radix8_fs_unsafe_s.S', + 'sp/src/arm/neon/omxSP_FFTInv_CToC_FC32_Sfs_s.S', + 'sp/src/arm/neon/omxSP_FFTFwd_CToC_FC32_Sfs_s.S', + # Real floating-point FFT + 'sp/src/arm/neon/armSP_FFTInv_CCSToR_F32_preTwiddleRadix2_unsafe_s.S', + 'sp/src/arm/neon/omxSP_FFTFwd_RToCCS_F32_Sfs_s.S', + 'sp/src/arm/neon/omxSP_FFTInv_CCSToR_F32_Sfs_s.S', + ], + }], + ['target_arch=="ia32" or target_arch=="x64"', { + 'cflags': [ + '-msse2', + ], + 'sources': [ + # Real 32-bit floating-point FFT. + 'sp/api/x86SP.h', + 'sp/src/x86/omxSP_FFTFwd_RToCCS_F32_Sfs.c', + 'sp/src/x86/omxSP_FFTGetBufSize_R_F32.c', + 'sp/src/x86/omxSP_FFTInit_R_F32.c', + 'sp/src/x86/omxSP_FFTInv_CCSToR_F32_Sfs.c', + 'sp/src/x86/x86SP_FFT_CToC_FC32_Fwd_Radix2_fs.c', + 'sp/src/x86/x86SP_FFT_CToC_FC32_Fwd_Radix2_ls.c', + 'sp/src/x86/x86SP_FFT_CToC_FC32_Fwd_Radix2_ls_sse.c', + 'sp/src/x86/x86SP_FFT_CToC_FC32_Fwd_Radix2_ms.c', + 'sp/src/x86/x86SP_FFT_CToC_FC32_Fwd_Radix4_fs.c', + 'sp/src/x86/x86SP_FFT_CToC_FC32_Fwd_Radix4_fs_sse.c', + 'sp/src/x86/x86SP_FFT_CToC_FC32_Fwd_Radix4_ls.c', + 'sp/src/x86/x86SP_FFT_CToC_FC32_Fwd_Radix4_ls_sse.c', + 'sp/src/x86/x86SP_FFT_CToC_FC32_Fwd_Radix4_ms.c', + 'sp/src/x86/x86SP_FFT_CToC_FC32_Fwd_Radix4_ms_sse.c', + 'sp/src/x86/x86SP_FFT_CToC_FC32_Inv_Radix2_fs.c', + 'sp/src/x86/x86SP_FFT_CToC_FC32_Inv_Radix2_ls.c', + 'sp/src/x86/x86SP_FFT_CToC_FC32_Inv_Radix2_ls_sse.c', + 'sp/src/x86/x86SP_FFT_CToC_FC32_Inv_Radix2_ms.c', + 'sp/src/x86/x86SP_FFT_CToC_FC32_Inv_Radix4_fs.c', + 'sp/src/x86/x86SP_FFT_CToC_FC32_Inv_Radix4_fs_sse.c', + 'sp/src/x86/x86SP_FFT_CToC_FC32_Inv_Radix4_ls.c', + 'sp/src/x86/x86SP_FFT_CToC_FC32_Inv_Radix4_ls_sse.c', + 'sp/src/x86/x86SP_FFT_CToC_FC32_Inv_Radix4_ms.c', + 'sp/src/x86/x86SP_FFT_CToC_FC32_Inv_Radix4_ms_sse.c', + 'sp/src/x86/x86SP_FFT_F32_radix2_kernel.c', + 'sp/src/x86/x86SP_FFT_F32_radix4_kernel.c', + 'sp/src/x86/x86SP_SSE_Math.h', + ], + }], + ], + }, + ], + 'conditions': [ + ['target_arch=="arm"', { + 'targets': [ + { + # Non-NEON implementation of FFT. This library is NOT + # standalone. Applications must link with openmax_dl. + 'target_name': 'openmax_dl_armv7', + 'type': 'static_library', + 'include_dirs': [ + '../', + ], + 'cflags!': [ + '-mfpu=neon', + ], + 'sources': [ + # Complex floating-point FFT + 'sp/src/arm/armv7/armSP_FFT_CToC_FC32_Radix2_fs_unsafe_s.S', + 'sp/src/arm/armv7/armSP_FFT_CToC_FC32_Radix2_fs_unsafe_s.S', + 'sp/src/arm/armv7/armSP_FFT_CToC_FC32_Radix4_fs_unsafe_s.S', + 'sp/src/arm/armv7/armSP_FFT_CToC_FC32_Radix4_unsafe_s.S', + 'sp/src/arm/armv7/armSP_FFT_CToC_FC32_Radix8_fs_unsafe_s.S', + 'sp/src/arm/armv7/omxSP_FFTInv_CToC_FC32_Sfs_s.S', + 'sp/src/arm/armv7/omxSP_FFTFwd_CToC_FC32_Sfs_s.S', + # Real floating-point FFT + 'sp/src/arm/armv7/armSP_FFTInv_CCSToR_F32_preTwiddleRadix2_unsafe_s.S', + 'sp/src/arm/armv7/omxSP_FFTFwd_RToCCS_F32_Sfs_s.S', + 'sp/src/arm/armv7/omxSP_FFTInv_CCSToR_F32_Sfs_s.S', + ], + }, ], - }] + }], + ], } |