aom_dsp.mk 13.4 KB
Newer Older
Johann's avatar
Johann committed
1
##
Yaowu Xu's avatar
Yaowu Xu committed
2
## Copyright (c) 2016, Alliance for Open Media. All rights reserved
Johann's avatar
Johann committed
3
##
Yaowu Xu's avatar
Yaowu Xu committed
4
5
6
7
8
9
## This source code is subject to the terms of the BSD 2 Clause License and
## the Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License
## was not distributed with this source code in the LICENSE file, you can
## obtain it at www.aomedia.org/license/software. If the Alliance for Open
## Media Patent License 1.0 was not distributed with this source code in the
## PATENTS file, you can obtain it at www.aomedia.org/license/patent.
Johann's avatar
Johann committed
10
11
##

Yaowu Xu's avatar
Yaowu Xu committed
12
13
DSP_SRCS-yes += aom_dsp.mk
DSP_SRCS-yes += aom_dsp_common.h
Johann's avatar
Johann committed
14

Johann's avatar
Johann committed
15
16
DSP_SRCS-$(HAVE_MSA)    += mips/macros_msa.h

17
18
DSP_SRCS-$(ARCH_X86)$(ARCH_X86_64)   += x86/synonyms.h

Yaowu Xu's avatar
Yaowu Xu committed
19
# bit reader
20
21
DSP_SRCS-yes += prob.h
DSP_SRCS-yes += prob.c
Alex Converse's avatar
Alex Converse committed
22
DSP_SRCS-$(CONFIG_ANS) += ans.h
23
DSP_SRCS-$(CONFIG_ANS) += ans.c
Yaowu Xu's avatar
Yaowu Xu committed
24

Yaowu Xu's avatar
Yaowu Xu committed
25
ifeq ($(CONFIG_ENCODERS),yes)
26
DSP_SRCS-$(CONFIG_ANS) += answriter.h
27
DSP_SRCS-yes += bitwriter.h
28
29
DSP_SRCS-yes += dkboolwriter.h
DSP_SRCS-yes += dkboolwriter.c
30
31
DSP_SRCS-yes += bitwriter_buffer.c
DSP_SRCS-yes += bitwriter_buffer.h
32
33
DSP_SRCS-yes += psnr.c
DSP_SRCS-yes += psnr.h
34
35
DSP_SRCS-$(CONFIG_ANS) += buf_ans.h
DSP_SRCS-$(CONFIG_ANS) += buf_ans.c
36
37
38
39
DSP_SRCS-$(CONFIG_INTERNAL_STATS) += ssim.c
DSP_SRCS-$(CONFIG_INTERNAL_STATS) += ssim.h
DSP_SRCS-$(CONFIG_INTERNAL_STATS) += psnrhvs.c
DSP_SRCS-$(CONFIG_INTERNAL_STATS) += fastssim.c
Yaowu Xu's avatar
Yaowu Xu committed
40
41
endif

Yaowu Xu's avatar
Yaowu Xu committed
42
ifeq ($(CONFIG_DECODERS),yes)
43
DSP_SRCS-$(CONFIG_ANS) += ansreader.h
44
DSP_SRCS-yes += bitreader.h
45
46
DSP_SRCS-yes += dkboolreader.h
DSP_SRCS-yes += dkboolreader.c
47
48
DSP_SRCS-yes += bitreader_buffer.c
DSP_SRCS-yes += bitreader_buffer.h
Yaowu Xu's avatar
Yaowu Xu committed
49
50
endif

51
52
53
# intra predictions
DSP_SRCS-yes += intrapred.c

James Zern's avatar
James Zern committed
54
DSP_SRCS-$(HAVE_SSE) += x86/intrapred_sse2.asm
55
56
DSP_SRCS-$(HAVE_SSE2) += x86/intrapred_sse2.asm
DSP_SRCS-$(HAVE_SSSE3) += x86/intrapred_ssse3.asm
Yaowu Xu's avatar
Yaowu Xu committed
57
DSP_SRCS-$(HAVE_SSSE3) += x86/aom_subpixel_8t_ssse3.asm
58

Yaowu Xu's avatar
Yaowu Xu committed
59
ifeq ($(CONFIG_AOM_HIGHBITDEPTH),yes)
James Zern's avatar
James Zern committed
60
DSP_SRCS-$(HAVE_SSE)  += x86/highbd_intrapred_sse2.asm
61
DSP_SRCS-$(HAVE_SSE2) += x86/highbd_intrapred_sse2.asm
Yaowu Xu's avatar
Yaowu Xu committed
62
endif  # CONFIG_AOM_HIGHBITDEPTH
63
64
65
66
67
68
69
70

DSP_SRCS-$(HAVE_NEON_ASM) += arm/intrapred_neon_asm$(ASM)
DSP_SRCS-$(HAVE_NEON) += arm/intrapred_neon.c
DSP_SRCS-$(HAVE_MSA) += mips/intrapred_msa.c
DSP_SRCS-$(HAVE_DSPR2)  += mips/intrapred4_dspr2.c
DSP_SRCS-$(HAVE_DSPR2)  += mips/intrapred8_dspr2.c
DSP_SRCS-$(HAVE_DSPR2)  += mips/intrapred16_dspr2.c

71
72
73
DSP_SRCS-$(HAVE_DSPR2)  += mips/common_dspr2.h
DSP_SRCS-$(HAVE_DSPR2)  += mips/common_dspr2.c

Geza Lore's avatar
Geza Lore committed
74
75
# inter predictions

Yaowu Xu's avatar
Yaowu Xu committed
76
ifeq ($(CONFIG_AV1),yes)
Geza Lore's avatar
Geza Lore committed
77
78
79
80
81
82
83
84
DSP_SRCS-yes            += blend.h
DSP_SRCS-yes            += blend_a64_mask.c
DSP_SRCS-yes            += blend_a64_hmask.c
DSP_SRCS-yes            += blend_a64_vmask.c
DSP_SRCS-$(HAVE_SSE4_1) += x86/blend_sse4.h
DSP_SRCS-$(HAVE_SSE4_1) += x86/blend_a64_mask_sse4.c
DSP_SRCS-$(HAVE_SSE4_1) += x86/blend_a64_hmask_sse4.c
DSP_SRCS-$(HAVE_SSE4_1) += x86/blend_a64_vmask_sse4.c
Yaowu Xu's avatar
Yaowu Xu committed
85
endif  #CONFIG_AV1
Geza Lore's avatar
Geza Lore committed
86

Zoe Liu's avatar
Zoe Liu committed
87
# interpolation filters
Yaowu Xu's avatar
Yaowu Xu committed
88
89
90
DSP_SRCS-yes += aom_convolve.c
DSP_SRCS-yes += aom_convolve.h
DSP_SRCS-yes += aom_filter.h
Zoe Liu's avatar
Zoe Liu committed
91
92

DSP_SRCS-$(ARCH_X86)$(ARCH_X86_64) += x86/convolve.h
Yaowu Xu's avatar
Yaowu Xu committed
93
94
95
96
97
98
99
100
101
102
DSP_SRCS-$(ARCH_X86)$(ARCH_X86_64) += x86/aom_asm_stubs.c
DSP_SRCS-$(HAVE_SSE2)  += x86/aom_subpixel_8t_sse2.asm
DSP_SRCS-$(HAVE_SSE2)  += x86/aom_subpixel_bilinear_sse2.asm
DSP_SRCS-$(HAVE_SSSE3) += x86/aom_subpixel_8t_ssse3.asm
DSP_SRCS-$(HAVE_SSSE3) += x86/aom_subpixel_bilinear_ssse3.asm
DSP_SRCS-$(HAVE_AVX2)  += x86/aom_subpixel_8t_intrin_avx2.c
DSP_SRCS-$(HAVE_SSSE3) += x86/aom_subpixel_8t_intrin_ssse3.c
ifeq ($(CONFIG_AOM_HIGHBITDEPTH),yes)
DSP_SRCS-$(HAVE_SSE2)  += x86/aom_high_subpixel_8t_sse2.asm
DSP_SRCS-$(HAVE_SSE2)  += x86/aom_high_subpixel_bilinear_sse2.asm
Zoe Liu's avatar
Zoe Liu committed
103
endif
104

Yaowu Xu's avatar
Yaowu Xu committed
105
DSP_SRCS-$(HAVE_SSE2)  += x86/aom_convolve_copy_sse2.asm
Zoe Liu's avatar
Zoe Liu committed
106
107

ifeq ($(HAVE_NEON_ASM),yes)
Yaowu Xu's avatar
Yaowu Xu committed
108
109
110
111
112
DSP_SRCS-yes += arm/aom_convolve_copy_neon_asm$(ASM)
DSP_SRCS-yes += arm/aom_convolve8_avg_neon_asm$(ASM)
DSP_SRCS-yes += arm/aom_convolve8_neon_asm$(ASM)
DSP_SRCS-yes += arm/aom_convolve_avg_neon_asm$(ASM)
DSP_SRCS-yes += arm/aom_convolve_neon.c
Zoe Liu's avatar
Zoe Liu committed
113
114
else
ifeq ($(HAVE_NEON),yes)
Yaowu Xu's avatar
Yaowu Xu committed
115
116
117
118
119
DSP_SRCS-yes += arm/aom_convolve_copy_neon.c
DSP_SRCS-yes += arm/aom_convolve8_avg_neon.c
DSP_SRCS-yes += arm/aom_convolve8_neon.c
DSP_SRCS-yes += arm/aom_convolve_avg_neon.c
DSP_SRCS-yes += arm/aom_convolve_neon.c
Zoe Liu's avatar
Zoe Liu committed
120
121
122
123
endif  # HAVE_NEON
endif  # HAVE_NEON_ASM

# common (msa)
Yaowu Xu's avatar
Yaowu Xu committed
124
125
126
127
128
129
130
131
132
DSP_SRCS-$(HAVE_MSA) += mips/aom_convolve8_avg_horiz_msa.c
DSP_SRCS-$(HAVE_MSA) += mips/aom_convolve8_avg_msa.c
DSP_SRCS-$(HAVE_MSA) += mips/aom_convolve8_avg_vert_msa.c
DSP_SRCS-$(HAVE_MSA) += mips/aom_convolve8_horiz_msa.c
DSP_SRCS-$(HAVE_MSA) += mips/aom_convolve8_msa.c
DSP_SRCS-$(HAVE_MSA) += mips/aom_convolve8_vert_msa.c
DSP_SRCS-$(HAVE_MSA) += mips/aom_convolve_avg_msa.c
DSP_SRCS-$(HAVE_MSA) += mips/aom_convolve_copy_msa.c
DSP_SRCS-$(HAVE_MSA) += mips/aom_convolve_msa.h
Zoe Liu's avatar
Zoe Liu committed
133

Zoe Liu's avatar
Zoe Liu committed
134
# common (dspr2)
135
136
137
138
139
140
141
142
143
144
145
DSP_SRCS-$(HAVE_DSPR2)  += mips/convolve_common_dspr2.h
DSP_SRCS-$(HAVE_DSPR2)  += mips/convolve2_avg_dspr2.c
DSP_SRCS-$(HAVE_DSPR2)  += mips/convolve2_avg_horiz_dspr2.c
DSP_SRCS-$(HAVE_DSPR2)  += mips/convolve2_dspr2.c
DSP_SRCS-$(HAVE_DSPR2)  += mips/convolve2_horiz_dspr2.c
DSP_SRCS-$(HAVE_DSPR2)  += mips/convolve2_vert_dspr2.c
DSP_SRCS-$(HAVE_DSPR2)  += mips/convolve8_avg_dspr2.c
DSP_SRCS-$(HAVE_DSPR2)  += mips/convolve8_avg_horiz_dspr2.c
DSP_SRCS-$(HAVE_DSPR2)  += mips/convolve8_dspr2.c
DSP_SRCS-$(HAVE_DSPR2)  += mips/convolve8_horiz_dspr2.c
DSP_SRCS-$(HAVE_DSPR2)  += mips/convolve8_vert_dspr2.c
Zoe Liu's avatar
Zoe Liu committed
146

147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
# loop filters
DSP_SRCS-yes += loopfilter.c

DSP_SRCS-$(ARCH_X86)$(ARCH_X86_64)   += x86/loopfilter_sse2.c
DSP_SRCS-$(HAVE_AVX2)                += x86/loopfilter_avx2.c

DSP_SRCS-$(HAVE_NEON)   += arm/loopfilter_neon.c
ifeq ($(HAVE_NEON_ASM),yes)
DSP_SRCS-yes  += arm/loopfilter_mb_neon$(ASM)
DSP_SRCS-yes  += arm/loopfilter_16_neon$(ASM)
DSP_SRCS-yes  += arm/loopfilter_8_neon$(ASM)
DSP_SRCS-yes  += arm/loopfilter_4_neon$(ASM)
else
ifeq ($(HAVE_NEON),yes)
DSP_SRCS-yes   += arm/loopfilter_16_neon.c
DSP_SRCS-yes   += arm/loopfilter_8_neon.c
DSP_SRCS-yes   += arm/loopfilter_4_neon.c
endif  # HAVE_NEON
endif  # HAVE_NEON_ASM

DSP_SRCS-$(HAVE_MSA)    += mips/loopfilter_msa.h
DSP_SRCS-$(HAVE_MSA)    += mips/loopfilter_16_msa.c
DSP_SRCS-$(HAVE_MSA)    += mips/loopfilter_8_msa.c
DSP_SRCS-$(HAVE_MSA)    += mips/loopfilter_4_msa.c
171
172
173
174
175
176
177
DSP_SRCS-$(HAVE_DSPR2)  += mips/loopfilter_filters_dspr2.h
DSP_SRCS-$(HAVE_DSPR2)  += mips/loopfilter_filters_dspr2.c
DSP_SRCS-$(HAVE_DSPR2)  += mips/loopfilter_macros_dspr2.h
DSP_SRCS-$(HAVE_DSPR2)  += mips/loopfilter_masks_dspr2.h
DSP_SRCS-$(HAVE_DSPR2)  += mips/loopfilter_mb_dspr2.c
DSP_SRCS-$(HAVE_DSPR2)  += mips/loopfilter_mb_horiz_dspr2.c
DSP_SRCS-$(HAVE_DSPR2)  += mips/loopfilter_mb_vert_dspr2.c
178

Yaowu Xu's avatar
Yaowu Xu committed
179
ifeq ($(CONFIG_AOM_HIGHBITDEPTH),yes)
180
DSP_SRCS-$(HAVE_SSE2)   += x86/highbd_loopfilter_sse2.c
Yaowu Xu's avatar
Yaowu Xu committed
181
endif  # CONFIG_AOM_HIGHBITDEPTH
182

Jingning Han's avatar
Jingning Han committed
183
184
DSP_SRCS-yes            += txfm_common.h
DSP_SRCS-$(HAVE_SSE2)   += x86/txfm_common_sse2.h
185
DSP_SRCS-$(HAVE_MSA)    += mips/txfm_macros_msa.h
186
# forward transform
Yaowu Xu's avatar
Yaowu Xu committed
187
ifeq ($(CONFIG_AV1),yes)
188
189
DSP_SRCS-yes            += fwd_txfm.c
DSP_SRCS-yes            += fwd_txfm.h
190
DSP_SRCS-$(HAVE_SSE2)   += x86/fwd_txfm_sse2.h
191
192
DSP_SRCS-$(HAVE_SSE2)   += x86/fwd_txfm_sse2.c
DSP_SRCS-$(HAVE_SSE2)   += x86/fwd_txfm_impl_sse2.h
193
DSP_SRCS-$(HAVE_SSE2)   += x86/fwd_dct32x32_impl_sse2.h
194
195
196
ifeq ($(ARCH_X86_64),yes)
DSP_SRCS-$(HAVE_SSSE3)  += x86/fwd_txfm_ssse3_x86_64.asm
endif
197
198
DSP_SRCS-$(HAVE_AVX2)   += x86/fwd_txfm_avx2.c
DSP_SRCS-$(HAVE_AVX2)   += x86/fwd_dct32x32_impl_avx2.h
199
DSP_SRCS-$(HAVE_NEON)   += arm/fwd_txfm_neon.c
200
201
DSP_SRCS-$(HAVE_MSA)    += mips/fwd_txfm_msa.h
DSP_SRCS-$(HAVE_MSA)    += mips/fwd_txfm_msa.c
202
DSP_SRCS-$(HAVE_MSA)    += mips/fwd_dct32x32_msa.c
Yaowu Xu's avatar
Yaowu Xu committed
203
endif  # CONFIG_AV1_ENCODER
204

205
# inverse transform
Yaowu Xu's avatar
Yaowu Xu committed
206
ifeq ($(CONFIG_AV1), yes)
207
208
209
210
DSP_SRCS-yes            += inv_txfm.h
DSP_SRCS-yes            += inv_txfm.c
DSP_SRCS-$(HAVE_SSE2)   += x86/inv_txfm_sse2.h
DSP_SRCS-$(HAVE_SSE2)   += x86/inv_txfm_sse2.c
211
DSP_SRCS-$(HAVE_SSE2)   += x86/inv_wht_sse2.asm
212
213
214
215
216
ifeq ($(ARCH_X86_64),yes)
DSP_SRCS-$(HAVE_SSSE3)  += x86/inv_txfm_ssse3_x86_64.asm
endif  # ARCH_X86_64

ifeq ($(HAVE_NEON_ASM),yes)
217
DSP_SRCS-yes  += arm/save_reg_neon$(ASM)
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
DSP_SRCS-yes  += arm/idct4x4_1_add_neon$(ASM)
DSP_SRCS-yes  += arm/idct4x4_add_neon$(ASM)
DSP_SRCS-yes  += arm/idct8x8_1_add_neon$(ASM)
DSP_SRCS-yes  += arm/idct8x8_add_neon$(ASM)
DSP_SRCS-yes  += arm/idct16x16_1_add_neon$(ASM)
DSP_SRCS-yes  += arm/idct16x16_add_neon$(ASM)
DSP_SRCS-yes  += arm/idct32x32_1_add_neon$(ASM)
DSP_SRCS-yes  += arm/idct32x32_add_neon$(ASM)
else
ifeq ($(HAVE_NEON),yes)
DSP_SRCS-yes  += arm/idct4x4_1_add_neon.c
DSP_SRCS-yes  += arm/idct4x4_add_neon.c
DSP_SRCS-yes  += arm/idct8x8_1_add_neon.c
DSP_SRCS-yes  += arm/idct8x8_add_neon.c
DSP_SRCS-yes  += arm/idct16x16_1_add_neon.c
DSP_SRCS-yes  += arm/idct16x16_add_neon.c
DSP_SRCS-yes  += arm/idct32x32_1_add_neon.c
DSP_SRCS-yes  += arm/idct32x32_add_neon.c
endif  # HAVE_NEON
endif  # HAVE_NEON_ASM
DSP_SRCS-$(HAVE_NEON)  += arm/idct16x16_neon.c
239
240
241
242
243
244

DSP_SRCS-$(HAVE_MSA)   += mips/inv_txfm_msa.h
DSP_SRCS-$(HAVE_MSA)   += mips/idct4x4_msa.c
DSP_SRCS-$(HAVE_MSA)   += mips/idct8x8_msa.c
DSP_SRCS-$(HAVE_MSA)   += mips/idct16x16_msa.c
DSP_SRCS-$(HAVE_MSA)   += mips/idct32x32_msa.c
245

Yaowu Xu's avatar
Yaowu Xu committed
246
ifneq ($(CONFIG_AOM_HIGHBITDEPTH),yes)
247
248
249
250
251
252
DSP_SRCS-$(HAVE_DSPR2) += mips/inv_txfm_dspr2.h
DSP_SRCS-$(HAVE_DSPR2) += mips/itrans4_dspr2.c
DSP_SRCS-$(HAVE_DSPR2) += mips/itrans8_dspr2.c
DSP_SRCS-$(HAVE_DSPR2) += mips/itrans16_dspr2.c
DSP_SRCS-$(HAVE_DSPR2) += mips/itrans32_dspr2.c
DSP_SRCS-$(HAVE_DSPR2) += mips/itrans32_cols_dspr2.c
Yaowu Xu's avatar
Yaowu Xu committed
253
254
endif  # CONFIG_AOM_HIGHBITDEPTH
endif  # CONFIG_AV1
255

256
# quantization
Yaowu Xu's avatar
Yaowu Xu committed
257
ifneq ($(filter yes,$(CONFIG_AV1_ENCODER)),)
258
259
260
261
DSP_SRCS-yes            += quantize.c
DSP_SRCS-yes            += quantize.h

DSP_SRCS-$(HAVE_SSE2)   += x86/quantize_sse2.c
Yaowu Xu's avatar
Yaowu Xu committed
262
ifeq ($(CONFIG_AOM_HIGHBITDEPTH),yes)
263
264
265
DSP_SRCS-$(HAVE_SSE2)   += x86/highbd_quantize_intrin_sse2.c
endif
ifeq ($(ARCH_X86_64),yes)
266
267
DSP_SRCS-$(HAVE_SSSE3)  += x86/quantize_ssse3_x86_64.asm
DSP_SRCS-$(HAVE_AVX)    += x86/quantize_avx_x86_64.asm
268
endif
James Zern's avatar
James Zern committed
269
270
271
272
273
274

# avg
DSP_SRCS-yes           += avg.c
DSP_SRCS-$(HAVE_SSE2)  += x86/avg_intrin_sse2.c
DSP_SRCS-$(HAVE_NEON)  += arm/avg_neon.c
DSP_SRCS-$(HAVE_MSA)   += mips/avg_msa.c
Johann's avatar
Johann committed
275
DSP_SRCS-$(HAVE_NEON)  += arm/hadamard_neon.c
James Zern's avatar
James Zern committed
276
277
278
279
ifeq ($(ARCH_X86_64),yes)
DSP_SRCS-$(HAVE_SSSE3) += x86/avg_ssse3_x86_64.asm
endif

280
# high bit depth subtract
Yaowu Xu's avatar
Yaowu Xu committed
281
ifeq ($(CONFIG_AOM_HIGHBITDEPTH),yes)
282
283
284
DSP_SRCS-$(HAVE_SSE2)  += x86/highbd_subtract_sse2.c
endif

Yaowu Xu's avatar
Yaowu Xu committed
285
endif  # CONFIG_AV1_ENCODER
286

Yaowu Xu's avatar
Yaowu Xu committed
287
ifeq ($(CONFIG_AV1_ENCODER),yes)
288
289
290
DSP_SRCS-yes            += sum_squares.c

DSP_SRCS-$(HAVE_SSE2)   += x86/sum_squares_sse2.c
Yaowu Xu's avatar
Yaowu Xu committed
291
endif # CONFIG_AV1_ENCODER
292

Johann's avatar
Johann committed
293
294
ifeq ($(CONFIG_ENCODERS),yes)
DSP_SRCS-yes            += sad.c
295
DSP_SRCS-yes            += subtract.c
Johann's avatar
Johann committed
296
297
298
299

DSP_SRCS-$(HAVE_MEDIA)  += arm/sad_media$(ASM)
DSP_SRCS-$(HAVE_NEON)   += arm/sad4d_neon.c
DSP_SRCS-$(HAVE_NEON)   += arm/sad_neon.c
300
DSP_SRCS-$(HAVE_NEON)   += arm/subtract_neon.c
Johann's avatar
Johann committed
301

Johann's avatar
Johann committed
302
DSP_SRCS-$(HAVE_MSA)    += mips/sad_msa.c
303
DSP_SRCS-$(HAVE_MSA)    += mips/subtract_msa.c
Johann's avatar
Johann committed
304

Johann's avatar
Johann committed
305
306
307
308
309
310
DSP_SRCS-$(HAVE_SSE3)   += x86/sad_sse3.asm
DSP_SRCS-$(HAVE_SSSE3)  += x86/sad_ssse3.asm
DSP_SRCS-$(HAVE_SSE4_1) += x86/sad_sse4.asm
DSP_SRCS-$(HAVE_AVX2)   += x86/sad4d_avx2.c
DSP_SRCS-$(HAVE_AVX2)   += x86/sad_avx2.c

Yaowu Xu's avatar
Yaowu Xu committed
311
ifeq ($(CONFIG_AV1_ENCODER),yes)
312
313
314
315
ifeq ($(CONFIG_EXT_INTER),yes)
DSP_SRCS-$(HAVE_SSSE3)  += x86/masked_sad_intrin_ssse3.c
DSP_SRCS-$(HAVE_SSSE3)  += x86/masked_variance_intrin_ssse3.c
endif  #CONFIG_EXT_INTER
316
317
ifeq ($(CONFIG_OBMC),yes)
DSP_SRCS-$(HAVE_SSE4_1) += x86/obmc_sad_sse4.c
318
DSP_SRCS-$(HAVE_SSE4_1) += x86/obmc_variance_sse4.c
319
endif  #CONFIG_OBMC
Yaowu Xu's avatar
Yaowu Xu committed
320
endif  #CONFIG_AV1_ENCODER
321

James Zern's avatar
James Zern committed
322
323
DSP_SRCS-$(HAVE_SSE)    += x86/sad4d_sse2.asm
DSP_SRCS-$(HAVE_SSE)    += x86/sad_sse2.asm
Johann's avatar
Johann committed
324
325
DSP_SRCS-$(HAVE_SSE2)   += x86/sad4d_sse2.asm
DSP_SRCS-$(HAVE_SSE2)   += x86/sad_sse2.asm
326
DSP_SRCS-$(HAVE_SSE2)   += x86/subtract_sse2.asm
327

Yaowu Xu's avatar
Yaowu Xu committed
328
ifeq ($(CONFIG_AOM_HIGHBITDEPTH),yes)
Johann's avatar
Johann committed
329
330
DSP_SRCS-$(HAVE_SSE2) += x86/highbd_sad4d_sse2.asm
DSP_SRCS-$(HAVE_SSE2) += x86/highbd_sad_sse2.asm
Yaowu Xu's avatar
Yaowu Xu committed
331
endif  # CONFIG_AOM_HIGHBITDEPTH
332

Johann's avatar
Johann committed
333
334
endif  # CONFIG_ENCODERS

Yaowu Xu's avatar
Yaowu Xu committed
335
ifneq ($(filter yes,$(CONFIG_ENCODERS)),)
Johann's avatar
Johann committed
336
DSP_SRCS-yes            += variance.c
Johann's avatar
Johann committed
337
DSP_SRCS-yes            += variance.h
Johann's avatar
Johann committed
338

Johann's avatar
Johann committed
339
340
341
342
343
DSP_SRCS-$(HAVE_MEDIA)  += arm/bilinear_filter_media$(ASM)
DSP_SRCS-$(HAVE_MEDIA)  += arm/subpel_variance_media.c
DSP_SRCS-$(HAVE_MEDIA)  += arm/variance_halfpixvar16x16_h_media$(ASM)
DSP_SRCS-$(HAVE_MEDIA)  += arm/variance_halfpixvar16x16_hv_media$(ASM)
DSP_SRCS-$(HAVE_MEDIA)  += arm/variance_halfpixvar16x16_v_media$(ASM)
Johann's avatar
Johann committed
344
DSP_SRCS-$(HAVE_MEDIA)  += arm/variance_media$(ASM)
Johann's avatar
Johann committed
345
DSP_SRCS-$(HAVE_NEON)   += arm/subpel_variance_neon.c
Johann's avatar
Johann committed
346
347
DSP_SRCS-$(HAVE_NEON)   += arm/variance_neon.c

Johann's avatar
Johann committed
348
DSP_SRCS-$(HAVE_MSA)    += mips/variance_msa.c
Johann's avatar
Johann committed
349
DSP_SRCS-$(HAVE_MSA)    += mips/sub_pixel_variance_msa.c
Johann's avatar
Johann committed
350

James Zern's avatar
James Zern committed
351
DSP_SRCS-$(HAVE_SSE)    += x86/variance_sse2.c
Johann's avatar
Johann committed
352
DSP_SRCS-$(HAVE_SSE2)   += x86/variance_sse2.c  # Contains SSE2 and SSSE3
Johann's avatar
Johann committed
353
354
DSP_SRCS-$(HAVE_SSE2)   += x86/halfpix_variance_sse2.c
DSP_SRCS-$(HAVE_SSE2)   += x86/halfpix_variance_impl_sse2.asm
Johann's avatar
Johann committed
355
356
357
DSP_SRCS-$(HAVE_AVX2)   += x86/variance_avx2.c
DSP_SRCS-$(HAVE_AVX2)   += x86/variance_impl_avx2.c

358
359
360
361
ifeq ($(ARCH_X86_64),yes)
DSP_SRCS-$(HAVE_SSE2)   += x86/ssim_opt_x86_64.asm
endif  # ARCH_X86_64

James Zern's avatar
James Zern committed
362
DSP_SRCS-$(HAVE_SSE)    += x86/subpel_variance_sse2.asm
Johann's avatar
Johann committed
363
364
DSP_SRCS-$(HAVE_SSE2)   += x86/subpel_variance_sse2.asm  # Contains SSE2 and SSSE3

Yaowu Xu's avatar
Yaowu Xu committed
365
ifeq ($(CONFIG_AOM_HIGHBITDEPTH),yes)
Johann's avatar
Johann committed
366
DSP_SRCS-$(HAVE_SSE2)   += x86/highbd_variance_sse2.c
367
DSP_SRCS-$(HAVE_SSE4_1) += x86/highbd_variance_sse4.c
Johann's avatar
Johann committed
368
DSP_SRCS-$(HAVE_SSE2)   += x86/highbd_variance_impl_sse2.asm
Johann's avatar
Johann committed
369
DSP_SRCS-$(HAVE_SSE2)   += x86/highbd_subpel_variance_impl_sse2.asm
Yaowu Xu's avatar
Yaowu Xu committed
370
endif  # CONFIG_AOM_HIGHBITDEPTH
Yaowu Xu's avatar
Yaowu Xu committed
371
endif  # CONFIG_ENCODERS
Johann's avatar
Johann committed
372

Johann's avatar
Johann committed
373
374
DSP_SRCS-no += $(DSP_SRCS_REMOVE-yes)

Yaowu Xu's avatar
Yaowu Xu committed
375
376
DSP_SRCS-yes += aom_dsp_rtcd.c
DSP_SRCS-yes += aom_dsp_rtcd_defs.pl
Johann's avatar
Johann committed
377

Yaowu Xu's avatar
Yaowu Xu committed
378
$(eval $(call rtcd_h_template,aom_dsp_rtcd,aom_dsp/aom_dsp_rtcd_defs.pl))