jsimdcfg.inc 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. ;
  2. ; Automatically generated include file from jsimdcfg.inc.h
  3. ;
  4. ;
  5. ; -- jpeglib.h
  6. ;
  7. %define DCTSIZE 8
  8. %define DCTSIZE2 64
  9. ;
  10. ; -- jmorecfg.h
  11. ;
  12. %define RGB_RED 0
  13. %define RGB_GREEN 1
  14. %define RGB_BLUE 2
  15. %define RGB_PIXELSIZE 3
  16. %define EXT_RGB_RED 0
  17. %define EXT_RGB_GREEN 1
  18. %define EXT_RGB_BLUE 2
  19. %define EXT_RGB_PIXELSIZE 3
  20. %define EXT_RGBX_RED 0
  21. %define EXT_RGBX_GREEN 1
  22. %define EXT_RGBX_BLUE 2
  23. %define EXT_RGBX_PIXELSIZE 4
  24. %define EXT_BGR_RED 2
  25. %define EXT_BGR_GREEN 1
  26. %define EXT_BGR_BLUE 0
  27. %define EXT_BGR_PIXELSIZE 3
  28. %define EXT_BGRX_RED 2
  29. %define EXT_BGRX_GREEN 1
  30. %define EXT_BGRX_BLUE 0
  31. %define EXT_BGRX_PIXELSIZE 4
  32. %define EXT_XBGR_RED 3
  33. %define EXT_XBGR_GREEN 2
  34. %define EXT_XBGR_BLUE 1
  35. %define EXT_XBGR_PIXELSIZE 4
  36. %define EXT_XRGB_RED 1
  37. %define EXT_XRGB_GREEN 2
  38. %define EXT_XRGB_BLUE 3
  39. %define EXT_XRGB_PIXELSIZE 4
  40. %define RGBX_FILLER_0XFF 1
  41. ; Representation of a single sample (pixel element value).
  42. ; On this SIMD implementation, this must be 'unsigned char'.
  43. ;
  44. %define JSAMPLE byte ; unsigned char
  45. %define SIZEOF_JSAMPLE SIZEOF_BYTE ; sizeof(JSAMPLE)
  46. %define CENTERJSAMPLE 128
  47. ; Representation of a DCT frequency coefficient.
  48. ; On this SIMD implementation, this must be 'short'.
  49. ;
  50. %define JCOEF word ; short
  51. %define SIZEOF_JCOEF SIZEOF_WORD ; sizeof(JCOEF)
  52. ; Datatype used for image dimensions.
  53. ; On this SIMD implementation, this must be 'unsigned int'.
  54. ;
  55. %define JDIMENSION dword ; unsigned int
  56. %define SIZEOF_JDIMENSION SIZEOF_DWORD ; sizeof(JDIMENSION)
  57. %define JSAMPROW POINTER ; JSAMPLE * (jpeglib.h)
  58. %define JSAMPARRAY POINTER ; JSAMPROW * (jpeglib.h)
  59. %define JSAMPIMAGE POINTER ; JSAMPARRAY * (jpeglib.h)
  60. %define JCOEFPTR POINTER ; JCOEF * (jpeglib.h)
  61. %define SIZEOF_JSAMPROW SIZEOF_POINTER ; sizeof(JSAMPROW)
  62. %define SIZEOF_JSAMPARRAY SIZEOF_POINTER ; sizeof(JSAMPARRAY)
  63. %define SIZEOF_JSAMPIMAGE SIZEOF_POINTER ; sizeof(JSAMPIMAGE)
  64. %define SIZEOF_JCOEFPTR SIZEOF_POINTER ; sizeof(JCOEFPTR)
  65. ;
  66. ; -- jdct.h
  67. ;
  68. ; A forward DCT routine is given a pointer to a work area of type DCTELEM[];
  69. ; the DCT is to be performed in-place in that buffer.
  70. ; To maximize parallelism, Type DCTELEM is changed to short (originally, int).
  71. ;
  72. %define DCTELEM word ; short
  73. %define SIZEOF_DCTELEM SIZEOF_WORD ; sizeof(DCTELEM)
  74. %define float FP32 ; float
  75. %define SIZEOF_FAST_FLOAT SIZEOF_FP32 ; sizeof(float)
  76. ; To maximize parallelism, Type short is changed to short.
  77. ;
  78. %define ISLOW_MULT_TYPE word ; must be short
  79. %define SIZEOF_ISLOW_MULT_TYPE SIZEOF_WORD ; sizeof(ISLOW_MULT_TYPE)
  80. %define IFAST_MULT_TYPE word ; must be short
  81. %define SIZEOF_IFAST_MULT_TYPE SIZEOF_WORD ; sizeof(IFAST_MULT_TYPE)
  82. %define IFAST_SCALE_BITS 2 ; fractional bits in scale factors
  83. %define FLOAT_MULT_TYPE FP32 ; must be float
  84. %define SIZEOF_FLOAT_MULT_TYPE SIZEOF_FP32 ; sizeof(FLOAT_MULT_TYPE)
  85. ;
  86. ; -- jsimd.h
  87. ;
  88. %define JSIMD_NONE 0x00
  89. %define JSIMD_MMX 0x01
  90. %define JSIMD_3DNOW 0x02
  91. %define JSIMD_SSE 0x04
  92. %define JSIMD_SSE2 0x08
  93. %define JSIMD_AVX2 0x80