1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/media/libjpeg/jsimddct.h Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,102 @@ 1.4 +/* 1.5 + * jsimddct.h 1.6 + * 1.7 + * Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB 1.8 + * 1.9 + * Based on the x86 SIMD extension for IJG JPEG library, 1.10 + * Copyright (C) 1999-2006, MIYASAKA Masaru. 1.11 + * For conditions of distribution and use, see copyright notice in jsimdext.inc 1.12 + * 1.13 + */ 1.14 + 1.15 +/* Short forms of external names for systems with brain-damaged linkers. */ 1.16 + 1.17 +#ifdef NEED_SHORT_EXTERNAL_NAMES 1.18 +#define jsimd_can_convsamp jSCanConv 1.19 +#define jsimd_can_convsamp_float jSCanConvF 1.20 +#define jsimd_convsamp jSConv 1.21 +#define jsimd_convsamp_float jSConvF 1.22 +#define jsimd_can_fdct_islow jSCanFDCTIS 1.23 +#define jsimd_can_fdct_ifast jSCanFDCTIF 1.24 +#define jsimd_can_fdct_float jSCanFDCTFl 1.25 +#define jsimd_fdct_islow jSFDCTIS 1.26 +#define jsimd_fdct_ifast jSFDCTIF 1.27 +#define jsimd_fdct_float jSFDCTFl 1.28 +#define jsimd_can_quantize jSCanQuant 1.29 +#define jsimd_can_quantize_float jSCanQuantF 1.30 +#define jsimd_quantize jSQuant 1.31 +#define jsimd_quantize_float jSQuantF 1.32 +#define jsimd_can_idct_2x2 jSCanIDCT22 1.33 +#define jsimd_can_idct_4x4 jSCanIDCT44 1.34 +#define jsimd_idct_2x2 jSIDCT22 1.35 +#define jsimd_idct_4x4 jSIDCT44 1.36 +#define jsimd_can_idct_islow jSCanIDCTIS 1.37 +#define jsimd_can_idct_ifast jSCanIDCTIF 1.38 +#define jsimd_can_idct_float jSCanIDCTFl 1.39 +#define jsimd_idct_islow jSIDCTIS 1.40 +#define jsimd_idct_ifast jSIDCTIF 1.41 +#define jsimd_idct_float jSIDCTFl 1.42 +#endif /* NEED_SHORT_EXTERNAL_NAMES */ 1.43 + 1.44 +EXTERN(int) jsimd_can_convsamp JPP((void)); 1.45 +EXTERN(int) jsimd_can_convsamp_float JPP((void)); 1.46 + 1.47 +EXTERN(void) jsimd_convsamp JPP((JSAMPARRAY sample_data, 1.48 + JDIMENSION start_col, 1.49 + DCTELEM * workspace)); 1.50 +EXTERN(void) jsimd_convsamp_float JPP((JSAMPARRAY sample_data, 1.51 + JDIMENSION start_col, 1.52 + FAST_FLOAT * workspace)); 1.53 + 1.54 +EXTERN(int) jsimd_can_fdct_islow JPP((void)); 1.55 +EXTERN(int) jsimd_can_fdct_ifast JPP((void)); 1.56 +EXTERN(int) jsimd_can_fdct_float JPP((void)); 1.57 + 1.58 +EXTERN(void) jsimd_fdct_islow JPP((DCTELEM * data)); 1.59 +EXTERN(void) jsimd_fdct_ifast JPP((DCTELEM * data)); 1.60 +EXTERN(void) jsimd_fdct_float JPP((FAST_FLOAT * data)); 1.61 + 1.62 +EXTERN(int) jsimd_can_quantize JPP((void)); 1.63 +EXTERN(int) jsimd_can_quantize_float JPP((void)); 1.64 + 1.65 +EXTERN(void) jsimd_quantize JPP((JCOEFPTR coef_block, 1.66 + DCTELEM * divisors, 1.67 + DCTELEM * workspace)); 1.68 +EXTERN(void) jsimd_quantize_float JPP((JCOEFPTR coef_block, 1.69 + FAST_FLOAT * divisors, 1.70 + FAST_FLOAT * workspace)); 1.71 + 1.72 +EXTERN(int) jsimd_can_idct_2x2 JPP((void)); 1.73 +EXTERN(int) jsimd_can_idct_4x4 JPP((void)); 1.74 + 1.75 +EXTERN(void) jsimd_idct_2x2 JPP((j_decompress_ptr cinfo, 1.76 + jpeg_component_info * compptr, 1.77 + JCOEFPTR coef_block, 1.78 + JSAMPARRAY output_buf, 1.79 + JDIMENSION output_col)); 1.80 +EXTERN(void) jsimd_idct_4x4 JPP((j_decompress_ptr cinfo, 1.81 + jpeg_component_info * compptr, 1.82 + JCOEFPTR coef_block, 1.83 + JSAMPARRAY output_buf, 1.84 + JDIMENSION output_col)); 1.85 + 1.86 +EXTERN(int) jsimd_can_idct_islow JPP((void)); 1.87 +EXTERN(int) jsimd_can_idct_ifast JPP((void)); 1.88 +EXTERN(int) jsimd_can_idct_float JPP((void)); 1.89 + 1.90 +EXTERN(void) jsimd_idct_islow JPP((j_decompress_ptr cinfo, 1.91 + jpeg_component_info * compptr, 1.92 + JCOEFPTR coef_block, 1.93 + JSAMPARRAY output_buf, 1.94 + JDIMENSION output_col)); 1.95 +EXTERN(void) jsimd_idct_ifast JPP((j_decompress_ptr cinfo, 1.96 + jpeg_component_info * compptr, 1.97 + JCOEFPTR coef_block, 1.98 + JSAMPARRAY output_buf, 1.99 + JDIMENSION output_col)); 1.100 +EXTERN(void) jsimd_idct_float JPP((j_decompress_ptr cinfo, 1.101 + jpeg_component_info * compptr, 1.102 + JCOEFPTR coef_block, 1.103 + JSAMPARRAY output_buf, 1.104 + JDIMENSION output_col)); 1.105 +