vp9[loongarch]: Optimize fdct4x4/8x8_lsx
[platform/upstream/libvpx.git] / test / test.mk
1 LIBVPX_TEST_SRCS-yes += acm_random.h
2 LIBVPX_TEST_SRCS-yes += bench.h
3 LIBVPX_TEST_SRCS-yes += bench.cc
4 LIBVPX_TEST_SRCS-yes += buffer.h
5 LIBVPX_TEST_SRCS-yes += clear_system_state.h
6 LIBVPX_TEST_SRCS-yes += codec_factory.h
7 LIBVPX_TEST_SRCS-yes += md5_helper.h
8 LIBVPX_TEST_SRCS-yes += register_state_check.h
9 LIBVPX_TEST_SRCS-yes += test.mk
10 LIBVPX_TEST_SRCS-yes += test_libvpx.cc
11 LIBVPX_TEST_SRCS-yes += test_vectors.cc
12 LIBVPX_TEST_SRCS-yes += test_vectors.h
13 LIBVPX_TEST_SRCS-yes += util.h
14 LIBVPX_TEST_SRCS-yes += video_source.h
15
16 ##
17 ## BLACK BOX TESTS
18 ##
19 ## Black box tests only use the public API.
20 ##
21 LIBVPX_TEST_SRCS-yes                   += ../md5_utils.h ../md5_utils.c
22 LIBVPX_TEST_SRCS-$(CONFIG_DECODERS)    += ivf_video_source.h
23 LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS)    += ../y4minput.h ../y4minput.c
24 LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS)    += altref_test.cc
25 LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS)    += aq_segment_test.cc
26 LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS)    += alt_ref_aq_segment_test.cc
27 LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS)    += vp8_datarate_test.cc
28 LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS)    += vp9_datarate_test.cc
29 LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS)    += encode_api_test.cc
30 LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS)    += error_resilience_test.cc
31 LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS)    += i420_video_source.h
32 LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS)    += realtime_test.cc
33 LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS)    += resize_test.cc
34 LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS)    += y4m_video_source.h
35 LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS)    += yuv_video_source.h
36
37 LIBVPX_TEST_SRCS-$(CONFIG_VP8_ENCODER) += config_test.cc
38 LIBVPX_TEST_SRCS-$(CONFIG_VP8_ENCODER) += cq_test.cc
39 LIBVPX_TEST_SRCS-$(CONFIG_VP8_ENCODER) += keyframe_test.cc
40
41 LIBVPX_TEST_SRCS-$(CONFIG_VP9_DECODER) += byte_alignment_test.cc
42 LIBVPX_TEST_SRCS-$(CONFIG_VP9_DECODER) += decode_svc_test.cc
43 LIBVPX_TEST_SRCS-$(CONFIG_VP9_DECODER) += external_frame_buffer_test.cc
44 LIBVPX_TEST_SRCS-$(CONFIG_VP9_DECODER) += user_priv_test.cc
45 LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += active_map_refresh_test.cc
46 LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += active_map_test.cc
47 LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += borders_test.cc
48 LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += cpu_speed_test.cc
49 LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += frame_size_tests.cc
50 LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += vp9_lossless_test.cc
51 LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += vp9_end_to_end_test.cc
52 LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += decode_corrupted.cc
53 LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += vp9_ethread_test.cc
54 LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += vp9_motion_vector_test.cc
55 LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += level_test.cc
56 LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += svc_datarate_test.cc
57 LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += svc_test.cc
58 LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += svc_test.h
59 LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += svc_end_to_end_test.cc
60 LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += timestamp_test.cc
61 LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += vp9_ext_ratectrl_test.cc
62
63 LIBVPX_TEST_SRCS-yes                   += decode_test_driver.cc
64 LIBVPX_TEST_SRCS-yes                   += decode_test_driver.h
65 LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS)    += encode_test_driver.cc
66 LIBVPX_TEST_SRCS-yes                   += encode_test_driver.h
67
68 ## IVF writing.
69 LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS)    += ../ivfenc.c ../ivfenc.h
70
71 ## Y4m parsing.
72 LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS)    += y4m_test.cc ../y4menc.c ../y4menc.h
73
74 ## WebM Parsing
75 ifeq ($(CONFIG_WEBM_IO), yes)
76 LIBWEBM_PARSER_SRCS += ../third_party/libwebm/mkvparser/mkvparser.cc
77 LIBWEBM_PARSER_SRCS += ../third_party/libwebm/mkvparser/mkvreader.cc
78 LIBWEBM_PARSER_SRCS += ../third_party/libwebm/mkvparser/mkvparser.h
79 LIBWEBM_PARSER_SRCS += ../third_party/libwebm/mkvparser/mkvreader.h
80 LIBWEBM_PARSER_SRCS += ../third_party/libwebm/common/webmids.h
81 LIBVPX_TEST_SRCS-$(CONFIG_DECODERS)    += $(LIBWEBM_PARSER_SRCS)
82 LIBVPX_TEST_SRCS-$(CONFIG_DECODERS)    += ../tools_common.h
83 LIBVPX_TEST_SRCS-$(CONFIG_DECODERS)    += ../webmdec.cc
84 LIBVPX_TEST_SRCS-$(CONFIG_DECODERS)    += ../webmdec.h
85 LIBVPX_TEST_SRCS-$(CONFIG_DECODERS)    += webm_video_source.h
86 LIBVPX_TEST_SRCS-$(CONFIG_VP9_DECODER) += vp9_skip_loopfilter_test.cc
87 endif
88
89 LIBVPX_TEST_SRCS-$(CONFIG_DECODERS)    += decode_api_test.cc
90 LIBVPX_TEST_SRCS-$(CONFIG_DECODERS)    += test_vector_test.cc
91
92 # Currently we only support decoder perf tests for vp9. Also they read from WebM
93 # files, so WebM IO is required.
94 ifeq ($(CONFIG_DECODE_PERF_TESTS)$(CONFIG_VP9_DECODER)$(CONFIG_WEBM_IO), \
95       yesyesyes)
96 LIBVPX_TEST_SRCS-yes                   += decode_perf_test.cc
97 endif
98
99 # encode perf tests are vp9 only
100 ifeq ($(CONFIG_ENCODE_PERF_TESTS)$(CONFIG_VP9_ENCODER), yesyes)
101 LIBVPX_TEST_SRCS-yes += encode_perf_test.cc
102 endif
103
104 ## Multi-codec blackbox tests.
105 ifeq ($(findstring yes,$(CONFIG_VP8_DECODER)$(CONFIG_VP9_DECODER)), yes)
106 LIBVPX_TEST_SRCS-yes += invalid_file_test.cc
107 endif
108
109 ##
110 ## WHITE BOX TESTS
111 ##
112 ## Whitebox tests invoke functions not exposed via the public API. Certain
113 ## shared library builds don't make these functions accessible.
114 ##
115 ifeq ($(CONFIG_SHARED),)
116
117 ## VP8
118 ifeq ($(CONFIG_VP8),yes)
119
120 # These tests require both the encoder and decoder to be built.
121 ifeq ($(CONFIG_VP8_ENCODER)$(CONFIG_VP8_DECODER),yesyes)
122 LIBVPX_TEST_SRCS-yes                   += vp8_boolcoder_test.cc
123 LIBVPX_TEST_SRCS-yes                   += vp8_fragments_test.cc
124 endif
125 LIBVPX_TEST_SRCS-$(CONFIG_POSTPROC)    += add_noise_test.cc
126 LIBVPX_TEST_SRCS-$(CONFIG_POSTPROC)    += pp_filter_test.cc
127 LIBVPX_TEST_SRCS-$(CONFIG_VP8_DECODER) += vp8_decrypt_test.cc
128 ifneq (, $(filter yes, $(HAVE_SSE2) $(HAVE_SSSE3) $(HAVE_SSE4_1) $(HAVE_NEON) \
129                        $(HAVE_MSA) $(HAVE_MMI)))
130 LIBVPX_TEST_SRCS-$(CONFIG_VP8_ENCODER) += quantize_test.cc
131 endif
132 LIBVPX_TEST_SRCS-$(CONFIG_VP8_ENCODER) += set_roi.cc
133 LIBVPX_TEST_SRCS-$(CONFIG_VP8_ENCODER) += variance_test.cc
134 LIBVPX_TEST_SRCS-$(CONFIG_VP8_ENCODER) += vp8_fdct4x4_test.cc
135
136 LIBVPX_TEST_SRCS-yes                   += idct_test.cc
137 LIBVPX_TEST_SRCS-yes                   += predict_test.cc
138 LIBVPX_TEST_SRCS-yes                   += vpx_scale_test.cc
139 LIBVPX_TEST_SRCS-yes                   += vpx_scale_test.h
140
141 ifeq ($(CONFIG_VP8_ENCODER)$(CONFIG_TEMPORAL_DENOISING),yesyes)
142 LIBVPX_TEST_SRCS-$(HAVE_SSE2) += vp8_denoiser_sse2_test.cc
143 endif
144
145 endif # VP8
146
147 ## VP9
148 ifeq ($(CONFIG_VP9),yes)
149
150 # These tests require both the encoder and decoder to be built.
151 ifeq ($(CONFIG_VP9_ENCODER)$(CONFIG_VP9_DECODER),yesyes)
152 # IDCT test currently depends on FDCT function
153 LIBVPX_TEST_SRCS-yes                   += idct8x8_test.cc
154 LIBVPX_TEST_SRCS-yes                   += partial_idct_test.cc
155 LIBVPX_TEST_SRCS-yes                   += superframe_test.cc
156 LIBVPX_TEST_SRCS-yes                   += tile_independence_test.cc
157 LIBVPX_TEST_SRCS-yes                   += vp9_boolcoder_test.cc
158 LIBVPX_TEST_SRCS-yes                   += vp9_encoder_parms_get_to_decoder.cc
159 LIBVPX_TEST_SRCS-yes                   += vp9_roi_test.cc
160 endif
161
162 LIBVPX_TEST_SRCS-yes                   += convolve_test.cc
163 LIBVPX_TEST_SRCS-yes                   += lpf_test.cc
164 LIBVPX_TEST_SRCS-yes                   += vp9_intrapred_test.cc
165 LIBVPX_TEST_SRCS-$(CONFIG_VP9_DECODER) += vp9_decrypt_test.cc
166 LIBVPX_TEST_SRCS-$(CONFIG_VP9_DECODER) += vp9_thread_test.cc
167 LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += avg_test.cc
168 LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += comp_avg_pred_test.cc
169 LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += dct16x16_test.cc
170 LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += dct32x32_test.cc
171 LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += dct_partial_test.cc
172 LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += dct_test.cc
173 LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += fdct8x8_test.cc
174 LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += hadamard_test.cc
175 LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += minmax_test.cc
176 LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += vp9_scale_test.cc
177 ifneq ($(CONFIG_REALTIME_ONLY),yes)
178 LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += yuv_temporal_filter_test.cc
179 endif
180 LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += variance_test.cc
181 ifneq (, $(filter yes, $(HAVE_SSE2) $(HAVE_AVX2)))
182 LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += vp9_block_error_test.cc
183 endif
184 LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += vp9_quantize_test.cc
185 LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += vp9_subtract_test.cc
186
187 ifeq ($(CONFIG_VP9_ENCODER),yes)
188 LIBVPX_TEST_SRCS-$(CONFIG_INTERNAL_STATS) += blockiness_test.cc
189 LIBVPX_TEST_SRCS-$(CONFIG_INTERNAL_STATS) += consistency_test.cc
190 endif
191
192 ifeq ($(CONFIG_VP9_ENCODER),yes)
193 LIBVPX_TEST_SRCS-$(CONFIG_NON_GREEDY_MV) += non_greedy_mv_test.cc
194 endif
195
196 ifeq ($(CONFIG_VP9_ENCODER)$(CONFIG_VP9_TEMPORAL_DENOISING),yesyes)
197 LIBVPX_TEST_SRCS-yes += vp9_denoiser_test.cc
198 endif
199 LIBVPX_TEST_SRCS-$(CONFIG_VP9_ENCODER) += vp9_arf_freq_test.cc
200
201 ifeq ($(CONFIG_VP9_ENCODER),yes)
202 SIMPLE_ENCODE_TEST_SRCS-$(CONFIG_RATE_CTRL) := simple_encode_test.cc
203 endif
204
205 endif # VP9
206
207 ## Multi-codec / unconditional whitebox tests.
208
209 LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS) += sad_test.cc
210 ifneq (, $(filter yes, $(HAVE_NEON) $(HAVE_SSE2) $(HAVE_MSA)))
211 LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS) += sum_squares_test.cc
212 endif
213
214 TEST_INTRA_PRED_SPEED_SRCS-yes := test_intra_pred_speed.cc
215 TEST_INTRA_PRED_SPEED_SRCS-yes += ../md5_utils.h ../md5_utils.c
216
217 RC_INTERFACE_TEST_SRCS-yes := test_rc_interface.cc
218 RC_INTERFACE_TEST_SRCS-$(CONFIG_VP9_ENCODER) += vp9_ratectrl_rtc_test.cc
219 RC_INTERFACE_TEST_SRCS-$(CONFIG_VP8_ENCODER) += vp8_ratectrl_rtc_test.cc
220 RC_INTERFACE_TEST_SRCS-$(CONFIG_ENCODERS) += encode_test_driver.cc
221 RC_INTERFACE_TEST_SRCS-$(CONFIG_ENCODERS) += encode_test_driver.h
222 RC_INTERFACE_TEST_SRCS-yes += decode_test_driver.cc
223 RC_INTERFACE_TEST_SRCS-yes += decode_test_driver.h
224 RC_INTERFACE_TEST_SRCS-yes += codec_factory.h
225
226 endif # CONFIG_SHARED
227
228 include $(SRC_PATH_BARE)/test/test-data.mk