4 * Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
6 * Based on the x86 SIMD extension for IJG JPEG library,
7 * Copyright (C) 1999-2006, MIYASAKA Masaru.
8 * For conditions of distribution and use, see copyright notice in jsimdext.inc
12 EXTERN(int) jsimd_can_convsamp(void);
13 EXTERN(int) jsimd_can_convsamp_float(void);
15 EXTERN(void) jsimd_convsamp(JSAMPARRAY sample_data
, JDIMENSION start_col
,
17 EXTERN(void) jsimd_convsamp_float(JSAMPARRAY sample_data
, JDIMENSION start_col
,
18 FAST_FLOAT
*workspace
);
20 EXTERN(int) jsimd_can_fdct_islow(void);
21 EXTERN(int) jsimd_can_fdct_ifast(void);
22 EXTERN(int) jsimd_can_fdct_float(void);
24 EXTERN(void) jsimd_fdct_islow(DCTELEM
*data
);
25 EXTERN(void) jsimd_fdct_ifast(DCTELEM
*data
);
26 EXTERN(void) jsimd_fdct_float(FAST_FLOAT
*data
);
28 EXTERN(int) jsimd_can_quantize(void);
29 EXTERN(int) jsimd_can_quantize_float(void);
31 EXTERN(void) jsimd_quantize(JCOEFPTR coef_block
, DCTELEM
*divisors
,
33 EXTERN(void) jsimd_quantize_float(JCOEFPTR coef_block
, FAST_FLOAT
*divisors
,
34 FAST_FLOAT
*workspace
);
36 EXTERN(int) jsimd_can_idct_2x2(void);
37 EXTERN(int) jsimd_can_idct_4x4(void);
38 EXTERN(int) jsimd_can_idct_6x6(void);
39 EXTERN(int) jsimd_can_idct_12x12(void);
41 EXTERN(void) jsimd_idct_2x2(j_decompress_ptr cinfo
,
42 jpeg_component_info
*compptr
, JCOEFPTR coef_block
,
43 JSAMPARRAY output_buf
, JDIMENSION output_col
);
44 EXTERN(void) jsimd_idct_4x4(j_decompress_ptr cinfo
,
45 jpeg_component_info
*compptr
, JCOEFPTR coef_block
,
46 JSAMPARRAY output_buf
, JDIMENSION output_col
);
47 EXTERN(void) jsimd_idct_6x6(j_decompress_ptr cinfo
,
48 jpeg_component_info
*compptr
, JCOEFPTR coef_block
,
49 JSAMPARRAY output_buf
, JDIMENSION output_col
);
50 EXTERN(void) jsimd_idct_12x12(j_decompress_ptr cinfo
,
51 jpeg_component_info
*compptr
,
52 JCOEFPTR coef_block
, JSAMPARRAY output_buf
,
53 JDIMENSION output_col
);
55 EXTERN(int) jsimd_can_idct_islow(void);
56 EXTERN(int) jsimd_can_idct_ifast(void);
57 EXTERN(int) jsimd_can_idct_float(void);
59 EXTERN(void) jsimd_idct_islow(j_decompress_ptr cinfo
,
60 jpeg_component_info
*compptr
,
61 JCOEFPTR coef_block
, JSAMPARRAY output_buf
,
62 JDIMENSION output_col
);
63 EXTERN(void) jsimd_idct_ifast(j_decompress_ptr cinfo
,
64 jpeg_component_info
*compptr
,
65 JCOEFPTR coef_block
, JSAMPARRAY output_buf
,
66 JDIMENSION output_col
);
67 EXTERN(void) jsimd_idct_float(j_decompress_ptr cinfo
,
68 jpeg_component_info
*compptr
,
69 JCOEFPTR coef_block
, JSAMPARRAY output_buf
,
70 JDIMENSION output_col
);