laag-libjpeg-turbo 1.5.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (444) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +57 -0
  3. data/LICENSE.txt +139 -0
  4. data/README.org +34 -0
  5. data/ext/laag/libjpeg-turbo/extconf.rb +16 -0
  6. data/laag-libjpeg-turbo.gemspec +20 -0
  7. data/lib/laag/libjpeg-turbo.rb +29 -0
  8. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/.gitignore +14 -0
  9. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/.travis.yml +131 -0
  10. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/BUILDING.md +964 -0
  11. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/CMakeLists.txt +962 -0
  12. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/ChangeLog.md +1151 -0
  13. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/LICENSE.md +139 -0
  14. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/Makefile.am +794 -0
  15. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/README.ijg +279 -0
  16. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/README.md +341 -0
  17. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/acinclude.m4 +287 -0
  18. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/appveyor.yml +57 -0
  19. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/bmp.c +341 -0
  20. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/bmp.h +42 -0
  21. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/cderror.h +136 -0
  22. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/cdjpeg.c +144 -0
  23. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/cdjpeg.h +153 -0
  24. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/change.log +315 -0
  25. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/ci/keys.enc +0 -0
  26. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/cjpeg.1 +351 -0
  27. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/cjpeg.c +644 -0
  28. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/cmakescripts/cmake_uninstall.cmake.in +24 -0
  29. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/cmakescripts/testclean.cmake +39 -0
  30. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/coderules.txt +78 -0
  31. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/configure.ac +616 -0
  32. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/djpeg.1 +293 -0
  33. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/djpeg.c +782 -0
  34. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/annotated.html +104 -0
  35. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/bc_s.png +0 -0
  36. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/bdwn.png +0 -0
  37. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/classes.html +106 -0
  38. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/closed.png +0 -0
  39. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/doxygen-extra.css +3 -0
  40. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/doxygen.css +1184 -0
  41. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/doxygen.png +0 -0
  42. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/dynsections.js +97 -0
  43. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/ftv2blank.png +0 -0
  44. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/ftv2cl.png +0 -0
  45. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/ftv2doc.png +0 -0
  46. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/ftv2folderclosed.png +0 -0
  47. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/ftv2folderopen.png +0 -0
  48. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/ftv2lastnode.png +0 -0
  49. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/ftv2link.png +0 -0
  50. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/ftv2mlastnode.png +0 -0
  51. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/ftv2mnode.png +0 -0
  52. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/ftv2mo.png +0 -0
  53. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/ftv2node.png +0 -0
  54. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/ftv2ns.png +0 -0
  55. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/ftv2plastnode.png +0 -0
  56. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/ftv2pnode.png +0 -0
  57. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/ftv2splitbar.png +0 -0
  58. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/ftv2vertline.png +0 -0
  59. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/functions.html +134 -0
  60. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/functions_vars.html +134 -0
  61. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/group___turbo_j_p_e_g.html +2446 -0
  62. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/index.html +90 -0
  63. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/jquery.js +8 -0
  64. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/modules.html +95 -0
  65. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/nav_f.png +0 -0
  66. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/nav_g.png +0 -0
  67. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/nav_h.png +0 -0
  68. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/open.png +0 -0
  69. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/all_63.html +26 -0
  70. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/all_63.js +4 -0
  71. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/all_64.html +26 -0
  72. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/all_64.js +5 -0
  73. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/all_68.html +26 -0
  74. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/all_68.js +4 -0
  75. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/all_6e.html +26 -0
  76. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/all_6e.js +4 -0
  77. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/all_6f.html +26 -0
  78. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/all_6f.js +5 -0
  79. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/all_72.html +26 -0
  80. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/all_72.js +4 -0
  81. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/all_74.html +26 -0
  82. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/all_74.js +89 -0
  83. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/all_77.html +26 -0
  84. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/all_77.js +4 -0
  85. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/all_78.html +26 -0
  86. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/all_78.js +4 -0
  87. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/all_79.html +26 -0
  88. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/all_79.js +4 -0
  89. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/classes_74.html +26 -0
  90. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/classes_74.js +6 -0
  91. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/close.png +0 -0
  92. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/enums_74.html +26 -0
  93. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/enums_74.js +7 -0
  94. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/enumvalues_74.html +26 -0
  95. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/enumvalues_74.js +34 -0
  96. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/functions_74.html +26 -0
  97. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/functions_74.js +28 -0
  98. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/groups_74.html +26 -0
  99. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/groups_74.js +4 -0
  100. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/mag_sel.png +0 -0
  101. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/nomatches.html +12 -0
  102. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/search.css +271 -0
  103. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/search.js +809 -0
  104. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/search_l.png +0 -0
  105. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/search_m.png +0 -0
  106. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/search_r.png +0 -0
  107. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/typedefs_74.html +26 -0
  108. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/typedefs_74.js +5 -0
  109. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/variables_63.html +26 -0
  110. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/variables_63.js +4 -0
  111. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/variables_64.html +26 -0
  112. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/variables_64.js +5 -0
  113. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/variables_68.html +26 -0
  114. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/variables_68.js +4 -0
  115. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/variables_6e.html +26 -0
  116. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/variables_6e.js +4 -0
  117. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/variables_6f.html +26 -0
  118. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/variables_6f.js +5 -0
  119. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/variables_72.html +26 -0
  120. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/variables_72.js +4 -0
  121. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/variables_74.html +26 -0
  122. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/variables_74.js +9 -0
  123. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/variables_77.html +26 -0
  124. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/variables_77.js +4 -0
  125. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/variables_78.html +26 -0
  126. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/variables_78.js +4 -0
  127. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/variables_79.html +26 -0
  128. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/search/variables_79.js +4 -0
  129. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/structtjregion.html +186 -0
  130. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/structtjscalingfactor.html +148 -0
  131. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/structtjtransform.html +212 -0
  132. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/sync_off.png +0 -0
  133. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/sync_on.png +0 -0
  134. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/tab_a.png +0 -0
  135. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/tab_b.png +0 -0
  136. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/tab_h.png +0 -0
  137. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/tab_s.png +0 -0
  138. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doc/html/tabs.css +60 -0
  139. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doxygen-extra.css +3 -0
  140. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/doxygen.config +16 -0
  141. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/example.c +433 -0
  142. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jaricom.c +156 -0
  143. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/CMakeLists.txt +57 -0
  144. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/MANIFEST.MF +2 -0
  145. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/Makefile.am +75 -0
  146. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/README +52 -0
  147. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/TJBench.java +926 -0
  148. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/TJExample.java +362 -0
  149. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/TJUnitTest.java +959 -0
  150. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/doc/allclasses-frame.html +24 -0
  151. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/doc/allclasses-noframe.html +24 -0
  152. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/doc/constant-values.html +479 -0
  153. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/doc/deprecated-list.html +248 -0
  154. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/doc/help-doc.html +206 -0
  155. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/doc/index-all.html +980 -0
  156. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/doc/index.html +70 -0
  157. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/doc/org/libjpegturbo/turbojpeg/TJ.html +1254 -0
  158. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/doc/org/libjpegturbo/turbojpeg/TJCompressor.html +922 -0
  159. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/doc/org/libjpegturbo/turbojpeg/TJCustomFilter.html +237 -0
  160. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/doc/org/libjpegturbo/turbojpeg/TJDecompressor.html +1235 -0
  161. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/doc/org/libjpegturbo/turbojpeg/TJException.html +287 -0
  162. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/doc/org/libjpegturbo/turbojpeg/TJScalingFactor.html +333 -0
  163. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/doc/org/libjpegturbo/turbojpeg/TJTransform.html +706 -0
  164. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/doc/org/libjpegturbo/turbojpeg/TJTransformer.html +417 -0
  165. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/doc/org/libjpegturbo/turbojpeg/YUVImage.html +761 -0
  166. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/doc/org/libjpegturbo/turbojpeg/package-frame.html +31 -0
  167. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/doc/org/libjpegturbo/turbojpeg/package-summary.html +198 -0
  168. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/doc/org/libjpegturbo/turbojpeg/package-tree.html +156 -0
  169. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/doc/overview-tree.html +160 -0
  170. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/doc/package-list +1 -0
  171. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/doc/resources/background.gif +0 -0
  172. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/doc/resources/tab.gif +0 -0
  173. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/doc/resources/titlebar.gif +0 -0
  174. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/doc/resources/titlebar_end.gif +0 -0
  175. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/doc/serialized-form.html +159 -0
  176. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/doc/stylesheet.css +474 -0
  177. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/org/libjpegturbo/turbojpeg/TJ.java +513 -0
  178. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/org/libjpegturbo/turbojpeg/TJCompressor.java +658 -0
  179. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/org/libjpegturbo/turbojpeg/TJCustomFilter.java +76 -0
  180. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/org/libjpegturbo/turbojpeg/TJDecompressor.java +909 -0
  181. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/org/libjpegturbo/turbojpeg/TJException.java +53 -0
  182. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/org/libjpegturbo/turbojpeg/TJLoader.java.in +35 -0
  183. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/org/libjpegturbo/turbojpeg/TJLoader.java.tmpl +59 -0
  184. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/org/libjpegturbo/turbojpeg/TJScalingFactor.java +104 -0
  185. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/org/libjpegturbo/turbojpeg/TJTransform.java +208 -0
  186. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/org/libjpegturbo/turbojpeg/TJTransformer.java +163 -0
  187. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/org/libjpegturbo/turbojpeg/YUVImage.java +443 -0
  188. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/org_libjpegturbo_turbojpeg_TJ.h +129 -0
  189. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/org_libjpegturbo_turbojpeg_TJCompressor.h +101 -0
  190. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/org_libjpegturbo_turbojpeg_TJDecompressor.h +101 -0
  191. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/java/org_libjpegturbo_turbojpeg_TJTransformer.h +29 -0
  192. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jcapimin.c +295 -0
  193. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jcapistd.c +162 -0
  194. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jcarith.c +928 -0
  195. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jccoefct.c +449 -0
  196. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jccolext.c +148 -0
  197. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jccolor.c +719 -0
  198. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jcdctmgr.c +721 -0
  199. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jchuff.c +1091 -0
  200. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jchuff.h +43 -0
  201. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jcinit.c +77 -0
  202. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jcmainct.c +162 -0
  203. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jcmarker.c +665 -0
  204. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jcmaster.c +639 -0
  205. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jcomapi.c +109 -0
  206. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jconfig.h.in +73 -0
  207. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jconfig.txt +143 -0
  208. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jconfigint.h.in +17 -0
  209. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jcparam.c +542 -0
  210. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jcphuff.c +834 -0
  211. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jcprepct.c +357 -0
  212. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jcsample.c +539 -0
  213. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jcstest.c +126 -0
  214. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jctrans.c +402 -0
  215. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jdapimin.c +407 -0
  216. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jdapistd.c +637 -0
  217. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jdarith.c +769 -0
  218. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jdatadst-tj.c +202 -0
  219. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jdatadst.c +293 -0
  220. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jdatasrc-tj.c +191 -0
  221. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jdatasrc.c +295 -0
  222. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jdcoefct.c +693 -0
  223. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jdcoefct.h +82 -0
  224. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jdcol565.c +384 -0
  225. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jdcolext.c +143 -0
  226. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jdcolor.c +897 -0
  227. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jdct.h +208 -0
  228. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jddctmgr.c +352 -0
  229. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jdhuff.c +822 -0
  230. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jdhuff.h +234 -0
  231. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jdinput.c +405 -0
  232. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jdmainct.c +456 -0
  233. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jdmainct.h +71 -0
  234. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jdmarker.c +1377 -0
  235. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jdmaster.c +736 -0
  236. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jdmaster.h +28 -0
  237. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jdmerge.c +627 -0
  238. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jdmrg565.c +356 -0
  239. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jdmrgext.c +186 -0
  240. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jdphuff.c +674 -0
  241. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jdpostct.c +290 -0
  242. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jdsample.c +517 -0
  243. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jdsample.h +50 -0
  244. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jdtrans.c +155 -0
  245. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jerror.c +251 -0
  246. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jerror.h +317 -0
  247. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jfdctflt.c +169 -0
  248. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jfdctfst.c +227 -0
  249. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jfdctint.c +286 -0
  250. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jidctflt.c +240 -0
  251. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jidctfst.c +371 -0
  252. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jidctint.c +2627 -0
  253. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jidctred.c +403 -0
  254. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jinclude.h +84 -0
  255. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jmemmgr.c +1183 -0
  256. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jmemnobs.c +115 -0
  257. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jmemsys.h +178 -0
  258. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jmorecfg.h +421 -0
  259. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jpeg_nbits_table.h +4098 -0
  260. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jpegcomp.h +31 -0
  261. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jpegint.h +368 -0
  262. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jpeglib.h +1122 -0
  263. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jpegtran.1 +290 -0
  264. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jpegtran.c +551 -0
  265. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jquant1.c +857 -0
  266. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jquant2.c +1282 -0
  267. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jsimd.h +93 -0
  268. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jsimd_none.c +404 -0
  269. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jsimddct.h +74 -0
  270. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jstdhuff.c +135 -0
  271. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jutils.c +133 -0
  272. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/jversion.h +49 -0
  273. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/libjpeg.map.in +11 -0
  274. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/libjpeg.txt +3104 -0
  275. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/md5/CMakeLists.txt +1 -0
  276. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/md5/Makefile.am +4 -0
  277. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/md5/md5.c +340 -0
  278. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/md5/md5.h +49 -0
  279. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/md5/md5cmp.c +60 -0
  280. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/md5/md5hl.c +114 -0
  281. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/rdbmp.c +483 -0
  282. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/rdcolmap.c +254 -0
  283. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/rdgif.c +39 -0
  284. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/rdjpgcom.1 +63 -0
  285. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/rdjpgcom.c +510 -0
  286. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/rdppm.c +471 -0
  287. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/rdrle.c +389 -0
  288. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/rdswitch.c +424 -0
  289. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/rdtarga.c +503 -0
  290. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/release/Distribution.xml +24 -0
  291. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/release/License.rtf +20 -0
  292. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/release/ReadMe.txt +5 -0
  293. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/release/Welcome.rtf +17 -0
  294. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/release/deb-control.tmpl +31 -0
  295. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/release/libjpeg-turbo.nsi.in +162 -0
  296. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/release/libjpeg-turbo.spec.in +164 -0
  297. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/release/libjpeg.pc.in +10 -0
  298. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/release/libturbojpeg.pc.in +10 -0
  299. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/release/makecygwinpkg.in +42 -0
  300. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/release/makedpkg.in +82 -0
  301. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/release/makemacpkg.in +470 -0
  302. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/release/uninstall.in +112 -0
  303. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/sharedlib/CMakeLists.txt +73 -0
  304. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/CMakeLists.txt +81 -0
  305. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/Makefile.am +102 -0
  306. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jccolext-altivec.c +267 -0
  307. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jccolext-mmx.asm +476 -0
  308. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jccolext-sse2-64.asm +486 -0
  309. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jccolext-sse2.asm +503 -0
  310. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jccolor-altivec.c +104 -0
  311. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jccolor-mmx.asm +122 -0
  312. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jccolor-sse2-64.asm +121 -0
  313. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jccolor-sse2.asm +121 -0
  314. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jcgray-altivec.c +99 -0
  315. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jcgray-mmx.asm +115 -0
  316. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jcgray-sse2-64.asm +114 -0
  317. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jcgray-sse2.asm +114 -0
  318. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jcgryext-altivec.c +227 -0
  319. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jcgryext-mmx.asm +356 -0
  320. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jcgryext-sse2-64.asm +365 -0
  321. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jcgryext-sse2.asm +384 -0
  322. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jchuff-sse2-64.asm +360 -0
  323. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jchuff-sse2.asm +426 -0
  324. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jcolsamp.inc +104 -0
  325. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jcsample-altivec.c +158 -0
  326. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jcsample-mmx.asm +323 -0
  327. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jcsample-sse2-64.asm +329 -0
  328. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jcsample-sse2.asm +350 -0
  329. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jcsample.h +28 -0
  330. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jdcolext-altivec.c +274 -0
  331. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jdcolext-mmx.asm +404 -0
  332. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jdcolext-sse2-64.asm +440 -0
  333. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jdcolext-sse2.asm +459 -0
  334. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jdcolor-altivec.c +96 -0
  335. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jdcolor-mmx.asm +119 -0
  336. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jdcolor-sse2-64.asm +119 -0
  337. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jdcolor-sse2.asm +119 -0
  338. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jdct.inc +27 -0
  339. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jdmerge-altivec.c +108 -0
  340. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jdmerge-mmx.asm +125 -0
  341. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jdmerge-sse2-64.asm +125 -0
  342. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jdmerge-sse2.asm +125 -0
  343. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jdmrgext-altivec.c +323 -0
  344. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jdmrgext-mmx.asm +463 -0
  345. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jdmrgext-sse2-64.asm +537 -0
  346. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jdmrgext-sse2.asm +518 -0
  347. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jdsample-altivec.c +392 -0
  348. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jdsample-mmx.asm +736 -0
  349. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jdsample-sse2-64.asm +670 -0
  350. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jdsample-sse2.asm +728 -0
  351. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jfdctflt-3dn.asm +319 -0
  352. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jfdctflt-sse-64.asm +357 -0
  353. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jfdctflt-sse.asm +369 -0
  354. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jfdctfst-altivec.c +156 -0
  355. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jfdctfst-mmx.asm +396 -0
  356. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jfdctfst-sse2-64.asm +391 -0
  357. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jfdctfst-sse2.asm +403 -0
  358. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jfdctint-altivec.c +262 -0
  359. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jfdctint-mmx.asm +621 -0
  360. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jfdctint-sse2-64.asm +621 -0
  361. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jfdctint-sse2.asm +633 -0
  362. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jidctflt-3dn.asm +451 -0
  363. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jidctflt-sse.asm +571 -0
  364. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jidctflt-sse2-64.asm +482 -0
  365. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jidctflt-sse2.asm +497 -0
  366. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jidctfst-altivec.c +257 -0
  367. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jidctfst-mmx.asm +499 -0
  368. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jidctfst-sse2-64.asm +491 -0
  369. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jidctfst-sse2.asm +501 -0
  370. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jidctint-altivec.c +359 -0
  371. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jidctint-mmx.asm +851 -0
  372. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jidctint-sse2-64.asm +847 -0
  373. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jidctint-sse2.asm +858 -0
  374. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jidctred-mmx.asm +705 -0
  375. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jidctred-sse2-64.asm +575 -0
  376. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jidctred-sse2.asm +593 -0
  377. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jpeg_nbits_table.inc +4097 -0
  378. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jquant-3dn.asm +232 -0
  379. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jquant-mmx.asm +273 -0
  380. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jquant-sse.asm +210 -0
  381. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jquantf-sse2-64.asm +157 -0
  382. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jquantf-sse2.asm +170 -0
  383. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jquanti-altivec.c +252 -0
  384. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jquanti-sse2-64.asm +186 -0
  385. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jquanti-sse2.asm +199 -0
  386. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jsimd.h +871 -0
  387. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jsimd_altivec.h +99 -0
  388. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jsimd_arm.c +728 -0
  389. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jsimd_arm64.c +803 -0
  390. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jsimd_arm64_neon.S +3425 -0
  391. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jsimd_arm_neon.S +2878 -0
  392. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jsimd_i386.c +1091 -0
  393. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jsimd_mips.c +1140 -0
  394. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jsimd_mips_dspr2.S +4486 -0
  395. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jsimd_mips_dspr2_asm.h +283 -0
  396. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jsimd_powerpc.c +852 -0
  397. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jsimd_x86_64.c +887 -0
  398. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jsimdcfg.inc.h +130 -0
  399. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jsimdcpu.asm +104 -0
  400. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/jsimdext.inc +375 -0
  401. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/simd/nasm_lt.sh +60 -0
  402. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/structure.txt +904 -0
  403. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/testimages/nightshot_iso_100.bmp +0 -0
  404. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/testimages/nightshot_iso_100.txt +25 -0
  405. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/testimages/testimgari.jpg +0 -0
  406. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/testimages/testimgint.jpg +0 -0
  407. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/testimages/testorig.jpg +0 -0
  408. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/testimages/testorig.ppm +4 -0
  409. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/testimages/testorig12.jpg +0 -0
  410. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/testimages/vgl_5674_0098.bmp +0 -0
  411. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/testimages/vgl_6434_0018a.bmp +0 -0
  412. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/testimages/vgl_6548_0026a.bmp +0 -0
  413. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/tjbench.c +1010 -0
  414. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/tjbenchtest.in +252 -0
  415. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/tjbenchtest.java.in +207 -0
  416. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/tjexampletest.in +150 -0
  417. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/tjunittest.c +734 -0
  418. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/tjutil.c +66 -0
  419. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/tjutil.h +47 -0
  420. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/transupp.c +1626 -0
  421. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/transupp.h +207 -0
  422. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/turbojpeg-jni.c +1166 -0
  423. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/turbojpeg-mapfile +56 -0
  424. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/turbojpeg-mapfile.jni +92 -0
  425. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/turbojpeg.c +2175 -0
  426. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/turbojpeg.h +1545 -0
  427. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/usage.txt +635 -0
  428. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/win/jconfig.h.in +51 -0
  429. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/win/jconfigint.h.in +13 -0
  430. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/win/jpeg62-memsrcdst.def +106 -0
  431. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/win/jpeg62.def +104 -0
  432. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/win/jpeg7-memsrcdst.def +108 -0
  433. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/win/jpeg7.def +106 -0
  434. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/win/jpeg8.def +109 -0
  435. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/win/jsimdcfg.inc +94 -0
  436. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/wizard.txt +211 -0
  437. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/wrbmp.c +494 -0
  438. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/wrgif.c +413 -0
  439. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/wrjpgcom.1 +103 -0
  440. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/wrjpgcom.c +592 -0
  441. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/wrppm.c +280 -0
  442. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/wrrle.c +308 -0
  443. data/vendor/github.com/libjpeg-turbo/libjpeg-turbo/wrtarga.c +261 -0
  444. metadata +509 -0
@@ -0,0 +1,803 @@
1
+ /*
2
+ * jsimd_arm64.c
3
+ *
4
+ * Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
5
+ * Copyright (C) 2011, Nokia Corporation and/or its subsidiary(-ies).
6
+ * Copyright (C) 2009-2011, 2013-2014, 2016, D. R. Commander.
7
+ * Copyright (C) 2015-2016, Matthieu Darbois.
8
+ *
9
+ * Based on the x86 SIMD extension for IJG JPEG library,
10
+ * Copyright (C) 1999-2006, MIYASAKA Masaru.
11
+ * For conditions of distribution and use, see copyright notice in jsimdext.inc
12
+ *
13
+ * This file contains the interface between the "normal" portions
14
+ * of the library and the SIMD implementations when running on a
15
+ * 64-bit ARM architecture.
16
+ */
17
+
18
+ #define JPEG_INTERNALS
19
+ #include "../jinclude.h"
20
+ #include "../jpeglib.h"
21
+ #include "../jsimd.h"
22
+ #include "../jdct.h"
23
+ #include "../jsimddct.h"
24
+ #include "jsimd.h"
25
+
26
+ #include <stdio.h>
27
+ #include <string.h>
28
+ #include <ctype.h>
29
+
30
+ #define JSIMD_FASTLD3 1
31
+ #define JSIMD_FASTST3 2
32
+ #define JSIMD_FASTTBL 4
33
+
34
+ static unsigned int simd_support = ~0;
35
+ static unsigned int simd_huffman = 1;
36
+ static unsigned int simd_features = JSIMD_FASTLD3 | JSIMD_FASTST3 |
37
+ JSIMD_FASTTBL;
38
+
39
+ #if defined(__linux__) || defined(ANDROID) || defined(__ANDROID__)
40
+
41
+ #define SOMEWHAT_SANE_PROC_CPUINFO_SIZE_LIMIT (1024 * 1024)
42
+
43
+ LOCAL(int)
44
+ check_cpuinfo (char *buffer, const char *field, char *value)
45
+ {
46
+ char *p;
47
+ if (*value == 0)
48
+ return 0;
49
+ if (strncmp(buffer, field, strlen(field)) != 0)
50
+ return 0;
51
+ buffer += strlen(field);
52
+ while (isspace(*buffer))
53
+ buffer++;
54
+
55
+ /* Check if 'value' is present in the buffer as a separate word */
56
+ while ((p = strstr(buffer, value))) {
57
+ if (p > buffer && !isspace(*(p - 1))) {
58
+ buffer++;
59
+ continue;
60
+ }
61
+ p += strlen(value);
62
+ if (*p != 0 && !isspace(*p)) {
63
+ buffer++;
64
+ continue;
65
+ }
66
+ return 1;
67
+ }
68
+ return 0;
69
+ }
70
+
71
+ LOCAL(int)
72
+ parse_proc_cpuinfo (int bufsize)
73
+ {
74
+ char *buffer = (char *)malloc(bufsize);
75
+ FILE *fd;
76
+
77
+ if (!buffer)
78
+ return 0;
79
+
80
+ fd = fopen("/proc/cpuinfo", "r");
81
+ if (fd) {
82
+ while (fgets(buffer, bufsize, fd)) {
83
+ if (!strchr(buffer, '\n') && !feof(fd)) {
84
+ /* "impossible" happened - insufficient size of the buffer! */
85
+ fclose(fd);
86
+ free(buffer);
87
+ return 0;
88
+ }
89
+ if (check_cpuinfo(buffer, "CPU part", "0xd03") ||
90
+ check_cpuinfo(buffer, "CPU part", "0xd07"))
91
+ /* The Cortex-A53 has a slow tbl implementation. We can gain a few
92
+ percent speedup by disabling the use of that instruction. The
93
+ speedup on Cortex-A57 is more subtle but still measurable. */
94
+ simd_features &= ~JSIMD_FASTTBL;
95
+ else if (check_cpuinfo(buffer, "CPU part", "0x0a1"))
96
+ /* The SIMD version of Huffman encoding is slower than the C version on
97
+ Cavium ThunderX. Also, ld3 and st3 are abyssmally slow on that
98
+ CPU. */
99
+ simd_huffman = simd_features = 0;
100
+ }
101
+ fclose(fd);
102
+ }
103
+ free(buffer);
104
+ return 1;
105
+ }
106
+
107
+ #endif
108
+
109
+ /*
110
+ * Check what SIMD accelerations are supported.
111
+ *
112
+ * FIXME: This code is racy under a multi-threaded environment.
113
+ */
114
+
115
+ /*
116
+ * ARMv8 architectures support NEON extensions by default.
117
+ * It is no longer optional as it was with ARMv7.
118
+ */
119
+
120
+
121
+ LOCAL(void)
122
+ init_simd (void)
123
+ {
124
+ char *env = NULL;
125
+ #if defined(__linux__) || defined(ANDROID) || defined(__ANDROID__)
126
+ int bufsize = 1024; /* an initial guess for the line buffer size limit */
127
+ #endif
128
+
129
+ if (simd_support != ~0U)
130
+ return;
131
+
132
+ simd_support = 0;
133
+
134
+ simd_support |= JSIMD_ARM_NEON;
135
+ #if defined(__linux__) || defined(ANDROID) || defined(__ANDROID__)
136
+ while (!parse_proc_cpuinfo(bufsize)) {
137
+ bufsize *= 2;
138
+ if (bufsize > SOMEWHAT_SANE_PROC_CPUINFO_SIZE_LIMIT)
139
+ break;
140
+ }
141
+ #endif
142
+
143
+ /* Force different settings through environment variables */
144
+ env = getenv("JSIMD_FORCENEON");
145
+ if ((env != NULL) && (strcmp(env, "1") == 0))
146
+ simd_support = JSIMD_ARM_NEON;
147
+ env = getenv("JSIMD_FORCENONE");
148
+ if ((env != NULL) && (strcmp(env, "1") == 0))
149
+ simd_support = 0;
150
+ env = getenv("JSIMD_NOHUFFENC");
151
+ if ((env != NULL) && (strcmp(env, "1") == 0))
152
+ simd_huffman = 0;
153
+ env = getenv("JSIMD_FASTLD3");
154
+ if ((env != NULL) && (strcmp(env, "1") == 0))
155
+ simd_features |= JSIMD_FASTLD3;
156
+ if ((env != NULL) && (strcmp(env, "0") == 0))
157
+ simd_features &= ~JSIMD_FASTLD3;
158
+ env = getenv("JSIMD_FASTST3");
159
+ if ((env != NULL) && (strcmp(env, "1") == 0))
160
+ simd_features |= JSIMD_FASTST3;
161
+ if ((env != NULL) && (strcmp(env, "0") == 0))
162
+ simd_features &= ~JSIMD_FASTST3;
163
+ }
164
+
165
+ GLOBAL(int)
166
+ jsimd_can_rgb_ycc (void)
167
+ {
168
+ init_simd();
169
+
170
+ /* The code is optimised for these values only */
171
+ if (BITS_IN_JSAMPLE != 8)
172
+ return 0;
173
+ if (sizeof(JDIMENSION) != 4)
174
+ return 0;
175
+ if ((RGB_PIXELSIZE != 3) && (RGB_PIXELSIZE != 4))
176
+ return 0;
177
+
178
+ if (simd_support & JSIMD_ARM_NEON)
179
+ return 1;
180
+
181
+ return 0;
182
+ }
183
+
184
+ GLOBAL(int)
185
+ jsimd_can_rgb_gray (void)
186
+ {
187
+ init_simd();
188
+
189
+ return 0;
190
+ }
191
+
192
+ GLOBAL(int)
193
+ jsimd_can_ycc_rgb (void)
194
+ {
195
+ init_simd();
196
+
197
+ /* The code is optimised for these values only */
198
+ if (BITS_IN_JSAMPLE != 8)
199
+ return 0;
200
+ if (sizeof(JDIMENSION) != 4)
201
+ return 0;
202
+ if ((RGB_PIXELSIZE != 3) && (RGB_PIXELSIZE != 4))
203
+ return 0;
204
+
205
+ if (simd_support & JSIMD_ARM_NEON)
206
+ return 1;
207
+
208
+ return 0;
209
+ }
210
+
211
+ GLOBAL(int)
212
+ jsimd_can_ycc_rgb565 (void)
213
+ {
214
+ init_simd();
215
+
216
+ /* The code is optimised for these values only */
217
+ if (BITS_IN_JSAMPLE != 8)
218
+ return 0;
219
+ if (sizeof(JDIMENSION) != 4)
220
+ return 0;
221
+
222
+ if (simd_support & JSIMD_ARM_NEON)
223
+ return 1;
224
+
225
+ return 0;
226
+ }
227
+
228
+ GLOBAL(void)
229
+ jsimd_rgb_ycc_convert (j_compress_ptr cinfo,
230
+ JSAMPARRAY input_buf, JSAMPIMAGE output_buf,
231
+ JDIMENSION output_row, int num_rows)
232
+ {
233
+ void (*neonfct)(JDIMENSION, JSAMPARRAY, JSAMPIMAGE, JDIMENSION, int);
234
+
235
+ switch(cinfo->in_color_space) {
236
+ case JCS_EXT_RGB:
237
+ if (simd_features & JSIMD_FASTLD3)
238
+ neonfct=jsimd_extrgb_ycc_convert_neon;
239
+ else
240
+ neonfct=jsimd_extrgb_ycc_convert_neon_slowld3;
241
+ break;
242
+ case JCS_EXT_RGBX:
243
+ case JCS_EXT_RGBA:
244
+ neonfct=jsimd_extrgbx_ycc_convert_neon;
245
+ break;
246
+ case JCS_EXT_BGR:
247
+ if (simd_features & JSIMD_FASTLD3)
248
+ neonfct=jsimd_extbgr_ycc_convert_neon;
249
+ else
250
+ neonfct=jsimd_extbgr_ycc_convert_neon_slowld3;
251
+ break;
252
+ case JCS_EXT_BGRX:
253
+ case JCS_EXT_BGRA:
254
+ neonfct=jsimd_extbgrx_ycc_convert_neon;
255
+ break;
256
+ case JCS_EXT_XBGR:
257
+ case JCS_EXT_ABGR:
258
+ neonfct=jsimd_extxbgr_ycc_convert_neon;
259
+ break;
260
+ case JCS_EXT_XRGB:
261
+ case JCS_EXT_ARGB:
262
+ neonfct=jsimd_extxrgb_ycc_convert_neon;
263
+ break;
264
+ default:
265
+ if (simd_features & JSIMD_FASTLD3)
266
+ neonfct=jsimd_extrgb_ycc_convert_neon;
267
+ else
268
+ neonfct=jsimd_extrgb_ycc_convert_neon_slowld3;
269
+ break;
270
+ }
271
+
272
+ neonfct(cinfo->image_width, input_buf, output_buf, output_row, num_rows);
273
+ }
274
+
275
+ GLOBAL(void)
276
+ jsimd_rgb_gray_convert (j_compress_ptr cinfo,
277
+ JSAMPARRAY input_buf, JSAMPIMAGE output_buf,
278
+ JDIMENSION output_row, int num_rows)
279
+ {
280
+ }
281
+
282
+ GLOBAL(void)
283
+ jsimd_ycc_rgb_convert (j_decompress_ptr cinfo,
284
+ JSAMPIMAGE input_buf, JDIMENSION input_row,
285
+ JSAMPARRAY output_buf, int num_rows)
286
+ {
287
+ void (*neonfct)(JDIMENSION, JSAMPIMAGE, JDIMENSION, JSAMPARRAY, int);
288
+
289
+ switch(cinfo->out_color_space) {
290
+ case JCS_EXT_RGB:
291
+ if (simd_features & JSIMD_FASTST3)
292
+ neonfct=jsimd_ycc_extrgb_convert_neon;
293
+ else
294
+ neonfct=jsimd_ycc_extrgb_convert_neon_slowst3;
295
+ break;
296
+ case JCS_EXT_RGBX:
297
+ case JCS_EXT_RGBA:
298
+ neonfct=jsimd_ycc_extrgbx_convert_neon;
299
+ break;
300
+ case JCS_EXT_BGR:
301
+ if (simd_features & JSIMD_FASTST3)
302
+ neonfct=jsimd_ycc_extbgr_convert_neon;
303
+ else
304
+ neonfct=jsimd_ycc_extbgr_convert_neon_slowst3;
305
+ break;
306
+ case JCS_EXT_BGRX:
307
+ case JCS_EXT_BGRA:
308
+ neonfct=jsimd_ycc_extbgrx_convert_neon;
309
+ break;
310
+ case JCS_EXT_XBGR:
311
+ case JCS_EXT_ABGR:
312
+ neonfct=jsimd_ycc_extxbgr_convert_neon;
313
+ break;
314
+ case JCS_EXT_XRGB:
315
+ case JCS_EXT_ARGB:
316
+ neonfct=jsimd_ycc_extxrgb_convert_neon;
317
+ break;
318
+ default:
319
+ if (simd_features & JSIMD_FASTST3)
320
+ neonfct=jsimd_ycc_extrgb_convert_neon;
321
+ else
322
+ neonfct=jsimd_ycc_extrgb_convert_neon_slowst3;
323
+ break;
324
+ }
325
+
326
+ neonfct(cinfo->output_width, input_buf, input_row, output_buf, num_rows);
327
+ }
328
+
329
+ GLOBAL(void)
330
+ jsimd_ycc_rgb565_convert (j_decompress_ptr cinfo,
331
+ JSAMPIMAGE input_buf, JDIMENSION input_row,
332
+ JSAMPARRAY output_buf, int num_rows)
333
+ {
334
+ jsimd_ycc_rgb565_convert_neon(cinfo->output_width, input_buf, input_row,
335
+ output_buf, num_rows);
336
+ }
337
+
338
+ GLOBAL(int)
339
+ jsimd_can_h2v2_downsample (void)
340
+ {
341
+ init_simd();
342
+
343
+ /* The code is optimised for these values only */
344
+ if (BITS_IN_JSAMPLE != 8)
345
+ return 0;
346
+ if (DCTSIZE != 8)
347
+ return 0;
348
+ if (sizeof(JDIMENSION) != 4)
349
+ return 0;
350
+
351
+ if (simd_support & JSIMD_ARM_NEON)
352
+ return 1;
353
+
354
+ return 0;
355
+ }
356
+
357
+ GLOBAL(int)
358
+ jsimd_can_h2v1_downsample (void)
359
+ {
360
+ init_simd();
361
+
362
+ /* The code is optimised for these values only */
363
+ if (BITS_IN_JSAMPLE != 8)
364
+ return 0;
365
+ if (DCTSIZE != 8)
366
+ return 0;
367
+ if (sizeof(JDIMENSION) != 4)
368
+ return 0;
369
+
370
+ if (simd_support & JSIMD_ARM_NEON)
371
+ return 1;
372
+
373
+ return 0;
374
+ }
375
+
376
+ GLOBAL(void)
377
+ jsimd_h2v2_downsample (j_compress_ptr cinfo, jpeg_component_info *compptr,
378
+ JSAMPARRAY input_data, JSAMPARRAY output_data)
379
+ {
380
+ jsimd_h2v2_downsample_neon(cinfo->image_width, cinfo->max_v_samp_factor,
381
+ compptr->v_samp_factor, compptr->width_in_blocks,
382
+ input_data, output_data);
383
+ }
384
+
385
+ GLOBAL(void)
386
+ jsimd_h2v1_downsample (j_compress_ptr cinfo, jpeg_component_info *compptr,
387
+ JSAMPARRAY input_data, JSAMPARRAY output_data)
388
+ {
389
+ jsimd_h2v1_downsample_neon(cinfo->image_width, cinfo->max_v_samp_factor,
390
+ compptr->v_samp_factor, compptr->width_in_blocks,
391
+ input_data, output_data);
392
+ }
393
+
394
+ GLOBAL(int)
395
+ jsimd_can_h2v2_upsample (void)
396
+ {
397
+ init_simd();
398
+
399
+ return 0;
400
+ }
401
+
402
+ GLOBAL(int)
403
+ jsimd_can_h2v1_upsample (void)
404
+ {
405
+ init_simd();
406
+
407
+ return 0;
408
+ }
409
+
410
+ GLOBAL(void)
411
+ jsimd_h2v2_upsample (j_decompress_ptr cinfo,
412
+ jpeg_component_info *compptr,
413
+ JSAMPARRAY input_data,
414
+ JSAMPARRAY *output_data_ptr)
415
+ {
416
+ }
417
+
418
+ GLOBAL(void)
419
+ jsimd_h2v1_upsample (j_decompress_ptr cinfo,
420
+ jpeg_component_info *compptr,
421
+ JSAMPARRAY input_data,
422
+ JSAMPARRAY *output_data_ptr)
423
+ {
424
+ }
425
+
426
+ GLOBAL(int)
427
+ jsimd_can_h2v2_fancy_upsample (void)
428
+ {
429
+ init_simd();
430
+
431
+ return 0;
432
+ }
433
+
434
+ GLOBAL(int)
435
+ jsimd_can_h2v1_fancy_upsample (void)
436
+ {
437
+ init_simd();
438
+
439
+ return 0;
440
+ }
441
+
442
+ GLOBAL(void)
443
+ jsimd_h2v2_fancy_upsample (j_decompress_ptr cinfo,
444
+ jpeg_component_info *compptr,
445
+ JSAMPARRAY input_data,
446
+ JSAMPARRAY *output_data_ptr)
447
+ {
448
+ }
449
+
450
+ GLOBAL(void)
451
+ jsimd_h2v1_fancy_upsample (j_decompress_ptr cinfo,
452
+ jpeg_component_info *compptr,
453
+ JSAMPARRAY input_data,
454
+ JSAMPARRAY *output_data_ptr)
455
+ {
456
+ }
457
+
458
+ GLOBAL(int)
459
+ jsimd_can_h2v2_merged_upsample (void)
460
+ {
461
+ init_simd();
462
+
463
+ return 0;
464
+ }
465
+
466
+ GLOBAL(int)
467
+ jsimd_can_h2v1_merged_upsample (void)
468
+ {
469
+ init_simd();
470
+
471
+ return 0;
472
+ }
473
+
474
+ GLOBAL(void)
475
+ jsimd_h2v2_merged_upsample (j_decompress_ptr cinfo,
476
+ JSAMPIMAGE input_buf,
477
+ JDIMENSION in_row_group_ctr,
478
+ JSAMPARRAY output_buf)
479
+ {
480
+ }
481
+
482
+ GLOBAL(void)
483
+ jsimd_h2v1_merged_upsample (j_decompress_ptr cinfo,
484
+ JSAMPIMAGE input_buf,
485
+ JDIMENSION in_row_group_ctr,
486
+ JSAMPARRAY output_buf)
487
+ {
488
+ }
489
+
490
+ GLOBAL(int)
491
+ jsimd_can_convsamp (void)
492
+ {
493
+ init_simd();
494
+
495
+ /* The code is optimised for these values only */
496
+ if (DCTSIZE != 8)
497
+ return 0;
498
+ if (BITS_IN_JSAMPLE != 8)
499
+ return 0;
500
+ if (sizeof(JDIMENSION) != 4)
501
+ return 0;
502
+ if (sizeof(DCTELEM) != 2)
503
+ return 0;
504
+
505
+ if (simd_support & JSIMD_ARM_NEON)
506
+ return 1;
507
+
508
+ return 0;
509
+ }
510
+
511
+ GLOBAL(int)
512
+ jsimd_can_convsamp_float (void)
513
+ {
514
+ init_simd();
515
+
516
+ return 0;
517
+ }
518
+
519
+ GLOBAL(void)
520
+ jsimd_convsamp (JSAMPARRAY sample_data, JDIMENSION start_col,
521
+ DCTELEM *workspace)
522
+ {
523
+ jsimd_convsamp_neon(sample_data, start_col, workspace);
524
+ }
525
+
526
+ GLOBAL(void)
527
+ jsimd_convsamp_float (JSAMPARRAY sample_data, JDIMENSION start_col,
528
+ FAST_FLOAT *workspace)
529
+ {
530
+ }
531
+
532
+ GLOBAL(int)
533
+ jsimd_can_fdct_islow (void)
534
+ {
535
+ init_simd();
536
+
537
+ /* The code is optimised for these values only */
538
+ if (DCTSIZE != 8)
539
+ return 0;
540
+ if (sizeof(DCTELEM) != 2)
541
+ return 0;
542
+
543
+ if (simd_support & JSIMD_ARM_NEON)
544
+ return 1;
545
+
546
+ return 0;
547
+ }
548
+
549
+ GLOBAL(int)
550
+ jsimd_can_fdct_ifast (void)
551
+ {
552
+ init_simd();
553
+
554
+ /* The code is optimised for these values only */
555
+ if (DCTSIZE != 8)
556
+ return 0;
557
+ if (sizeof(DCTELEM) != 2)
558
+ return 0;
559
+
560
+ if (simd_support & JSIMD_ARM_NEON)
561
+ return 1;
562
+
563
+ return 0;
564
+ }
565
+
566
+ GLOBAL(int)
567
+ jsimd_can_fdct_float (void)
568
+ {
569
+ init_simd();
570
+
571
+ return 0;
572
+ }
573
+
574
+ GLOBAL(void)
575
+ jsimd_fdct_islow (DCTELEM *data)
576
+ {
577
+ jsimd_fdct_islow_neon(data);
578
+ }
579
+
580
+ GLOBAL(void)
581
+ jsimd_fdct_ifast (DCTELEM *data)
582
+ {
583
+ jsimd_fdct_ifast_neon(data);
584
+ }
585
+
586
+ GLOBAL(void)
587
+ jsimd_fdct_float (FAST_FLOAT *data)
588
+ {
589
+ }
590
+
591
+ GLOBAL(int)
592
+ jsimd_can_quantize (void)
593
+ {
594
+ init_simd();
595
+
596
+ /* The code is optimised for these values only */
597
+ if (DCTSIZE != 8)
598
+ return 0;
599
+ if (sizeof(JCOEF) != 2)
600
+ return 0;
601
+ if (sizeof(DCTELEM) != 2)
602
+ return 0;
603
+
604
+ if (simd_support & JSIMD_ARM_NEON)
605
+ return 1;
606
+
607
+ return 0;
608
+ }
609
+
610
+ GLOBAL(int)
611
+ jsimd_can_quantize_float (void)
612
+ {
613
+ init_simd();
614
+
615
+ return 0;
616
+ }
617
+
618
+ GLOBAL(void)
619
+ jsimd_quantize (JCOEFPTR coef_block, DCTELEM *divisors,
620
+ DCTELEM *workspace)
621
+ {
622
+ jsimd_quantize_neon(coef_block, divisors, workspace);
623
+ }
624
+
625
+ GLOBAL(void)
626
+ jsimd_quantize_float (JCOEFPTR coef_block, FAST_FLOAT *divisors,
627
+ FAST_FLOAT *workspace)
628
+ {
629
+ }
630
+
631
+ GLOBAL(int)
632
+ jsimd_can_idct_2x2 (void)
633
+ {
634
+ init_simd();
635
+
636
+ /* The code is optimised for these values only */
637
+ if (DCTSIZE != 8)
638
+ return 0;
639
+ if (sizeof(JCOEF) != 2)
640
+ return 0;
641
+ if (BITS_IN_JSAMPLE != 8)
642
+ return 0;
643
+ if (sizeof(JDIMENSION) != 4)
644
+ return 0;
645
+ if (sizeof(ISLOW_MULT_TYPE) != 2)
646
+ return 0;
647
+
648
+ if (simd_support & JSIMD_ARM_NEON)
649
+ return 1;
650
+
651
+ return 0;
652
+ }
653
+
654
+ GLOBAL(int)
655
+ jsimd_can_idct_4x4 (void)
656
+ {
657
+ init_simd();
658
+
659
+ /* The code is optimised for these values only */
660
+ if (DCTSIZE != 8)
661
+ return 0;
662
+ if (sizeof(JCOEF) != 2)
663
+ return 0;
664
+ if (BITS_IN_JSAMPLE != 8)
665
+ return 0;
666
+ if (sizeof(JDIMENSION) != 4)
667
+ return 0;
668
+ if (sizeof(ISLOW_MULT_TYPE) != 2)
669
+ return 0;
670
+
671
+ if (simd_support & JSIMD_ARM_NEON)
672
+ return 1;
673
+
674
+ return 0;
675
+ }
676
+
677
+ GLOBAL(void)
678
+ jsimd_idct_2x2 (j_decompress_ptr cinfo, jpeg_component_info *compptr,
679
+ JCOEFPTR coef_block, JSAMPARRAY output_buf,
680
+ JDIMENSION output_col)
681
+ {
682
+ jsimd_idct_2x2_neon(compptr->dct_table, coef_block, output_buf,
683
+ output_col);
684
+ }
685
+
686
+ GLOBAL(void)
687
+ jsimd_idct_4x4 (j_decompress_ptr cinfo, jpeg_component_info *compptr,
688
+ JCOEFPTR coef_block, JSAMPARRAY output_buf,
689
+ JDIMENSION output_col)
690
+ {
691
+ jsimd_idct_4x4_neon(compptr->dct_table, coef_block, output_buf,
692
+ output_col);
693
+ }
694
+
695
+ GLOBAL(int)
696
+ jsimd_can_idct_islow (void)
697
+ {
698
+ init_simd();
699
+
700
+ /* The code is optimised for these values only */
701
+ if (DCTSIZE != 8)
702
+ return 0;
703
+ if (sizeof(JCOEF) != 2)
704
+ return 0;
705
+ if (BITS_IN_JSAMPLE != 8)
706
+ return 0;
707
+ if (sizeof(JDIMENSION) != 4)
708
+ return 0;
709
+ if (sizeof(ISLOW_MULT_TYPE) != 2)
710
+ return 0;
711
+
712
+ if (simd_support & JSIMD_ARM_NEON)
713
+ return 1;
714
+
715
+ return 0;
716
+ }
717
+
718
+ GLOBAL(int)
719
+ jsimd_can_idct_ifast (void)
720
+ {
721
+ init_simd();
722
+
723
+ /* The code is optimised for these values only */
724
+ if (DCTSIZE != 8)
725
+ return 0;
726
+ if (sizeof(JCOEF) != 2)
727
+ return 0;
728
+ if (BITS_IN_JSAMPLE != 8)
729
+ return 0;
730
+ if (sizeof(JDIMENSION) != 4)
731
+ return 0;
732
+ if (sizeof(IFAST_MULT_TYPE) != 2)
733
+ return 0;
734
+ if (IFAST_SCALE_BITS != 2)
735
+ return 0;
736
+
737
+ if (simd_support & JSIMD_ARM_NEON)
738
+ return 1;
739
+
740
+ return 0;
741
+ }
742
+
743
+ GLOBAL(int)
744
+ jsimd_can_idct_float (void)
745
+ {
746
+ init_simd();
747
+
748
+ return 0;
749
+ }
750
+
751
+ GLOBAL(void)
752
+ jsimd_idct_islow (j_decompress_ptr cinfo, jpeg_component_info *compptr,
753
+ JCOEFPTR coef_block, JSAMPARRAY output_buf,
754
+ JDIMENSION output_col)
755
+ {
756
+ jsimd_idct_islow_neon(compptr->dct_table, coef_block, output_buf,
757
+ output_col);
758
+ }
759
+
760
+ GLOBAL(void)
761
+ jsimd_idct_ifast (j_decompress_ptr cinfo, jpeg_component_info *compptr,
762
+ JCOEFPTR coef_block, JSAMPARRAY output_buf,
763
+ JDIMENSION output_col)
764
+ {
765
+ jsimd_idct_ifast_neon(compptr->dct_table, coef_block, output_buf,
766
+ output_col);
767
+ }
768
+
769
+ GLOBAL(void)
770
+ jsimd_idct_float (j_decompress_ptr cinfo, jpeg_component_info *compptr,
771
+ JCOEFPTR coef_block, JSAMPARRAY output_buf,
772
+ JDIMENSION output_col)
773
+ {
774
+ }
775
+
776
+ GLOBAL(int)
777
+ jsimd_can_huff_encode_one_block (void)
778
+ {
779
+ init_simd();
780
+
781
+ if (DCTSIZE != 8)
782
+ return 0;
783
+ if (sizeof(JCOEF) != 2)
784
+ return 0;
785
+
786
+ if (simd_support & JSIMD_ARM_NEON && simd_huffman)
787
+ return 1;
788
+
789
+ return 0;
790
+ }
791
+
792
+ GLOBAL(JOCTET*)
793
+ jsimd_huff_encode_one_block (void *state, JOCTET *buffer, JCOEFPTR block,
794
+ int last_dc_val, c_derived_tbl *dctbl,
795
+ c_derived_tbl *actbl)
796
+ {
797
+ if (simd_features & JSIMD_FASTTBL)
798
+ return jsimd_huff_encode_one_block_neon(state, buffer, block, last_dc_val,
799
+ dctbl, actbl);
800
+ else
801
+ return jsimd_huff_encode_one_block_neon_slowtbl(state, buffer, block,
802
+ last_dc_val, dctbl, actbl);
803
+ }