blob: 90be19ee9a2a761b9c57b154837f88aed4610451 [file] [log] [blame]
Pierre Ossman59a39382009-03-09 13:15:56 +00001/*
2 * jsimd.h
3 *
4 * Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
5 *
6 * Based on the x86 SIMD extension for IJG JPEG library,
7 * Copyright (C) 1999-2006, MIYASAKA Masaru.
8 *
9 */
10
11/* Short forms of external names for systems with brain-damaged linkers. */
12
13#ifdef NEED_SHORT_EXTERNAL_NAMES
14#define jsimd_can_rgb_ycc jSCanRgbYcc
15#define jsimd_can_ycc_rgb jSCanYccRgb
16#define jsimd_rgb_ycc_convert jSRgbYccConv
17#define jsimd_ycc_rgb_convert jSYccRgbConv
18#define jsimd_can_h2v2_downsample jSCanH2V2Down
19#define jsimd_can_h2v1_downsample jSCanH2V1Down
20#define jsimd_h2v2_downsample jSH2V2Down
21#define jsimd_h2v1_downsample jSH2V1Down
22#define jsimd_can_h2v2_upsample jSCanH2V2Up
23#define jsimd_can_h2v1_upsample jSCanH2V1Up
24#define jsimd_h2v2_upsample jSH2V2Up
25#define jsimd_h2v1_upsample jSH2V1Up
26#define jsimd_can_h2v2_fancy_upsample jSCanH2V2FUp
27#define jsimd_can_h2v1_fancy_upsample jSCanH2V1FUp
28#define jsimd_h2v2_fancy_upsample jSH2V2FUp
29#define jsimd_h2v1_fancy_upsample jSH2V1FUp
30#define jsimd_can_h2v2_merged_upsample jSCanH2V2MUp
31#define jsimd_can_h2v1_merged_upsample jSCanH2V1MUp
32#define jsimd_h2v2_merged_upsample jSH2V2MUp
33#define jsimd_h2v1_merged_upsample jSH2V1MUp
34#endif /* NEED_SHORT_EXTERNAL_NAMES */
35
36EXTERN(int) jsimd_can_rgb_ycc JPP((void));
37EXTERN(int) jsimd_can_ycc_rgb JPP((void));
38
39EXTERN(void) jsimd_rgb_ycc_convert
40 JPP((j_compress_ptr cinfo,
41 JSAMPARRAY input_buf, JSAMPIMAGE output_buf,
42 JDIMENSION output_row, int num_rows));
43EXTERN(void) jsimd_ycc_rgb_convert
44 JPP((j_decompress_ptr cinfo,
45 JSAMPIMAGE input_buf, JDIMENSION input_row,
46 JSAMPARRAY output_buf, int num_rows));
47
48EXTERN(int) jsimd_can_h2v2_downsample JPP((void));
49EXTERN(int) jsimd_can_h2v1_downsample JPP((void));
50
51EXTERN(void) jsimd_h2v2_downsample
52 JPP((j_compress_ptr cinfo, jpeg_component_info * compptr,
53 JSAMPARRAY input_data, JSAMPARRAY output_data));
54EXTERN(void) jsimd_h2v1_downsample
55 JPP((j_compress_ptr cinfo, jpeg_component_info * compptr,
56 JSAMPARRAY input_data, JSAMPARRAY output_data));
57
58EXTERN(int) jsimd_can_h2v2_upsample JPP((void));
59EXTERN(int) jsimd_can_h2v1_upsample JPP((void));
60
61EXTERN(void) jsimd_h2v2_upsample
62 JPP((j_decompress_ptr cinfo, jpeg_component_info * compptr,
63 JSAMPARRAY input_data, JSAMPARRAY * output_data_ptr));
64EXTERN(void) jsimd_h2v1_upsample
65 JPP((j_decompress_ptr cinfo, jpeg_component_info * compptr,
66 JSAMPARRAY input_data, JSAMPARRAY * output_data_ptr));
67
68EXTERN(int) jsimd_can_h2v2_fancy_upsample JPP((void));
69EXTERN(int) jsimd_can_h2v1_fancy_upsample JPP((void));
70
71EXTERN(void) jsimd_h2v2_fancy_upsample
72 JPP((j_decompress_ptr cinfo, jpeg_component_info * compptr,
73 JSAMPARRAY input_data, JSAMPARRAY * output_data_ptr));
74EXTERN(void) jsimd_h2v1_fancy_upsample
75 JPP((j_decompress_ptr cinfo, jpeg_component_info * compptr,
76 JSAMPARRAY input_data, JSAMPARRAY * output_data_ptr));
77
78EXTERN(int) jsimd_can_h2v2_merged_upsample JPP((void));
79EXTERN(int) jsimd_can_h2v1_merged_upsample JPP((void));
80
81EXTERN(void) jsimd_h2v2_merged_upsample
82 JPP((j_decompress_ptr cinfo,
83 JSAMPIMAGE input_buf, JDIMENSION in_row_group_ctr,
84 JSAMPARRAY output_buf));
85EXTERN(void) jsimd_h2v1_merged_upsample
86 JPP((j_decompress_ptr cinfo,
87 JSAMPIMAGE input_buf, JDIMENSION in_row_group_ctr,
88 JSAMPARRAY output_buf));
89