1*77c1e3ccSAndroid Build Coastguard Worker# 2*77c1e3ccSAndroid Build Coastguard Worker# Copyright (c) 2017, Alliance for Open Media. All rights reserved. 3*77c1e3ccSAndroid Build Coastguard Worker# 4*77c1e3ccSAndroid Build Coastguard Worker# This source code is subject to the terms of the BSD 2 Clause License and the 5*77c1e3ccSAndroid Build Coastguard Worker# Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License was 6*77c1e3ccSAndroid Build Coastguard Worker# not distributed with this source code in the LICENSE file, you can obtain it 7*77c1e3ccSAndroid Build Coastguard Worker# at www.aomedia.org/license/software. If the Alliance for Open Media Patent 8*77c1e3ccSAndroid Build Coastguard Worker# License 1.0 was not distributed with this source code in the PATENTS file, you 9*77c1e3ccSAndroid Build Coastguard Worker# can obtain it at www.aomedia.org/license/patent. 10*77c1e3ccSAndroid Build Coastguard Worker# 11*77c1e3ccSAndroid Build Coastguard Workerif(AOM_AOM_DSP_AOM_DSP_CMAKE_) 12*77c1e3ccSAndroid Build Coastguard Worker return() 13*77c1e3ccSAndroid Build Coastguard Workerendif() # AOM_AOM_DSP_AOM_DSP_CMAKE_ 14*77c1e3ccSAndroid Build Coastguard Workerset(AOM_AOM_DSP_AOM_DSP_CMAKE_ 1) 15*77c1e3ccSAndroid Build Coastguard Worker 16*77c1e3ccSAndroid Build Coastguard Workerlist(APPEND AOM_DSP_COMMON_SOURCES 17*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/aom_convolve.c" 18*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/aom_dsp_common.h" 19*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/aom_filter.h" 20*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/aom_simd.h" 21*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/aom_simd_inline.h" 22*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/bitreader_buffer.c" 23*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/bitreader_buffer.h" 24*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/bitwriter_buffer.c" 25*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/bitwriter_buffer.h" 26*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/blend.h" 27*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/blend_a64_hmask.c" 28*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/blend_a64_mask.c" 29*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/blend_a64_vmask.c" 30*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/entcode.c" 31*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/entcode.h" 32*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/grain_params.h" 33*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/intrapred.c" 34*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/intrapred_common.h" 35*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/loopfilter.c" 36*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/odintrin.c" 37*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/odintrin.h" 38*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/prob.h" 39*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/recenter.h" 40*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/simd/v128_intrinsics.h" 41*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/simd/v128_intrinsics_c.h" 42*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/simd/v256_intrinsics.h" 43*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/simd/v256_intrinsics_c.h" 44*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/simd/v64_intrinsics.h" 45*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/simd/v64_intrinsics_c.h" 46*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/txfm_common.h" 47*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/convolve_common_intrin.h") 48*77c1e3ccSAndroid Build Coastguard Worker 49*77c1e3ccSAndroid Build Coastguard Workerlist(APPEND AOM_DSP_COMMON_ASM_SSE2 50*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/intrapred_asm_sse2.asm") 51*77c1e3ccSAndroid Build Coastguard Workerif(CONFIG_AV1_HIGHBITDEPTH) 52*77c1e3ccSAndroid Build Coastguard Worker list(APPEND AOM_DSP_COMMON_ASM_SSE2 53*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/aom_high_subpixel_8t_sse2.asm" 54*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/aom_high_subpixel_bilinear_sse2.asm" 55*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/highbd_intrapred_asm_sse2.asm") 56*77c1e3ccSAndroid Build Coastguard Workerendif() 57*77c1e3ccSAndroid Build Coastguard Worker 58*77c1e3ccSAndroid Build Coastguard Workerlist(APPEND AOM_DSP_COMMON_INTRIN_SSE2 59*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/aom_convolve_copy_sse2.c" 60*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/convolve.h" 61*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/convolve_sse2.h" 62*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/intrapred_sse2.c" 63*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/intrapred_x86.h" 64*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/loopfilter_sse2.c" 65*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/lpf_common_sse2.h" 66*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/mem_sse2.h" 67*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/transpose_sse2.h" 68*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/txfm_common_sse2.h" 69*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/sum_squares_sse2.h" 70*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/bitdepth_conversion_sse2.h") 71*77c1e3ccSAndroid Build Coastguard Worker 72*77c1e3ccSAndroid Build Coastguard Workerlist(APPEND AOM_DSP_COMMON_ASM_SSSE3 73*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/aom_subpixel_8t_ssse3.asm" 74*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/aom_subpixel_bilinear_ssse3.asm") 75*77c1e3ccSAndroid Build Coastguard Worker 76*77c1e3ccSAndroid Build Coastguard Workerlist(APPEND AOM_DSP_COMMON_INTRIN_SSSE3 77*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/aom_subpixel_8t_intrin_ssse3.c" 78*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/convolve_ssse3.h" 79*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/intrapred_ssse3.c") 80*77c1e3ccSAndroid Build Coastguard Worker 81*77c1e3ccSAndroid Build Coastguard Workerlist(APPEND AOM_DSP_COMMON_INTRIN_SSE4_1 82*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/blend_mask_sse4.h" 83*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/blend_a64_hmask_sse4.c" 84*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/blend_a64_mask_sse4.c" 85*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/blend_a64_vmask_sse4.c" 86*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/intrapred_sse4.c" 87*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/intrapred_utils.h") 88*77c1e3ccSAndroid Build Coastguard Worker 89*77c1e3ccSAndroid Build Coastguard Workerlist(APPEND AOM_DSP_COMMON_INTRIN_AVX2 90*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/aom_convolve_copy_avx2.c" 91*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/aom_subpixel_8t_intrin_avx2.c" 92*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/common_avx2.h" 93*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/txfm_common_avx2.h" 94*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/convolve_avx2.h" 95*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/intrapred_avx2.c" 96*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/loopfilter_avx2.c" 97*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/blend_a64_mask_avx2.c" 98*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/bitdepth_conversion_avx2.h") 99*77c1e3ccSAndroid Build Coastguard Worker 100*77c1e3ccSAndroid Build Coastguard Workerif(CONFIG_SVT_AV1) 101*77c1e3ccSAndroid Build Coastguard Worker list(APPEND AOM_DSP_COMMON_INTRIN_AVX2 102*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/third_party/SVT-AV1/convolve_2d_avx2.h" 103*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/third_party/SVT-AV1/convolve_avx2.h" 104*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/third_party/SVT-AV1/EbMemory_AVX2.h" 105*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/third_party/SVT-AV1/EbMemory_SSE4_1.h" 106*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/third_party/SVT-AV1/synonyms.h") 107*77c1e3ccSAndroid Build Coastguard Workerendif() 108*77c1e3ccSAndroid Build Coastguard Worker 109*77c1e3ccSAndroid Build Coastguard Workerlist(APPEND AOM_DSP_COMMON_INTRIN_NEON 110*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/aom_convolve_copy_neon.c" 111*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/aom_convolve8_neon.c" 112*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/aom_scaled_convolve8_neon.c" 113*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/loopfilter_neon.c" 114*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/intrapred_neon.c" 115*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/blend_a64_mask_neon.c") 116*77c1e3ccSAndroid Build Coastguard Worker 117*77c1e3ccSAndroid Build Coastguard Workerlist(APPEND AOM_DSP_COMMON_INTRIN_NEON_DOTPROD 118*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/aom_convolve8_neon_dotprod.c" 119*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/aom_scaled_convolve8_neon_dotprod.c") 120*77c1e3ccSAndroid Build Coastguard Worker 121*77c1e3ccSAndroid Build Coastguard Workerlist(APPEND AOM_DSP_COMMON_INTRIN_NEON_I8MM 122*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/aom_convolve8_neon_i8mm.c" 123*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/aom_scaled_convolve8_neon_i8mm.c") 124*77c1e3ccSAndroid Build Coastguard Worker 125*77c1e3ccSAndroid Build Coastguard Workerif(CONFIG_AV1_HIGHBITDEPTH) 126*77c1e3ccSAndroid Build Coastguard Worker list(APPEND AOM_DSP_COMMON_INTRIN_SSE2 127*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/highbd_convolve_sse2.c" 128*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/highbd_intrapred_sse2.c" 129*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/highbd_loopfilter_sse2.c") 130*77c1e3ccSAndroid Build Coastguard Worker 131*77c1e3ccSAndroid Build Coastguard Worker list(APPEND AOM_DSP_COMMON_INTRIN_SSSE3 132*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/highbd_convolve_ssse3.c") 133*77c1e3ccSAndroid Build Coastguard Worker 134*77c1e3ccSAndroid Build Coastguard Worker list(APPEND AOM_DSP_COMMON_INTRIN_AVX2 135*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/highbd_convolve_avx2.c" 136*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/highbd_loopfilter_avx2.c") 137*77c1e3ccSAndroid Build Coastguard Worker 138*77c1e3ccSAndroid Build Coastguard Worker list(APPEND AOM_DSP_COMMON_INTRIN_NEON 139*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/highbd_blend_a64_hmask_neon.c" 140*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/highbd_blend_a64_mask_neon.c" 141*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/highbd_blend_a64_vmask_neon.c" 142*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/highbd_convolve8_neon.c" 143*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/highbd_intrapred_neon.c" 144*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/highbd_loopfilter_neon.c") 145*77c1e3ccSAndroid Build Coastguard Worker 146*77c1e3ccSAndroid Build Coastguard Worker list(APPEND AOM_DSP_COMMON_INTRIN_SVE 147*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/highbd_convolve8_sve.c") 148*77c1e3ccSAndroid Build Coastguard Workerendif() 149*77c1e3ccSAndroid Build Coastguard Worker 150*77c1e3ccSAndroid Build Coastguard Workerif(CONFIG_AV1_DECODER) 151*77c1e3ccSAndroid Build Coastguard Worker list(APPEND AOM_DSP_DECODER_SOURCES 152*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/binary_codes_reader.c" 153*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/binary_codes_reader.h" 154*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/bitreader.c" 155*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/bitreader.h" "${AOM_ROOT}/aom_dsp/entdec.c" 156*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/entdec.h") 157*77c1e3ccSAndroid Build Coastguard Workerendif() 158*77c1e3ccSAndroid Build Coastguard Worker 159*77c1e3ccSAndroid Build Coastguard Workerif(CONFIG_AV1_ENCODER) 160*77c1e3ccSAndroid Build Coastguard Worker list(APPEND AOM_DSP_ENCODER_SOURCES 161*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/avg.c" 162*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/bitwriter.c" 163*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/bitwriter.h" 164*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/blk_sse_sum.c" 165*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/entenc.c" 166*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/entenc.h" 167*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/fft.c" 168*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/fft_common.h" 169*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/fwd_txfm.c" 170*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/psnr.c" 171*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/psnr.h" 172*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/quantize.c" 173*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/quantize.h" 174*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/sad.c" 175*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/sad_av1.c" 176*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/subtract.c" 177*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/sse.c" 178*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/ssim.c" 179*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/ssim.h" 180*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/sum_squares.c" 181*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/variance.c" 182*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/variance.h") 183*77c1e3ccSAndroid Build Coastguard Worker 184*77c1e3ccSAndroid Build Coastguard Worker # Flow estimation library and grain/noise table/model. 185*77c1e3ccSAndroid Build Coastguard Worker if(NOT CONFIG_REALTIME_ONLY) 186*77c1e3ccSAndroid Build Coastguard Worker list(APPEND AOM_DSP_ENCODER_SOURCES 187*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/pyramid.c" 188*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/binary_codes_writer.c" 189*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/binary_codes_writer.h" 190*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/flow_estimation/corner_detect.c" 191*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/flow_estimation/corner_match.c" 192*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/flow_estimation/disflow.c" 193*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/flow_estimation/flow_estimation.c" 194*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/grain_table.c" 195*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/grain_table.h" 196*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/noise_model.c" 197*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/noise_model.h" 198*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/noise_util.c" 199*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/noise_util.h" 200*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/flow_estimation/ransac.c") 201*77c1e3ccSAndroid Build Coastguard Worker 202*77c1e3ccSAndroid Build Coastguard Worker list(APPEND AOM_DSP_ENCODER_INTRIN_SSE4_1 203*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/flow_estimation/x86/corner_match_sse4.c" 204*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/flow_estimation/x86/disflow_sse4.c") 205*77c1e3ccSAndroid Build Coastguard Worker 206*77c1e3ccSAndroid Build Coastguard Worker list(APPEND AOM_DSP_ENCODER_INTRIN_AVX2 207*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/flow_estimation/x86/corner_match_avx2.c" 208*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/flow_estimation/x86/disflow_avx2.c") 209*77c1e3ccSAndroid Build Coastguard Worker 210*77c1e3ccSAndroid Build Coastguard Worker list(APPEND AOM_DSP_ENCODER_INTRIN_NEON 211*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/flow_estimation/arm/disflow_neon.c") 212*77c1e3ccSAndroid Build Coastguard Worker 213*77c1e3ccSAndroid Build Coastguard Worker list(APPEND AOM_DSP_ENCODER_INTRIN_SVE 214*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/flow_estimation/arm/disflow_sve.c") 215*77c1e3ccSAndroid Build Coastguard Worker endif() 216*77c1e3ccSAndroid Build Coastguard Worker 217*77c1e3ccSAndroid Build Coastguard Worker list(APPEND AOM_DSP_ENCODER_ASM_SSE2 "${AOM_ROOT}/aom_dsp/x86/sad4d_sse2.asm" 218*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/sad_sse2.asm" 219*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/subtract_sse2.asm") 220*77c1e3ccSAndroid Build Coastguard Worker 221*77c1e3ccSAndroid Build Coastguard Worker list(APPEND AOM_DSP_ENCODER_ASM_SSE2_X86_64 222*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/ssim_sse2_x86_64.asm") 223*77c1e3ccSAndroid Build Coastguard Worker 224*77c1e3ccSAndroid Build Coastguard Worker list(APPEND AOM_DSP_ENCODER_INTRIN_SSE2 225*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/avg_intrin_sse2.c" 226*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/fft_sse2.c" 227*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/fwd_txfm_impl_sse2.h" 228*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/fwd_txfm_sse2.c" 229*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/fwd_txfm_sse2.h" 230*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/quantize_sse2.c" 231*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/adaptive_quantize_sse2.c" 232*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/quantize_x86.h" 233*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/blk_sse_sum_sse2.c" 234*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/sum_squares_sse2.c" 235*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/variance_sse2.c" 236*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/jnt_sad_sse2.c") 237*77c1e3ccSAndroid Build Coastguard Worker 238*77c1e3ccSAndroid Build Coastguard Worker list(APPEND AOM_DSP_ENCODER_ASM_SSSE3 239*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/subpel_variance_ssse3.asm") 240*77c1e3ccSAndroid Build Coastguard Worker 241*77c1e3ccSAndroid Build Coastguard Worker list(APPEND AOM_DSP_ENCODER_ASM_SSSE3_X86_64 242*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/fwd_txfm_ssse3_x86_64.asm" 243*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/quantize_ssse3_x86_64.asm") 244*77c1e3ccSAndroid Build Coastguard Worker 245*77c1e3ccSAndroid Build Coastguard Worker list(APPEND AOM_DSP_ENCODER_INTRIN_AVX2 246*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/avg_intrin_avx2.c" 247*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/fft_avx2.c" 248*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/masked_sad_intrin_avx2.c" 249*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/subtract_avx2.c" 250*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/adaptive_quantize_avx2.c" 251*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/quantize_avx2.c" 252*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/sad4d_avx2.c" 253*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/sad_avx2.c" 254*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/sad_impl_avx2.c" 255*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/variance_avx2.c" 256*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/sse_avx2.c" 257*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/variance_impl_avx2.c" 258*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/obmc_sad_avx2.c" 259*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/obmc_variance_avx2.c" 260*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/blk_sse_sum_avx2.c" 261*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/sum_squares_avx2.c") 262*77c1e3ccSAndroid Build Coastguard Worker 263*77c1e3ccSAndroid Build Coastguard Worker list(APPEND AOM_DSP_ENCODER_INTRIN_AVX 264*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/aom_quantize_avx.c") 265*77c1e3ccSAndroid Build Coastguard Worker 266*77c1e3ccSAndroid Build Coastguard Worker list(APPEND AOM_DSP_ENCODER_INTRIN_SSSE3 267*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/masked_sad_intrin_ssse3.h" 268*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/masked_sad_intrin_ssse3.c" 269*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/masked_variance_intrin_ssse3.h" 270*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/masked_variance_intrin_ssse3.c" 271*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/quantize_ssse3.c" 272*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/variance_impl_ssse3.c" 273*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/variance_ssse3.c" 274*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/jnt_variance_ssse3.c") 275*77c1e3ccSAndroid Build Coastguard Worker 276*77c1e3ccSAndroid Build Coastguard Worker list(APPEND AOM_DSP_ENCODER_INTRIN_SSE4_1 277*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/avg_intrin_sse4.c" 278*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/sse_sse4.c" 279*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/obmc_sad_sse4.c" 280*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/obmc_variance_sse4.c") 281*77c1e3ccSAndroid Build Coastguard Worker 282*77c1e3ccSAndroid Build Coastguard Worker list(APPEND AOM_DSP_ENCODER_INTRIN_NEON 283*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/avg_pred_neon.c" 284*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/fwd_txfm_neon.c" 285*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/sadxd_neon.c" 286*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/sad_neon.c" 287*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/masked_sad_neon.c" 288*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/subpel_variance_neon.c" 289*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/variance_neon.c" 290*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/hadamard_neon.c" 291*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/avg_neon.c" 292*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/obmc_variance_neon.c" 293*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/obmc_sad_neon.c" 294*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/sse_neon.c" 295*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/subtract_neon.c" 296*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/sum_squares_neon.c" 297*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/blk_sse_sum_neon.c") 298*77c1e3ccSAndroid Build Coastguard Worker 299*77c1e3ccSAndroid Build Coastguard Worker list(APPEND AOM_DSP_ENCODER_INTRIN_NEON_DOTPROD 300*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/sad_neon_dotprod.c" 301*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/sadxd_neon_dotprod.c" 302*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/sse_neon_dotprod.c" 303*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/sum_squares_neon_dotprod.c" 304*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/variance_neon_dotprod.c") 305*77c1e3ccSAndroid Build Coastguard Worker 306*77c1e3ccSAndroid Build Coastguard Worker list(APPEND AOM_DSP_ENCODER_INTRIN_SVE "${AOM_ROOT}/aom_dsp/arm/avg_sve.c" 307*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/blk_sse_sum_sve.c" 308*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/sum_squares_sve.c") 309*77c1e3ccSAndroid Build Coastguard Worker 310*77c1e3ccSAndroid Build Coastguard Worker if(CONFIG_AV1_HIGHBITDEPTH) 311*77c1e3ccSAndroid Build Coastguard Worker list(APPEND AOM_DSP_ENCODER_ASM_SSE2 312*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/highbd_sad4d_sse2.asm" 313*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/highbd_sad_sse2.asm" 314*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/highbd_subpel_variance_impl_sse2.asm" 315*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/highbd_variance_impl_sse2.asm") 316*77c1e3ccSAndroid Build Coastguard Worker 317*77c1e3ccSAndroid Build Coastguard Worker list(APPEND AOM_DSP_ENCODER_INTRIN_SSE2 318*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/highbd_adaptive_quantize_sse2.c" 319*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/highbd_quantize_intrin_sse2.c" 320*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/highbd_subtract_sse2.c" 321*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/highbd_variance_sse2.c") 322*77c1e3ccSAndroid Build Coastguard Worker 323*77c1e3ccSAndroid Build Coastguard Worker list(APPEND AOM_DSP_ENCODER_INTRIN_AVX2 324*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/highbd_adaptive_quantize_avx2.c" 325*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/highbd_quantize_intrin_avx2.c" 326*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/highbd_sad_avx2.c" 327*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/highbd_variance_avx2.c") 328*77c1e3ccSAndroid Build Coastguard Worker 329*77c1e3ccSAndroid Build Coastguard Worker list(APPEND AOM_DSP_ENCODER_INTRIN_SSE4_1 330*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/highbd_variance_sse4.c") 331*77c1e3ccSAndroid Build Coastguard Worker 332*77c1e3ccSAndroid Build Coastguard Worker list(APPEND AOM_DSP_ENCODER_INTRIN_NEON 333*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/highbd_avg_neon.c" 334*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/highbd_avg_pred_neon.c" 335*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/highbd_hadamard_neon.c" 336*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/highbd_masked_sad_neon.c" 337*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/highbd_obmc_sad_neon.c" 338*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/highbd_obmc_variance_neon.c" 339*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/highbd_quantize_neon.c" 340*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/highbd_sad_neon.c" 341*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/highbd_sadxd_neon.c" 342*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/highbd_sse_neon.c" 343*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/highbd_subpel_variance_neon.c" 344*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/highbd_variance_neon.c") 345*77c1e3ccSAndroid Build Coastguard Worker 346*77c1e3ccSAndroid Build Coastguard Worker list(APPEND AOM_DSP_ENCODER_INTRIN_NEON_DOTPROD 347*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/highbd_variance_neon_dotprod.c") 348*77c1e3ccSAndroid Build Coastguard Worker 349*77c1e3ccSAndroid Build Coastguard Worker list(APPEND AOM_DSP_ENCODER_INTRIN_SVE 350*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/highbd_sse_sve.c" 351*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/highbd_variance_sve.c") 352*77c1e3ccSAndroid Build Coastguard Worker endif() 353*77c1e3ccSAndroid Build Coastguard Worker 354*77c1e3ccSAndroid Build Coastguard Worker if(CONFIG_INTERNAL_STATS) 355*77c1e3ccSAndroid Build Coastguard Worker list(APPEND AOM_DSP_ENCODER_SOURCES "${AOM_ROOT}/aom_dsp/fastssim.c" 356*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/psnrhvs.c") 357*77c1e3ccSAndroid Build Coastguard Worker endif() 358*77c1e3ccSAndroid Build Coastguard Worker 359*77c1e3ccSAndroid Build Coastguard Worker if(CONFIG_TUNE_VMAF) 360*77c1e3ccSAndroid Build Coastguard Worker list(APPEND AOM_DSP_ENCODER_SOURCES "${AOM_ROOT}/aom_dsp/vmaf.c" 361*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/vmaf.h") 362*77c1e3ccSAndroid Build Coastguard Worker endif() 363*77c1e3ccSAndroid Build Coastguard Worker 364*77c1e3ccSAndroid Build Coastguard Worker if(CONFIG_TUNE_BUTTERAUGLI) 365*77c1e3ccSAndroid Build Coastguard Worker list(APPEND AOM_DSP_ENCODER_SOURCES "${AOM_ROOT}/aom_dsp/butteraugli.c" 366*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/butteraugli.h") 367*77c1e3ccSAndroid Build Coastguard Worker endif() 368*77c1e3ccSAndroid Build Coastguard Worker 369*77c1e3ccSAndroid Build Coastguard Worker if(CONFIG_REALTIME_ONLY) 370*77c1e3ccSAndroid Build Coastguard Worker list(REMOVE_ITEM AOM_DSP_ENCODER_INTRIN_AVX2 371*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/adaptive_quantize_avx2.c" 372*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/highbd_adaptive_quantize_avx2.c" 373*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/obmc_sad_avx2.c" 374*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/obmc_variance_avx2.c") 375*77c1e3ccSAndroid Build Coastguard Worker 376*77c1e3ccSAndroid Build Coastguard Worker list(REMOVE_ITEM AOM_DSP_ENCODER_INTRIN_SSE4_1 377*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/obmc_sad_sse4.c" 378*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/obmc_variance_sse4.c") 379*77c1e3ccSAndroid Build Coastguard Worker 380*77c1e3ccSAndroid Build Coastguard Worker list(REMOVE_ITEM AOM_DSP_ENCODER_INTRIN_SSE2 381*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/adaptive_quantize_sse2.c" 382*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/x86/highbd_adaptive_quantize_sse2.c") 383*77c1e3ccSAndroid Build Coastguard Worker 384*77c1e3ccSAndroid Build Coastguard Worker list(REMOVE_ITEM AOM_DSP_ENCODER_INTRIN_NEON 385*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/highbd_obmc_sad_neon.c" 386*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/highbd_obmc_variance_neon.c" 387*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/obmc_sad_neon.c" 388*77c1e3ccSAndroid Build Coastguard Worker "${AOM_ROOT}/aom_dsp/arm/obmc_variance_neon.c") 389*77c1e3ccSAndroid Build Coastguard Worker endif() 390*77c1e3ccSAndroid Build Coastguard Workerendif() 391*77c1e3ccSAndroid Build Coastguard Worker 392*77c1e3ccSAndroid Build Coastguard Worker# Creates aom_dsp build targets. Must not be called until after libaom target 393*77c1e3ccSAndroid Build Coastguard Worker# has been created. 394*77c1e3ccSAndroid Build Coastguard Workerfunction(setup_aom_dsp_targets) 395*77c1e3ccSAndroid Build Coastguard Worker add_library(aom_dsp_common OBJECT ${AOM_DSP_COMMON_SOURCES}) 396*77c1e3ccSAndroid Build Coastguard Worker list(APPEND AOM_LIB_TARGETS aom_dsp_common) 397*77c1e3ccSAndroid Build Coastguard Worker create_no_op_source_file("aom_av1" "c" "no_op_source_file") 398*77c1e3ccSAndroid Build Coastguard Worker add_library(aom_dsp OBJECT "${no_op_source_file}") 399*77c1e3ccSAndroid Build Coastguard Worker target_sources(aom PRIVATE $<TARGET_OBJECTS:aom_dsp_common>) 400*77c1e3ccSAndroid Build Coastguard Worker if(BUILD_SHARED_LIBS) 401*77c1e3ccSAndroid Build Coastguard Worker target_sources(aom_static PRIVATE $<TARGET_OBJECTS:aom_dsp_common>) 402*77c1e3ccSAndroid Build Coastguard Worker endif() 403*77c1e3ccSAndroid Build Coastguard Worker list(APPEND AOM_LIB_TARGETS aom_dsp) 404*77c1e3ccSAndroid Build Coastguard Worker 405*77c1e3ccSAndroid Build Coastguard Worker # Not all generators support libraries consisting only of object files. Add a 406*77c1e3ccSAndroid Build Coastguard Worker # source file to the aom_dsp target. 407*77c1e3ccSAndroid Build Coastguard Worker add_no_op_source_file_to_target("aom_dsp" "c") 408*77c1e3ccSAndroid Build Coastguard Worker 409*77c1e3ccSAndroid Build Coastguard Worker if(CONFIG_AV1_DECODER) 410*77c1e3ccSAndroid Build Coastguard Worker add_library(aom_dsp_decoder OBJECT ${AOM_DSP_DECODER_SOURCES}) 411*77c1e3ccSAndroid Build Coastguard Worker list(APPEND AOM_LIB_TARGETS aom_dsp_decoder) 412*77c1e3ccSAndroid Build Coastguard Worker target_sources(aom PRIVATE $<TARGET_OBJECTS:aom_dsp_decoder>) 413*77c1e3ccSAndroid Build Coastguard Worker if(BUILD_SHARED_LIBS) 414*77c1e3ccSAndroid Build Coastguard Worker target_sources(aom_static PRIVATE $<TARGET_OBJECTS:aom_dsp_decoder>) 415*77c1e3ccSAndroid Build Coastguard Worker endif() 416*77c1e3ccSAndroid Build Coastguard Worker endif() 417*77c1e3ccSAndroid Build Coastguard Worker 418*77c1e3ccSAndroid Build Coastguard Worker if(CONFIG_AV1_ENCODER) 419*77c1e3ccSAndroid Build Coastguard Worker add_library(aom_dsp_encoder OBJECT ${AOM_DSP_ENCODER_SOURCES}) 420*77c1e3ccSAndroid Build Coastguard Worker list(APPEND AOM_LIB_TARGETS aom_dsp_encoder) 421*77c1e3ccSAndroid Build Coastguard Worker target_sources(aom PRIVATE $<TARGET_OBJECTS:aom_dsp_encoder>) 422*77c1e3ccSAndroid Build Coastguard Worker if(BUILD_SHARED_LIBS) 423*77c1e3ccSAndroid Build Coastguard Worker target_sources(aom_static PRIVATE $<TARGET_OBJECTS:aom_dsp_encoder>) 424*77c1e3ccSAndroid Build Coastguard Worker endif() 425*77c1e3ccSAndroid Build Coastguard Worker if(CONFIG_TUNE_VMAF) 426*77c1e3ccSAndroid Build Coastguard Worker target_include_directories(aom_dsp_encoder PRIVATE ${VMAF_INCLUDE_DIRS}) 427*77c1e3ccSAndroid Build Coastguard Worker endif() 428*77c1e3ccSAndroid Build Coastguard Worker endif() 429*77c1e3ccSAndroid Build Coastguard Worker 430*77c1e3ccSAndroid Build Coastguard Worker if(HAVE_SSE2) 431*77c1e3ccSAndroid Build Coastguard Worker add_asm_library("aom_dsp_common_sse2" "AOM_DSP_COMMON_ASM_SSE2") 432*77c1e3ccSAndroid Build Coastguard Worker add_intrinsics_object_library("-msse2" "sse2" "aom_dsp_common" 433*77c1e3ccSAndroid Build Coastguard Worker "AOM_DSP_COMMON_INTRIN_SSE2") 434*77c1e3ccSAndroid Build Coastguard Worker 435*77c1e3ccSAndroid Build Coastguard Worker if(CONFIG_AV1_ENCODER) 436*77c1e3ccSAndroid Build Coastguard Worker if("${AOM_TARGET_CPU}" STREQUAL "x86_64") 437*77c1e3ccSAndroid Build Coastguard Worker list(APPEND AOM_DSP_ENCODER_ASM_SSE2 ${AOM_DSP_ENCODER_ASM_SSE2_X86_64}) 438*77c1e3ccSAndroid Build Coastguard Worker endif() 439*77c1e3ccSAndroid Build Coastguard Worker add_asm_library("aom_dsp_encoder_sse2" "AOM_DSP_ENCODER_ASM_SSE2") 440*77c1e3ccSAndroid Build Coastguard Worker add_intrinsics_object_library("-msse2" "sse2" "aom_dsp_encoder" 441*77c1e3ccSAndroid Build Coastguard Worker "AOM_DSP_ENCODER_INTRIN_SSE2") 442*77c1e3ccSAndroid Build Coastguard Worker endif() 443*77c1e3ccSAndroid Build Coastguard Worker endif() 444*77c1e3ccSAndroid Build Coastguard Worker 445*77c1e3ccSAndroid Build Coastguard Worker if(HAVE_SSSE3) 446*77c1e3ccSAndroid Build Coastguard Worker add_asm_library("aom_dsp_common_ssse3" "AOM_DSP_COMMON_ASM_SSSE3") 447*77c1e3ccSAndroid Build Coastguard Worker add_intrinsics_object_library("-mssse3" "ssse3" "aom_dsp_common" 448*77c1e3ccSAndroid Build Coastguard Worker "AOM_DSP_COMMON_INTRIN_SSSE3") 449*77c1e3ccSAndroid Build Coastguard Worker 450*77c1e3ccSAndroid Build Coastguard Worker if(CONFIG_AV1_ENCODER) 451*77c1e3ccSAndroid Build Coastguard Worker if("${AOM_TARGET_CPU}" STREQUAL "x86_64") 452*77c1e3ccSAndroid Build Coastguard Worker list(APPEND AOM_DSP_ENCODER_ASM_SSSE3 453*77c1e3ccSAndroid Build Coastguard Worker ${AOM_DSP_ENCODER_ASM_SSSE3_X86_64}) 454*77c1e3ccSAndroid Build Coastguard Worker endif() 455*77c1e3ccSAndroid Build Coastguard Worker add_asm_library("aom_dsp_encoder_ssse3" "AOM_DSP_ENCODER_ASM_SSSE3") 456*77c1e3ccSAndroid Build Coastguard Worker add_intrinsics_object_library("-mssse3" "ssse3" "aom_dsp_encoder" 457*77c1e3ccSAndroid Build Coastguard Worker "AOM_DSP_ENCODER_INTRIN_SSSE3") 458*77c1e3ccSAndroid Build Coastguard Worker endif() 459*77c1e3ccSAndroid Build Coastguard Worker endif() 460*77c1e3ccSAndroid Build Coastguard Worker 461*77c1e3ccSAndroid Build Coastguard Worker if(HAVE_SSE4_1) 462*77c1e3ccSAndroid Build Coastguard Worker add_intrinsics_object_library("-msse4.1" "sse4_1" "aom_dsp_common" 463*77c1e3ccSAndroid Build Coastguard Worker "AOM_DSP_COMMON_INTRIN_SSE4_1") 464*77c1e3ccSAndroid Build Coastguard Worker if(CONFIG_AV1_ENCODER) 465*77c1e3ccSAndroid Build Coastguard Worker add_intrinsics_object_library("-msse4.1" "sse4_1" "aom_dsp_encoder" 466*77c1e3ccSAndroid Build Coastguard Worker "AOM_DSP_ENCODER_INTRIN_SSE4_1") 467*77c1e3ccSAndroid Build Coastguard Worker endif() 468*77c1e3ccSAndroid Build Coastguard Worker endif() 469*77c1e3ccSAndroid Build Coastguard Worker 470*77c1e3ccSAndroid Build Coastguard Worker if(HAVE_AVX) 471*77c1e3ccSAndroid Build Coastguard Worker if(CONFIG_AV1_ENCODER) 472*77c1e3ccSAndroid Build Coastguard Worker add_intrinsics_object_library("-mavx" "avx" "aom_dsp_encoder" 473*77c1e3ccSAndroid Build Coastguard Worker "AOM_DSP_ENCODER_INTRIN_AVX") 474*77c1e3ccSAndroid Build Coastguard Worker endif() 475*77c1e3ccSAndroid Build Coastguard Worker endif() 476*77c1e3ccSAndroid Build Coastguard Worker 477*77c1e3ccSAndroid Build Coastguard Worker if(HAVE_AVX2) 478*77c1e3ccSAndroid Build Coastguard Worker add_intrinsics_object_library("-mavx2" "avx2" "aom_dsp_common" 479*77c1e3ccSAndroid Build Coastguard Worker "AOM_DSP_COMMON_INTRIN_AVX2") 480*77c1e3ccSAndroid Build Coastguard Worker if(CONFIG_AV1_ENCODER) 481*77c1e3ccSAndroid Build Coastguard Worker add_intrinsics_object_library("-mavx2" "avx2" "aom_dsp_encoder" 482*77c1e3ccSAndroid Build Coastguard Worker "AOM_DSP_ENCODER_INTRIN_AVX2") 483*77c1e3ccSAndroid Build Coastguard Worker endif() 484*77c1e3ccSAndroid Build Coastguard Worker endif() 485*77c1e3ccSAndroid Build Coastguard Worker 486*77c1e3ccSAndroid Build Coastguard Worker if(HAVE_NEON) 487*77c1e3ccSAndroid Build Coastguard Worker add_intrinsics_object_library("${AOM_NEON_INTRIN_FLAG}" "neon" 488*77c1e3ccSAndroid Build Coastguard Worker "aom_dsp_common" "AOM_DSP_COMMON_INTRIN_NEON") 489*77c1e3ccSAndroid Build Coastguard Worker if(CONFIG_AV1_ENCODER) 490*77c1e3ccSAndroid Build Coastguard Worker add_intrinsics_object_library("${AOM_NEON_INTRIN_FLAG}" "neon" 491*77c1e3ccSAndroid Build Coastguard Worker "aom_dsp_encoder" 492*77c1e3ccSAndroid Build Coastguard Worker "AOM_DSP_ENCODER_INTRIN_NEON") 493*77c1e3ccSAndroid Build Coastguard Worker endif() 494*77c1e3ccSAndroid Build Coastguard Worker endif() 495*77c1e3ccSAndroid Build Coastguard Worker 496*77c1e3ccSAndroid Build Coastguard Worker if(HAVE_NEON_DOTPROD) 497*77c1e3ccSAndroid Build Coastguard Worker add_intrinsics_object_library("${AOM_NEON_DOTPROD_FLAG}" "neon_dotprod" 498*77c1e3ccSAndroid Build Coastguard Worker "aom_dsp_common" 499*77c1e3ccSAndroid Build Coastguard Worker "AOM_DSP_COMMON_INTRIN_NEON_DOTPROD") 500*77c1e3ccSAndroid Build Coastguard Worker if(CONFIG_AV1_ENCODER) 501*77c1e3ccSAndroid Build Coastguard Worker add_intrinsics_object_library("${AOM_NEON_DOTPROD_FLAG}" "neon_dotprod" 502*77c1e3ccSAndroid Build Coastguard Worker "aom_dsp_encoder" 503*77c1e3ccSAndroid Build Coastguard Worker "AOM_DSP_ENCODER_INTRIN_NEON_DOTPROD") 504*77c1e3ccSAndroid Build Coastguard Worker endif() 505*77c1e3ccSAndroid Build Coastguard Worker endif() 506*77c1e3ccSAndroid Build Coastguard Worker 507*77c1e3ccSAndroid Build Coastguard Worker if(HAVE_NEON_I8MM) 508*77c1e3ccSAndroid Build Coastguard Worker add_intrinsics_object_library("${AOM_NEON_I8MM_FLAG}" "neon_i8mm" 509*77c1e3ccSAndroid Build Coastguard Worker "aom_dsp_common" 510*77c1e3ccSAndroid Build Coastguard Worker "AOM_DSP_COMMON_INTRIN_NEON_I8MM") 511*77c1e3ccSAndroid Build Coastguard Worker endif() 512*77c1e3ccSAndroid Build Coastguard Worker 513*77c1e3ccSAndroid Build Coastguard Worker if(HAVE_SVE) 514*77c1e3ccSAndroid Build Coastguard Worker add_intrinsics_object_library("${AOM_SVE_FLAG}" "sve" "aom_dsp_common" 515*77c1e3ccSAndroid Build Coastguard Worker "AOM_DSP_COMMON_INTRIN_SVE") 516*77c1e3ccSAndroid Build Coastguard Worker if(CONFIG_AV1_ENCODER) 517*77c1e3ccSAndroid Build Coastguard Worker add_intrinsics_object_library("${AOM_SVE_FLAG}" "sve" "aom_dsp_encoder" 518*77c1e3ccSAndroid Build Coastguard Worker "AOM_DSP_ENCODER_INTRIN_SVE") 519*77c1e3ccSAndroid Build Coastguard Worker endif() 520*77c1e3ccSAndroid Build Coastguard Worker endif() 521*77c1e3ccSAndroid Build Coastguard Worker 522*77c1e3ccSAndroid Build Coastguard Worker target_sources(aom PRIVATE $<TARGET_OBJECTS:aom_dsp>) 523*77c1e3ccSAndroid Build Coastguard Worker if(BUILD_SHARED_LIBS) 524*77c1e3ccSAndroid Build Coastguard Worker target_sources(aom_static PRIVATE $<TARGET_OBJECTS:aom_dsp>) 525*77c1e3ccSAndroid Build Coastguard Worker endif() 526*77c1e3ccSAndroid Build Coastguard Worker 527*77c1e3ccSAndroid Build Coastguard Worker # Pass the new lib targets up to the parent scope instance of 528*77c1e3ccSAndroid Build Coastguard Worker # $AOM_LIB_TARGETS. 529*77c1e3ccSAndroid Build Coastguard Worker set(AOM_LIB_TARGETS ${AOM_LIB_TARGETS} PARENT_SCOPE) 530*77c1e3ccSAndroid Build Coastguard Workerendfunction() 531