media/libjpeg/jsimddct.h

Thu, 22 Jan 2015 13:21:57 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Thu, 22 Jan 2015 13:21:57 +0100
branch
TOR_BUG_9701
changeset 15
b8a032363ba2
permissions
-rw-r--r--

Incorporate requested changes from Mozilla in review:
https://bugzilla.mozilla.org/show_bug.cgi?id=1123480#c6

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

mercurial