OLD | NEW |
1 /* | 1 /* |
2 * jsimddct.h | 2 * jsimddct.h |
3 * | 3 * |
4 * Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB | 4 * Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB |
5 * | 5 * |
6 * Based on the x86 SIMD extension for IJG JPEG library, | 6 * Based on the x86 SIMD extension for IJG JPEG library, |
7 * Copyright (C) 1999-2006, MIYASAKA Masaru. | 7 * Copyright (C) 1999-2006, MIYASAKA Masaru. |
8 * For conditions of distribution and use, see copyright notice in jsimdext.inc | 8 * For conditions of distribution and use, see copyright notice in jsimdext.inc |
9 * | 9 * |
10 */ | 10 */ |
11 | 11 |
12 /* Short forms of external names for systems with brain-damaged linkers. */ | 12 EXTERN(int) jsimd_can_convsamp (void); |
| 13 EXTERN(int) jsimd_can_convsamp_float (void); |
13 | 14 |
14 #ifdef NEED_SHORT_EXTERNAL_NAMES | 15 EXTERN(void) jsimd_convsamp (JSAMPARRAY sample_data, JDIMENSION start_col, |
15 #define jsimd_can_convsamp jSCanConv | 16 DCTELEM *workspace); |
16 #define jsimd_can_convsamp_float jSCanConvF | 17 EXTERN(void) jsimd_convsamp_float (JSAMPARRAY sample_data, |
17 #define jsimd_convsamp jSConv | 18 JDIMENSION start_col, |
18 #define jsimd_convsamp_float jSConvF | 19 FAST_FLOAT *workspace); |
19 #define jsimd_can_fdct_islow jSCanFDCTIS | |
20 #define jsimd_can_fdct_ifast jSCanFDCTIF | |
21 #define jsimd_can_fdct_float jSCanFDCTFl | |
22 #define jsimd_fdct_islow jSFDCTIS | |
23 #define jsimd_fdct_ifast jSFDCTIF | |
24 #define jsimd_fdct_float jSFDCTFl | |
25 #define jsimd_can_quantize jSCanQuant | |
26 #define jsimd_can_quantize_float jSCanQuantF | |
27 #define jsimd_quantize jSQuant | |
28 #define jsimd_quantize_float jSQuantF | |
29 #define jsimd_can_idct_2x2 jSCanIDCT22 | |
30 #define jsimd_can_idct_4x4 jSCanIDCT44 | |
31 #define jsimd_idct_2x2 jSIDCT22 | |
32 #define jsimd_idct_4x4 jSIDCT44 | |
33 #define jsimd_can_idct_islow jSCanIDCTIS | |
34 #define jsimd_can_idct_ifast jSCanIDCTIF | |
35 #define jsimd_can_idct_float jSCanIDCTFl | |
36 #define jsimd_idct_islow jSIDCTIS | |
37 #define jsimd_idct_ifast jSIDCTIF | |
38 #define jsimd_idct_float jSIDCTFl | |
39 #endif /* NEED_SHORT_EXTERNAL_NAMES */ | |
40 | 20 |
41 EXTERN(int) jsimd_can_convsamp JPP((void)); | 21 EXTERN(int) jsimd_can_fdct_islow (void); |
42 EXTERN(int) jsimd_can_convsamp_float JPP((void)); | 22 EXTERN(int) jsimd_can_fdct_ifast (void); |
| 23 EXTERN(int) jsimd_can_fdct_float (void); |
43 | 24 |
44 EXTERN(void) jsimd_convsamp JPP((JSAMPARRAY sample_data, | 25 EXTERN(void) jsimd_fdct_islow (DCTELEM *data); |
45 JDIMENSION start_col, | 26 EXTERN(void) jsimd_fdct_ifast (DCTELEM *data); |
46 DCTELEM * workspace)); | 27 EXTERN(void) jsimd_fdct_float (FAST_FLOAT *data); |
47 EXTERN(void) jsimd_convsamp_float JPP((JSAMPARRAY sample_data, | |
48 JDIMENSION start_col, | |
49 FAST_FLOAT * workspace)); | |
50 | 28 |
51 EXTERN(int) jsimd_can_fdct_islow JPP((void)); | 29 EXTERN(int) jsimd_can_quantize (void); |
52 EXTERN(int) jsimd_can_fdct_ifast JPP((void)); | 30 EXTERN(int) jsimd_can_quantize_float (void); |
53 EXTERN(int) jsimd_can_fdct_float JPP((void)); | |
54 | 31 |
55 EXTERN(void) jsimd_fdct_islow JPP((DCTELEM * data)); | 32 EXTERN(void) jsimd_quantize (JCOEFPTR coef_block, DCTELEM *divisors, |
56 EXTERN(void) jsimd_fdct_ifast JPP((DCTELEM * data)); | 33 DCTELEM *workspace); |
57 EXTERN(void) jsimd_fdct_float JPP((FAST_FLOAT * data)); | 34 EXTERN(void) jsimd_quantize_float (JCOEFPTR coef_block, FAST_FLOAT *divisors, |
| 35 FAST_FLOAT *workspace); |
58 | 36 |
59 EXTERN(int) jsimd_can_quantize JPP((void)); | 37 EXTERN(int) jsimd_can_idct_2x2 (void); |
60 EXTERN(int) jsimd_can_quantize_float JPP((void)); | 38 EXTERN(int) jsimd_can_idct_4x4 (void); |
| 39 EXTERN(int) jsimd_can_idct_6x6 (void); |
| 40 EXTERN(int) jsimd_can_idct_12x12 (void); |
61 | 41 |
62 EXTERN(void) jsimd_quantize JPP((JCOEFPTR coef_block, | 42 EXTERN(void) jsimd_idct_2x2 (j_decompress_ptr cinfo, |
63 DCTELEM * divisors, | 43 jpeg_component_info *compptr, |
64 DCTELEM * workspace)); | 44 JCOEFPTR coef_block, JSAMPARRAY output_buf, |
65 EXTERN(void) jsimd_quantize_float JPP((JCOEFPTR coef_block, | 45 JDIMENSION output_col); |
66 FAST_FLOAT * divisors, | 46 EXTERN(void) jsimd_idct_4x4 (j_decompress_ptr cinfo, |
67 FAST_FLOAT * workspace)); | 47 jpeg_component_info *compptr, |
| 48 JCOEFPTR coef_block, JSAMPARRAY output_buf, |
| 49 JDIMENSION output_col); |
| 50 EXTERN(void) jsimd_idct_6x6 (j_decompress_ptr cinfo, |
| 51 jpeg_component_info *compptr, |
| 52 JCOEFPTR coef_block, JSAMPARRAY output_buf, |
| 53 JDIMENSION output_col); |
| 54 EXTERN(void) jsimd_idct_12x12 (j_decompress_ptr cinfo, |
| 55 jpeg_component_info *compptr, |
| 56 JCOEFPTR coef_block, JSAMPARRAY output_buf, |
| 57 JDIMENSION output_col); |
68 | 58 |
69 EXTERN(int) jsimd_can_idct_2x2 JPP((void)); | 59 EXTERN(int) jsimd_can_idct_islow (void); |
70 EXTERN(int) jsimd_can_idct_4x4 JPP((void)); | 60 EXTERN(int) jsimd_can_idct_ifast (void); |
| 61 EXTERN(int) jsimd_can_idct_float (void); |
71 | 62 |
72 EXTERN(void) jsimd_idct_2x2 JPP((j_decompress_ptr cinfo, | 63 EXTERN(void) jsimd_idct_islow (j_decompress_ptr cinfo, |
73 jpeg_component_info * compptr, | 64 jpeg_component_info *compptr, |
74 JCOEFPTR coef_block, | 65 JCOEFPTR coef_block, JSAMPARRAY output_buf, |
75 JSAMPARRAY output_buf, | 66 JDIMENSION output_col); |
76 JDIMENSION output_col)); | 67 EXTERN(void) jsimd_idct_ifast (j_decompress_ptr cinfo, |
77 EXTERN(void) jsimd_idct_4x4 JPP((j_decompress_ptr cinfo, | 68 jpeg_component_info *compptr, |
78 jpeg_component_info * compptr, | 69 JCOEFPTR coef_block, JSAMPARRAY output_buf, |
79 JCOEFPTR coef_block, | 70 JDIMENSION output_col); |
80 JSAMPARRAY output_buf, | 71 EXTERN(void) jsimd_idct_float (j_decompress_ptr cinfo, |
81 JDIMENSION output_col)); | 72 jpeg_component_info *compptr, |
82 | 73 JCOEFPTR coef_block, JSAMPARRAY output_buf, |
83 EXTERN(int) jsimd_can_idct_islow JPP((void)); | 74 JDIMENSION output_col); |
84 EXTERN(int) jsimd_can_idct_ifast JPP((void)); | |
85 EXTERN(int) jsimd_can_idct_float JPP((void)); | |
86 | |
87 EXTERN(void) jsimd_idct_islow JPP((j_decompress_ptr cinfo, | |
88 jpeg_component_info * compptr, | |
89 JCOEFPTR coef_block, | |
90 JSAMPARRAY output_buf, | |
91 JDIMENSION output_col)); | |
92 EXTERN(void) jsimd_idct_ifast JPP((j_decompress_ptr cinfo, | |
93 jpeg_component_info * compptr, | |
94 JCOEFPTR coef_block, | |
95 JSAMPARRAY output_buf, | |
96 JDIMENSION output_col)); | |
97 EXTERN(void) jsimd_idct_float JPP((j_decompress_ptr cinfo, | |
98 jpeg_component_info * compptr, | |
99 JCOEFPTR coef_block, | |
100 JSAMPARRAY output_buf, | |
101 JDIMENSION output_col)); | |
102 | |
OLD | NEW |