1/*
2 * jsimd_none.c
3 *
4 * Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
5 * Copyright (C) 2009-2011, 2014, D. R. Commander.
6 * Copyright (C) 2015-2016, 2018, Matthieu Darbois.
7 *
8 * Based on the x86 SIMD extension for IJG JPEG library,
9 * Copyright (C) 1999-2006, MIYASAKA Masaru.
10 * For conditions of distribution and use, see copyright notice in jsimdext.inc
11 *
12 * This file contains stubs for when there is no SIMD support available.
13 */
14
15#define JPEG_INTERNALS
16#include "jinclude.h"
17#include "jpeglib.h"
18#include "jsimd.h"
19#include "jdct.h"
20#include "jsimddct.h"
21
22GLOBAL(int)
23jsimd_can_rgb_ycc(void)
24{
25 return 0;
26}
27
28GLOBAL(int)
29jsimd_can_rgb_gray(void)
30{
31 return 0;
32}
33
34GLOBAL(int)
35jsimd_can_ycc_rgb(void)
36{
37 return 0;
38}
39
40GLOBAL(int)
41jsimd_can_ycc_rgb565(void)
42{
43 return 0;
44}
45
46GLOBAL(int)
47jsimd_c_can_null_convert(void)
48{
49 return 0;
50}
51
52GLOBAL(void)
53jsimd_rgb_ycc_convert(j_compress_ptr cinfo, JSAMPARRAY input_buf,
54 JSAMPIMAGE output_buf, JDIMENSION output_row,
55 int num_rows)
56{
57}
58
59GLOBAL(void)
60jsimd_rgb_gray_convert(j_compress_ptr cinfo, JSAMPARRAY input_buf,
61 JSAMPIMAGE output_buf, JDIMENSION output_row,
62 int num_rows)
63{
64}
65
66GLOBAL(void)
67jsimd_ycc_rgb_convert(j_decompress_ptr cinfo, JSAMPIMAGE input_buf,
68 JDIMENSION input_row, JSAMPARRAY output_buf,
69 int num_rows)
70{
71}
72
73GLOBAL(void)
74jsimd_ycc_rgb565_convert(j_decompress_ptr cinfo, JSAMPIMAGE input_buf,
75 JDIMENSION input_row, JSAMPARRAY output_buf,
76 int num_rows)
77{
78}
79
80GLOBAL(void)
81jsimd_c_null_convert(j_compress_ptr cinfo, JSAMPARRAY input_buf,
82 JSAMPIMAGE output_buf, JDIMENSION output_row,
83 int num_rows)
84{
85}
86
87GLOBAL(int)
88jsimd_can_h2v2_downsample(void)
89{
90 return 0;
91}
92
93GLOBAL(int)
94jsimd_can_h2v1_downsample(void)
95{
96 return 0;
97}
98
99GLOBAL(int)
100jsimd_can_h2v2_smooth_downsample(void)
101{
102 return 0;
103}
104
105GLOBAL(void)
106jsimd_h2v2_downsample(j_compress_ptr cinfo, jpeg_component_info *compptr,
107 JSAMPARRAY input_data, JSAMPARRAY output_data)
108{
109}
110
111GLOBAL(void)
112jsimd_h2v2_smooth_downsample(j_compress_ptr cinfo,
113 jpeg_component_info *compptr,
114 JSAMPARRAY input_data, JSAMPARRAY output_data)
115{
116}
117
118GLOBAL(void)
119jsimd_h2v1_downsample(j_compress_ptr cinfo, jpeg_component_info *compptr,
120 JSAMPARRAY input_data, JSAMPARRAY output_data)
121{
122}
123
124GLOBAL(int)
125jsimd_can_h2v2_upsample(void)
126{
127 return 0;
128}
129
130GLOBAL(int)
131jsimd_can_h2v1_upsample(void)
132{
133 return 0;
134}
135
136GLOBAL(int)
137jsimd_can_int_upsample(void)
138{
139 return 0;
140}
141
142GLOBAL(void)
143jsimd_int_upsample(j_decompress_ptr cinfo, jpeg_component_info *compptr,
144 JSAMPARRAY input_data, JSAMPARRAY *output_data_ptr)
145{
146}
147
148GLOBAL(void)
149jsimd_h2v2_upsample(j_decompress_ptr cinfo, jpeg_component_info *compptr,
150 JSAMPARRAY input_data, JSAMPARRAY *output_data_ptr)
151{
152}
153
154GLOBAL(void)
155jsimd_h2v1_upsample(j_decompress_ptr cinfo, jpeg_component_info *compptr,
156 JSAMPARRAY input_data, JSAMPARRAY *output_data_ptr)
157{
158}
159
160GLOBAL(int)
161jsimd_can_h2v2_fancy_upsample(void)
162{
163 return 0;
164}
165
166GLOBAL(int)
167jsimd_can_h2v1_fancy_upsample(void)
168{
169 return 0;
170}
171
172GLOBAL(void)
173jsimd_h2v2_fancy_upsample(j_decompress_ptr cinfo, jpeg_component_info *compptr,
174 JSAMPARRAY input_data, JSAMPARRAY *output_data_ptr)
175{
176}
177
178GLOBAL(void)
179jsimd_h2v1_fancy_upsample(j_decompress_ptr cinfo, jpeg_component_info *compptr,
180 JSAMPARRAY input_data, JSAMPARRAY *output_data_ptr)
181{
182}
183
184GLOBAL(int)
185jsimd_can_h2v2_merged_upsample(void)
186{
187 return 0;
188}
189
190GLOBAL(int)
191jsimd_can_h2v1_merged_upsample(void)
192{
193 return 0;
194}
195
196GLOBAL(void)
197jsimd_h2v2_merged_upsample(j_decompress_ptr cinfo, JSAMPIMAGE input_buf,
198 JDIMENSION in_row_group_ctr, JSAMPARRAY output_buf)
199{
200}
201
202GLOBAL(void)
203jsimd_h2v1_merged_upsample(j_decompress_ptr cinfo, JSAMPIMAGE input_buf,
204 JDIMENSION in_row_group_ctr, JSAMPARRAY output_buf)
205{
206}
207
208GLOBAL(int)
209jsimd_can_convsamp(void)
210{
211 return 0;
212}
213
214GLOBAL(int)
215jsimd_can_convsamp_float(void)
216{
217 return 0;
218}
219
220GLOBAL(void)
221jsimd_convsamp(JSAMPARRAY sample_data, JDIMENSION start_col,
222 DCTELEM *workspace)
223{
224}
225
226GLOBAL(void)
227jsimd_convsamp_float(JSAMPARRAY sample_data, JDIMENSION start_col,
228 FAST_FLOAT *workspace)
229{
230}
231
232GLOBAL(int)
233jsimd_can_fdct_islow(void)
234{
235 return 0;
236}
237
238GLOBAL(int)
239jsimd_can_fdct_ifast(void)
240{
241 return 0;
242}
243
244GLOBAL(int)
245jsimd_can_fdct_float(void)
246{
247 return 0;
248}
249
250GLOBAL(void)
251jsimd_fdct_islow(DCTELEM *data)
252{
253}
254
255GLOBAL(void)
256jsimd_fdct_ifast(DCTELEM *data)
257{
258}
259
260GLOBAL(void)
261jsimd_fdct_float(FAST_FLOAT *data)
262{
263}
264
265GLOBAL(int)
266jsimd_can_quantize(void)
267{
268 return 0;
269}
270
271GLOBAL(int)
272jsimd_can_quantize_float(void)
273{
274 return 0;
275}
276
277GLOBAL(void)
278jsimd_quantize(JCOEFPTR coef_block, DCTELEM *divisors, DCTELEM *workspace)
279{
280}
281
282GLOBAL(void)
283jsimd_quantize_float(JCOEFPTR coef_block, FAST_FLOAT *divisors,
284 FAST_FLOAT *workspace)
285{
286}
287
288GLOBAL(int)
289jsimd_can_idct_2x2(void)
290{
291 return 0;
292}
293
294GLOBAL(int)
295jsimd_can_idct_4x4(void)
296{
297 return 0;
298}
299
300GLOBAL(int)
301jsimd_can_idct_6x6(void)
302{
303 return 0;
304}
305
306GLOBAL(int)
307jsimd_can_idct_12x12(void)
308{
309 return 0;
310}
311
312GLOBAL(void)
313jsimd_idct_2x2(j_decompress_ptr cinfo, jpeg_component_info *compptr,
314 JCOEFPTR coef_block, JSAMPARRAY output_buf,
315 JDIMENSION output_col)
316{
317}
318
319GLOBAL(void)
320jsimd_idct_4x4(j_decompress_ptr cinfo, jpeg_component_info *compptr,
321 JCOEFPTR coef_block, JSAMPARRAY output_buf,
322 JDIMENSION output_col)
323{
324}
325
326GLOBAL(void)
327jsimd_idct_6x6(j_decompress_ptr cinfo, jpeg_component_info *compptr,
328 JCOEFPTR coef_block, JSAMPARRAY output_buf,
329 JDIMENSION output_col)
330{
331}
332
333GLOBAL(void)
334jsimd_idct_12x12(j_decompress_ptr cinfo, jpeg_component_info *compptr,
335 JCOEFPTR coef_block, JSAMPARRAY output_buf,
336 JDIMENSION output_col)
337{
338}
339
340GLOBAL(int)
341jsimd_can_idct_islow(void)
342{
343 return 0;
344}
345
346GLOBAL(int)
347jsimd_can_idct_ifast(void)
348{
349 return 0;
350}
351
352GLOBAL(int)
353jsimd_can_idct_float(void)
354{
355 return 0;
356}
357
358GLOBAL(void)
359jsimd_idct_islow(j_decompress_ptr cinfo, jpeg_component_info *compptr,
360 JCOEFPTR coef_block, JSAMPARRAY output_buf,
361 JDIMENSION output_col)
362{
363}
364
365GLOBAL(void)
366jsimd_idct_ifast(j_decompress_ptr cinfo, jpeg_component_info *compptr,
367 JCOEFPTR coef_block, JSAMPARRAY output_buf,
368 JDIMENSION output_col)
369{
370}
371
372GLOBAL(void)
373jsimd_idct_float(j_decompress_ptr cinfo, jpeg_component_info *compptr,
374 JCOEFPTR coef_block, JSAMPARRAY output_buf,
375 JDIMENSION output_col)
376{
377}
378
379GLOBAL(int)
380jsimd_can_huff_encode_one_block(void)
381{
382 return 0;
383}
384
385GLOBAL(JOCTET *)
386jsimd_huff_encode_one_block(void *state, JOCTET *buffer, JCOEFPTR block,
387 int last_dc_val, c_derived_tbl *dctbl,
388 c_derived_tbl *actbl)
389{
390 return NULL;
391}
392
393GLOBAL(int)
394jsimd_can_encode_mcu_AC_first_prepare(void)
395{
396 return 0;
397}
398
399GLOBAL(void)
400jsimd_encode_mcu_AC_first_prepare(const JCOEF *block,
401 const int *jpeg_natural_order_start, int Sl,
402 int Al, JCOEF *values, size_t *zerobits)
403{
404}
405
406GLOBAL(int)
407jsimd_can_encode_mcu_AC_refine_prepare(void)
408{
409 return 0;
410}
411
412GLOBAL(int)
413jsimd_encode_mcu_AC_refine_prepare(const JCOEF *block,
414 const int *jpeg_natural_order_start, int Sl,
415 int Al, JCOEF *absvalues, size_t *bits)
416{
417 return 0;
418}
419