jsimd.h 4.0 KB

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