image_pack 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/CHANGELOG.md +18 -0
- data/LICENSE.txt +21 -0
- data/README.md +140 -0
- data/THIRD_PARTY_NOTICES.md +8 -0
- data/ext/image_pack/extconf.rb +515 -0
- data/ext/image_pack/image_pack.c +1618 -0
- data/ext/image_pack/vendor/.vendored +1 -0
- data/ext/image_pack/vendor/mozjpeg/BUILDING.txt +902 -0
- data/ext/image_pack/vendor/mozjpeg/CMakeLists.txt +1593 -0
- data/ext/image_pack/vendor/mozjpeg/LICENSE.md +132 -0
- data/ext/image_pack/vendor/mozjpeg/README-mozilla.txt +194 -0
- data/ext/image_pack/vendor/mozjpeg/README-turbo.txt +346 -0
- data/ext/image_pack/vendor/mozjpeg/README.ijg +258 -0
- data/ext/image_pack/vendor/mozjpeg/README.md +29 -0
- data/ext/image_pack/vendor/mozjpeg/cderror.h +128 -0
- data/ext/image_pack/vendor/mozjpeg/cdjpeg.c +156 -0
- data/ext/image_pack/vendor/mozjpeg/cdjpeg.h +171 -0
- data/ext/image_pack/vendor/mozjpeg/cjpeg.c +961 -0
- data/ext/image_pack/vendor/mozjpeg/cmyk.h +60 -0
- data/ext/image_pack/vendor/mozjpeg/coderules.txt +78 -0
- data/ext/image_pack/vendor/mozjpeg/croptest.in +95 -0
- data/ext/image_pack/vendor/mozjpeg/djpeg.c +855 -0
- data/ext/image_pack/vendor/mozjpeg/example.txt +464 -0
- data/ext/image_pack/vendor/mozjpeg/jaricom.c +157 -0
- data/ext/image_pack/vendor/mozjpeg/jcapimin.c +307 -0
- data/ext/image_pack/vendor/mozjpeg/jcapistd.c +168 -0
- data/ext/image_pack/vendor/mozjpeg/jcarith.c +972 -0
- data/ext/image_pack/vendor/mozjpeg/jccoefct.c +609 -0
- data/ext/image_pack/vendor/mozjpeg/jccolext.c +144 -0
- data/ext/image_pack/vendor/mozjpeg/jccolor.c +721 -0
- data/ext/image_pack/vendor/mozjpeg/jcdctmgr.c +1776 -0
- data/ext/image_pack/vendor/mozjpeg/jcext.c +219 -0
- data/ext/image_pack/vendor/mozjpeg/jchuff.c +1146 -0
- data/ext/image_pack/vendor/mozjpeg/jchuff.h +57 -0
- data/ext/image_pack/vendor/mozjpeg/jcicc.c +105 -0
- data/ext/image_pack/vendor/mozjpeg/jcinit.c +82 -0
- data/ext/image_pack/vendor/mozjpeg/jcmainct.c +162 -0
- data/ext/image_pack/vendor/mozjpeg/jcmarker.c +844 -0
- data/ext/image_pack/vendor/mozjpeg/jcmaster.c +958 -0
- data/ext/image_pack/vendor/mozjpeg/jcmaster.h +56 -0
- data/ext/image_pack/vendor/mozjpeg/jcomapi.c +109 -0
- data/ext/image_pack/vendor/mozjpeg/jconfig.h.in +37 -0
- data/ext/image_pack/vendor/mozjpeg/jconfig.txt +93 -0
- data/ext/image_pack/vendor/mozjpeg/jconfigint.h.in +44 -0
- data/ext/image_pack/vendor/mozjpeg/jcparam.c +991 -0
- data/ext/image_pack/vendor/mozjpeg/jcphuff.c +1123 -0
- data/ext/image_pack/vendor/mozjpeg/jcprepct.c +351 -0
- data/ext/image_pack/vendor/mozjpeg/jcsample.c +522 -0
- data/ext/image_pack/vendor/mozjpeg/jcstest.c +126 -0
- data/ext/image_pack/vendor/mozjpeg/jctrans.c +408 -0
- data/ext/image_pack/vendor/mozjpeg/jdapimin.c +407 -0
- data/ext/image_pack/vendor/mozjpeg/jdapistd.c +691 -0
- data/ext/image_pack/vendor/mozjpeg/jdarith.c +782 -0
- data/ext/image_pack/vendor/mozjpeg/jdatadst-tj.c +198 -0
- data/ext/image_pack/vendor/mozjpeg/jdatadst.c +299 -0
- data/ext/image_pack/vendor/mozjpeg/jdatasrc-tj.c +194 -0
- data/ext/image_pack/vendor/mozjpeg/jdatasrc.c +295 -0
- data/ext/image_pack/vendor/mozjpeg/jdcoefct.c +881 -0
- data/ext/image_pack/vendor/mozjpeg/jdcoefct.h +83 -0
- data/ext/image_pack/vendor/mozjpeg/jdcol565.c +384 -0
- data/ext/image_pack/vendor/mozjpeg/jdcolext.c +141 -0
- data/ext/image_pack/vendor/mozjpeg/jdcolor.c +881 -0
- data/ext/image_pack/vendor/mozjpeg/jdct.h +208 -0
- data/ext/image_pack/vendor/mozjpeg/jddctmgr.c +367 -0
- data/ext/image_pack/vendor/mozjpeg/jdhuff.c +834 -0
- data/ext/image_pack/vendor/mozjpeg/jdhuff.h +247 -0
- data/ext/image_pack/vendor/mozjpeg/jdicc.c +167 -0
- data/ext/image_pack/vendor/mozjpeg/jdinput.c +408 -0
- data/ext/image_pack/vendor/mozjpeg/jdmainct.c +460 -0
- data/ext/image_pack/vendor/mozjpeg/jdmainct.h +71 -0
- data/ext/image_pack/vendor/mozjpeg/jdmarker.c +1374 -0
- data/ext/image_pack/vendor/mozjpeg/jdmaster.c +727 -0
- data/ext/image_pack/vendor/mozjpeg/jdmaster.h +33 -0
- data/ext/image_pack/vendor/mozjpeg/jdmerge.c +587 -0
- data/ext/image_pack/vendor/mozjpeg/jdmerge.h +47 -0
- data/ext/image_pack/vendor/mozjpeg/jdmrg565.c +354 -0
- data/ext/image_pack/vendor/mozjpeg/jdmrgext.c +184 -0
- data/ext/image_pack/vendor/mozjpeg/jdphuff.c +679 -0
- data/ext/image_pack/vendor/mozjpeg/jdpostct.c +294 -0
- data/ext/image_pack/vendor/mozjpeg/jdsample.c +524 -0
- data/ext/image_pack/vendor/mozjpeg/jdsample.h +50 -0
- data/ext/image_pack/vendor/mozjpeg/jdtrans.c +156 -0
- data/ext/image_pack/vendor/mozjpeg/jerror.c +251 -0
- data/ext/image_pack/vendor/mozjpeg/jerror.h +335 -0
- data/ext/image_pack/vendor/mozjpeg/jfdctflt.c +169 -0
- data/ext/image_pack/vendor/mozjpeg/jfdctfst.c +227 -0
- data/ext/image_pack/vendor/mozjpeg/jfdctint.c +288 -0
- data/ext/image_pack/vendor/mozjpeg/jidctflt.c +240 -0
- data/ext/image_pack/vendor/mozjpeg/jidctfst.c +371 -0
- data/ext/image_pack/vendor/mozjpeg/jidctint.c +2627 -0
- data/ext/image_pack/vendor/mozjpeg/jidctred.c +409 -0
- data/ext/image_pack/vendor/mozjpeg/jinclude.h +147 -0
- data/ext/image_pack/vendor/mozjpeg/jmemmgr.c +1180 -0
- data/ext/image_pack/vendor/mozjpeg/jmemnobs.c +110 -0
- data/ext/image_pack/vendor/mozjpeg/jmemsys.h +178 -0
- data/ext/image_pack/vendor/mozjpeg/jmorecfg.h +382 -0
- data/ext/image_pack/vendor/mozjpeg/jpeg_nbits_table.h +4098 -0
- data/ext/image_pack/vendor/mozjpeg/jpegcomp.h +32 -0
- data/ext/image_pack/vendor/mozjpeg/jpegint.h +453 -0
- data/ext/image_pack/vendor/mozjpeg/jpeglib.h +1211 -0
- data/ext/image_pack/vendor/mozjpeg/jpegtran.c +827 -0
- data/ext/image_pack/vendor/mozjpeg/jpegyuv.c +172 -0
- data/ext/image_pack/vendor/mozjpeg/jquant1.c +856 -0
- data/ext/image_pack/vendor/mozjpeg/jquant2.c +1286 -0
- data/ext/image_pack/vendor/mozjpeg/jsimd.h +123 -0
- data/ext/image_pack/vendor/mozjpeg/jsimd_none.c +431 -0
- data/ext/image_pack/vendor/mozjpeg/jsimddct.h +70 -0
- data/ext/image_pack/vendor/mozjpeg/jstdhuff.c +144 -0
- data/ext/image_pack/vendor/mozjpeg/jutils.c +133 -0
- data/ext/image_pack/vendor/mozjpeg/jversion.h.in +56 -0
- data/ext/image_pack/vendor/mozjpeg/libjpeg.map.in +11 -0
- data/ext/image_pack/vendor/mozjpeg/libjpeg.txt +3150 -0
- data/ext/image_pack/vendor/mozjpeg/rdbmp.c +690 -0
- data/ext/image_pack/vendor/mozjpeg/rdcolmap.c +253 -0
- data/ext/image_pack/vendor/mozjpeg/rdgif.c +720 -0
- data/ext/image_pack/vendor/mozjpeg/rdjpeg.c +160 -0
- data/ext/image_pack/vendor/mozjpeg/rdjpgcom.c +494 -0
- data/ext/image_pack/vendor/mozjpeg/rdpng.c +194 -0
- data/ext/image_pack/vendor/mozjpeg/rdppm.c +781 -0
- data/ext/image_pack/vendor/mozjpeg/rdswitch.c +642 -0
- data/ext/image_pack/vendor/mozjpeg/rdtarga.c +508 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/aarch32/jccolext-neon.c +148 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/aarch32/jchuff-neon.c +334 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/aarch32/jsimd.c +976 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/aarch32/jsimd_neon.S +1200 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/aarch64/jccolext-neon.c +316 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/aarch64/jchuff-neon.c +411 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/aarch64/jsimd.c +1053 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/aarch64/jsimd_neon.S +2254 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/align.h +28 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/jccolor-neon.c +160 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/jcgray-neon.c +120 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/jcgryext-neon.c +106 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/jchuff.h +131 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/jcphuff-neon.c +623 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/jcsample-neon.c +192 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/jdcolext-neon.c +374 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/jdcolor-neon.c +141 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/jdmerge-neon.c +144 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/jdmrgext-neon.c +723 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/jdsample-neon.c +569 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/jfdctfst-neon.c +214 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/jfdctint-neon.c +376 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/jidctfst-neon.c +472 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/jidctint-neon.c +801 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/jidctred-neon.c +486 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/jquanti-neon.c +193 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/neon-compat.h +26 -0
- data/ext/image_pack/vendor/mozjpeg/simd/arm/neon-compat.h.in +37 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jccolext-avx2.asm +578 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jccolext-mmx.asm +476 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jccolext-sse2.asm +503 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jccolor-avx2.asm +121 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jccolor-mmx.asm +121 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jccolor-sse2.asm +120 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jcgray-avx2.asm +113 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jcgray-mmx.asm +113 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jcgray-sse2.asm +112 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jcgryext-avx2.asm +457 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jcgryext-mmx.asm +355 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jcgryext-sse2.asm +382 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jchuff-sse2.asm +761 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jcphuff-sse2.asm +662 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jcsample-avx2.asm +388 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jcsample-mmx.asm +324 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jcsample-sse2.asm +351 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jdcolext-avx2.asm +515 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jdcolext-mmx.asm +404 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jdcolext-sse2.asm +458 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jdcolor-avx2.asm +118 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jdcolor-mmx.asm +117 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jdcolor-sse2.asm +117 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jdmerge-avx2.asm +136 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jdmerge-mmx.asm +123 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jdmerge-sse2.asm +135 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jdmrgext-avx2.asm +575 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jdmrgext-mmx.asm +460 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jdmrgext-sse2.asm +517 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jdsample-avx2.asm +760 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jdsample-mmx.asm +731 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jdsample-sse2.asm +724 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jfdctflt-3dn.asm +318 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jfdctflt-sse.asm +369 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jfdctfst-mmx.asm +395 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jfdctfst-sse2.asm +403 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jfdctint-avx2.asm +331 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jfdctint-mmx.asm +620 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jfdctint-sse2.asm +633 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jidctflt-3dn.asm +451 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jidctflt-sse.asm +571 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jidctflt-sse2.asm +497 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jidctfst-mmx.asm +499 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jidctfst-sse2.asm +501 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jidctint-avx2.asm +453 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jidctint-mmx.asm +851 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jidctint-sse2.asm +858 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jidctred-mmx.asm +704 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jidctred-sse2.asm +592 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jquant-3dn.asm +230 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jquant-mmx.asm +276 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jquant-sse.asm +208 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jquantf-sse2.asm +168 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jquanti-avx2.asm +188 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jquanti-sse2.asm +201 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jsimd.c +1312 -0
- data/ext/image_pack/vendor/mozjpeg/simd/i386/jsimdcpu.asm +135 -0
- data/ext/image_pack/vendor/mozjpeg/simd/jsimd.h +1258 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips/jsimd.c +1143 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips/jsimd_dspr2.S +4543 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips/jsimd_dspr2_asm.h +292 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jccolext-mmi.c +455 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jccolor-mmi.c +148 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jcgray-mmi.c +132 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jcgryext-mmi.c +374 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jcsample-mmi.c +98 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jcsample.h +28 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jdcolext-mmi.c +415 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jdcolor-mmi.c +139 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jdmerge-mmi.c +149 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jdmrgext-mmi.c +615 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jdsample-mmi.c +304 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jfdctfst-mmi.c +255 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jfdctint-mmi.c +398 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jidctfst-mmi.c +395 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jidctint-mmi.c +571 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jquanti-mmi.c +124 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jsimd.c +866 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/jsimd_mmi.h +69 -0
- data/ext/image_pack/vendor/mozjpeg/simd/mips64/loongson-mmintrin.h +1334 -0
- data/ext/image_pack/vendor/mozjpeg/simd/nasm/jcolsamp.inc +135 -0
- data/ext/image_pack/vendor/mozjpeg/simd/nasm/jdct.inc +31 -0
- data/ext/image_pack/vendor/mozjpeg/simd/nasm/jsimdcfg.inc +93 -0
- data/ext/image_pack/vendor/mozjpeg/simd/nasm/jsimdcfg.inc.h +133 -0
- data/ext/image_pack/vendor/mozjpeg/simd/nasm/jsimdext.inc +520 -0
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jccolext-altivec.c +269 -0
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jccolor-altivec.c +116 -0
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jcgray-altivec.c +111 -0
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jcgryext-altivec.c +228 -0
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jcsample-altivec.c +159 -0
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jcsample.h +28 -0
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jdcolext-altivec.c +276 -0
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jdcolor-altivec.c +106 -0
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jdmerge-altivec.c +130 -0
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jdmrgext-altivec.c +329 -0
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jdsample-altivec.c +400 -0
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jfdctfst-altivec.c +154 -0
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jfdctint-altivec.c +258 -0
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jidctfst-altivec.c +255 -0
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jidctint-altivec.c +357 -0
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jquanti-altivec.c +250 -0
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jsimd.c +884 -0
- data/ext/image_pack/vendor/mozjpeg/simd/powerpc/jsimd_altivec.h +98 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jccolext-avx2.asm +559 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jccolext-sse2.asm +484 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jccolor-avx2.asm +121 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jccolor-sse2.asm +120 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jcgray-avx2.asm +113 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jcgray-sse2.asm +112 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jcgryext-avx2.asm +438 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jcgryext-sse2.asm +363 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jchuff-sse2.asm +583 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jcphuff-sse2.asm +639 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jcsample-avx2.asm +367 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jcsample-sse2.asm +330 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jdcolext-avx2.asm +496 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jdcolext-sse2.asm +439 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jdcolor-avx2.asm +118 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jdcolor-sse2.asm +117 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jdmerge-avx2.asm +136 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jdmerge-sse2.asm +135 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jdmrgext-avx2.asm +596 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jdmrgext-sse2.asm +538 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jdsample-avx2.asm +696 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jdsample-sse2.asm +665 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jfdctflt-sse.asm +355 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jfdctfst-sse2.asm +389 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jfdctint-avx2.asm +320 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jfdctint-sse2.asm +619 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jidctflt-sse2.asm +482 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jidctfst-sse2.asm +491 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jidctint-avx2.asm +418 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jidctint-sse2.asm +847 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jidctred-sse2.asm +574 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jquantf-sse2.asm +155 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jquanti-avx2.asm +163 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jquanti-sse2.asm +188 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jsimd.c +1110 -0
- data/ext/image_pack/vendor/mozjpeg/simd/x86_64/jsimdcpu.asm +86 -0
- data/ext/image_pack/vendor/mozjpeg/strtest.c +170 -0
- data/ext/image_pack/vendor/mozjpeg/structure.txt +900 -0
- data/ext/image_pack/vendor/mozjpeg/tjbench.c +1044 -0
- data/ext/image_pack/vendor/mozjpeg/tjbenchtest.in +256 -0
- data/ext/image_pack/vendor/mozjpeg/tjbenchtest.java.in +215 -0
- data/ext/image_pack/vendor/mozjpeg/tjexample.c +406 -0
- data/ext/image_pack/vendor/mozjpeg/tjexampletest.in +149 -0
- data/ext/image_pack/vendor/mozjpeg/tjexampletest.java.in +151 -0
- data/ext/image_pack/vendor/mozjpeg/tjunittest.c +961 -0
- data/ext/image_pack/vendor/mozjpeg/tjutil.c +70 -0
- data/ext/image_pack/vendor/mozjpeg/tjutil.h +53 -0
- data/ext/image_pack/vendor/mozjpeg/transupp.c +2373 -0
- data/ext/image_pack/vendor/mozjpeg/transupp.h +243 -0
- data/ext/image_pack/vendor/mozjpeg/turbojpeg-jni.c +1259 -0
- data/ext/image_pack/vendor/mozjpeg/turbojpeg.c +2320 -0
- data/ext/image_pack/vendor/mozjpeg/turbojpeg.h +1784 -0
- data/ext/image_pack/vendor/mozjpeg/usage.txt +679 -0
- data/ext/image_pack/vendor/mozjpeg/wizard.txt +220 -0
- data/ext/image_pack/vendor/mozjpeg/wrbmp.c +552 -0
- data/ext/image_pack/vendor/mozjpeg/wrgif.c +580 -0
- data/ext/image_pack/vendor/mozjpeg/wrjpgcom.c +577 -0
- data/ext/image_pack/vendor/mozjpeg/wrppm.c +366 -0
- data/ext/image_pack/vendor/mozjpeg/wrtarga.c +258 -0
- data/ext/image_pack/vendor/mozjpeg/yuvjpeg.c +268 -0
- data/lib/image_pack/backend.rb +8 -0
- data/lib/image_pack/configuration.rb +23 -0
- data/lib/image_pack/errors.rb +13 -0
- data/lib/image_pack/version.rb +5 -0
- data/lib/image_pack.rb +208 -0
- metadata +433 -0
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
;
|
|
2
|
+
; jcolsamp.inc - private declarations for color conversion & up/downsampling
|
|
3
|
+
;
|
|
4
|
+
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
|
5
|
+
; Copyright (C) 2015, Intel Corporation.
|
|
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
|
+
|
|
13
|
+
; pseudo-resisters to make ordering of RGB configurable
|
|
14
|
+
;
|
|
15
|
+
%if RGB_RED == 0
|
|
16
|
+
%define mmA mm0
|
|
17
|
+
%define mmB mm1
|
|
18
|
+
%define xmmA xmm0
|
|
19
|
+
%define xmmB xmm1
|
|
20
|
+
%define ymmA ymm0
|
|
21
|
+
%define ymmB ymm1
|
|
22
|
+
%elif RGB_GREEN == 0
|
|
23
|
+
%define mmA mm2
|
|
24
|
+
%define mmB mm3
|
|
25
|
+
%define xmmA xmm2
|
|
26
|
+
%define xmmB xmm3
|
|
27
|
+
%define ymmA ymm2
|
|
28
|
+
%define ymmB ymm3
|
|
29
|
+
%elif RGB_BLUE == 0
|
|
30
|
+
%define mmA mm4
|
|
31
|
+
%define mmB mm5
|
|
32
|
+
%define xmmA xmm4
|
|
33
|
+
%define xmmB xmm5
|
|
34
|
+
%define ymmA ymm4
|
|
35
|
+
%define ymmB ymm5
|
|
36
|
+
%else
|
|
37
|
+
%define mmA mm6
|
|
38
|
+
%define mmB mm7
|
|
39
|
+
%define xmmA xmm6
|
|
40
|
+
%define xmmB xmm7
|
|
41
|
+
%define ymmA ymm6
|
|
42
|
+
%define ymmB ymm7
|
|
43
|
+
%endif
|
|
44
|
+
|
|
45
|
+
%if RGB_RED == 1
|
|
46
|
+
%define mmC mm0
|
|
47
|
+
%define mmD mm1
|
|
48
|
+
%define xmmC xmm0
|
|
49
|
+
%define xmmD xmm1
|
|
50
|
+
%define ymmC ymm0
|
|
51
|
+
%define ymmD ymm1
|
|
52
|
+
%elif RGB_GREEN == 1
|
|
53
|
+
%define mmC mm2
|
|
54
|
+
%define mmD mm3
|
|
55
|
+
%define xmmC xmm2
|
|
56
|
+
%define xmmD xmm3
|
|
57
|
+
%define ymmC ymm2
|
|
58
|
+
%define ymmD ymm3
|
|
59
|
+
%elif RGB_BLUE == 1
|
|
60
|
+
%define mmC mm4
|
|
61
|
+
%define mmD mm5
|
|
62
|
+
%define xmmC xmm4
|
|
63
|
+
%define xmmD xmm5
|
|
64
|
+
%define ymmC ymm4
|
|
65
|
+
%define ymmD ymm5
|
|
66
|
+
%else
|
|
67
|
+
%define mmC mm6
|
|
68
|
+
%define mmD mm7
|
|
69
|
+
%define xmmC xmm6
|
|
70
|
+
%define xmmD xmm7
|
|
71
|
+
%define ymmC ymm6
|
|
72
|
+
%define ymmD ymm7
|
|
73
|
+
%endif
|
|
74
|
+
|
|
75
|
+
%if RGB_RED == 2
|
|
76
|
+
%define mmE mm0
|
|
77
|
+
%define mmF mm1
|
|
78
|
+
%define xmmE xmm0
|
|
79
|
+
%define xmmF xmm1
|
|
80
|
+
%define ymmE ymm0
|
|
81
|
+
%define ymmF ymm1
|
|
82
|
+
%elif RGB_GREEN == 2
|
|
83
|
+
%define mmE mm2
|
|
84
|
+
%define mmF mm3
|
|
85
|
+
%define xmmE xmm2
|
|
86
|
+
%define xmmF xmm3
|
|
87
|
+
%define ymmE ymm2
|
|
88
|
+
%define ymmF ymm3
|
|
89
|
+
%elif RGB_BLUE == 2
|
|
90
|
+
%define mmE mm4
|
|
91
|
+
%define mmF mm5
|
|
92
|
+
%define xmmE xmm4
|
|
93
|
+
%define xmmF xmm5
|
|
94
|
+
%define ymmE ymm4
|
|
95
|
+
%define ymmF ymm5
|
|
96
|
+
%else
|
|
97
|
+
%define mmE mm6
|
|
98
|
+
%define mmF mm7
|
|
99
|
+
%define xmmE xmm6
|
|
100
|
+
%define xmmF xmm7
|
|
101
|
+
%define ymmE ymm6
|
|
102
|
+
%define ymmF ymm7
|
|
103
|
+
%endif
|
|
104
|
+
|
|
105
|
+
%if RGB_RED == 3
|
|
106
|
+
%define mmG mm0
|
|
107
|
+
%define mmH mm1
|
|
108
|
+
%define xmmG xmm0
|
|
109
|
+
%define xmmH xmm1
|
|
110
|
+
%define ymmG ymm0
|
|
111
|
+
%define ymmH ymm1
|
|
112
|
+
%elif RGB_GREEN == 3
|
|
113
|
+
%define mmG mm2
|
|
114
|
+
%define mmH mm3
|
|
115
|
+
%define xmmG xmm2
|
|
116
|
+
%define xmmH xmm3
|
|
117
|
+
%define ymmG ymm2
|
|
118
|
+
%define ymmH ymm3
|
|
119
|
+
%elif RGB_BLUE == 3
|
|
120
|
+
%define mmG mm4
|
|
121
|
+
%define mmH mm5
|
|
122
|
+
%define xmmG xmm4
|
|
123
|
+
%define xmmH xmm5
|
|
124
|
+
%define ymmG ymm4
|
|
125
|
+
%define ymmH ymm5
|
|
126
|
+
%else
|
|
127
|
+
%define mmG mm6
|
|
128
|
+
%define mmH mm7
|
|
129
|
+
%define xmmG xmm6
|
|
130
|
+
%define xmmH xmm7
|
|
131
|
+
%define ymmG ymm6
|
|
132
|
+
%define ymmH ymm7
|
|
133
|
+
%endif
|
|
134
|
+
|
|
135
|
+
; --------------------------------------------------------------------------
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
;
|
|
2
|
+
; jdct.inc - private declarations for forward & reverse DCT subsystems
|
|
3
|
+
;
|
|
4
|
+
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
|
5
|
+
; Copyright (C) 2018, 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
|
+
; Each IDCT routine is responsible for range-limiting its results and
|
|
12
|
+
; converting them to unsigned form (0..MAXJSAMPLE). The raw outputs could
|
|
13
|
+
; be quite far out of range if the input data is corrupt, so a bulletproof
|
|
14
|
+
; range-limiting step is required. We use a mask-and-table-lookup method
|
|
15
|
+
; to do the combined operations quickly.
|
|
16
|
+
;
|
|
17
|
+
%define RANGE_MASK (MAXJSAMPLE * 4 + 3) ; 2 bits wider than legal samples
|
|
18
|
+
|
|
19
|
+
%define ROW(n, b, s) ((b) + (n) * (s))
|
|
20
|
+
%define COL(n, b, s) ((b) + (n) * (s) * DCTSIZE)
|
|
21
|
+
|
|
22
|
+
%define DWBLOCK(m, n, b, s) \
|
|
23
|
+
((b) + (m) * DCTSIZE * (s) + (n) * SIZEOF_DWORD)
|
|
24
|
+
%define MMBLOCK(m, n, b, s) \
|
|
25
|
+
((b) + (m) * DCTSIZE * (s) + (n) * SIZEOF_MMWORD)
|
|
26
|
+
%define XMMBLOCK(m, n, b, s) \
|
|
27
|
+
((b) + (m) * DCTSIZE * (s) + (n) * SIZEOF_XMMWORD)
|
|
28
|
+
%define YMMBLOCK(m, n, b, s) \
|
|
29
|
+
((b) + (m) * DCTSIZE * (s) + (n) * SIZEOF_YMMWORD)
|
|
30
|
+
|
|
31
|
+
; --------------------------------------------------------------------------
|
|
@@ -0,0 +1,93 @@
|
|
|
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
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* This file generates the include file for the assembly
|
|
3
|
+
* implementations by abusing the C preprocessor.
|
|
4
|
+
*
|
|
5
|
+
* Note: Some things are manually defined as they need to
|
|
6
|
+
* be mapped to NASM types.
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
;
|
|
10
|
+
; Automatically generated include file from jsimdcfg.inc.h
|
|
11
|
+
;
|
|
12
|
+
|
|
13
|
+
#define JPEG_INTERNALS
|
|
14
|
+
|
|
15
|
+
#include "../jpeglib.h"
|
|
16
|
+
#include "../jconfig.h"
|
|
17
|
+
#include "../jmorecfg.h"
|
|
18
|
+
#include "jsimd.h"
|
|
19
|
+
|
|
20
|
+
;
|
|
21
|
+
; -- jpeglib.h
|
|
22
|
+
;
|
|
23
|
+
|
|
24
|
+
%define _cpp_protection_DCTSIZE DCTSIZE
|
|
25
|
+
%define _cpp_protection_DCTSIZE2 DCTSIZE2
|
|
26
|
+
|
|
27
|
+
;
|
|
28
|
+
; -- jmorecfg.h
|
|
29
|
+
;
|
|
30
|
+
|
|
31
|
+
%define _cpp_protection_RGB_RED RGB_RED
|
|
32
|
+
%define _cpp_protection_RGB_GREEN RGB_GREEN
|
|
33
|
+
%define _cpp_protection_RGB_BLUE RGB_BLUE
|
|
34
|
+
%define _cpp_protection_RGB_PIXELSIZE RGB_PIXELSIZE
|
|
35
|
+
|
|
36
|
+
%define _cpp_protection_EXT_RGB_RED EXT_RGB_RED
|
|
37
|
+
%define _cpp_protection_EXT_RGB_GREEN EXT_RGB_GREEN
|
|
38
|
+
%define _cpp_protection_EXT_RGB_BLUE EXT_RGB_BLUE
|
|
39
|
+
%define _cpp_protection_EXT_RGB_PIXELSIZE EXT_RGB_PIXELSIZE
|
|
40
|
+
|
|
41
|
+
%define _cpp_protection_EXT_RGBX_RED EXT_RGBX_RED
|
|
42
|
+
%define _cpp_protection_EXT_RGBX_GREEN EXT_RGBX_GREEN
|
|
43
|
+
%define _cpp_protection_EXT_RGBX_BLUE EXT_RGBX_BLUE
|
|
44
|
+
%define _cpp_protection_EXT_RGBX_PIXELSIZE EXT_RGBX_PIXELSIZE
|
|
45
|
+
|
|
46
|
+
%define _cpp_protection_EXT_BGR_RED EXT_BGR_RED
|
|
47
|
+
%define _cpp_protection_EXT_BGR_GREEN EXT_BGR_GREEN
|
|
48
|
+
%define _cpp_protection_EXT_BGR_BLUE EXT_BGR_BLUE
|
|
49
|
+
%define _cpp_protection_EXT_BGR_PIXELSIZE EXT_BGR_PIXELSIZE
|
|
50
|
+
|
|
51
|
+
%define _cpp_protection_EXT_BGRX_RED EXT_BGRX_RED
|
|
52
|
+
%define _cpp_protection_EXT_BGRX_GREEN EXT_BGRX_GREEN
|
|
53
|
+
%define _cpp_protection_EXT_BGRX_BLUE EXT_BGRX_BLUE
|
|
54
|
+
%define _cpp_protection_EXT_BGRX_PIXELSIZE EXT_BGRX_PIXELSIZE
|
|
55
|
+
|
|
56
|
+
%define _cpp_protection_EXT_XBGR_RED EXT_XBGR_RED
|
|
57
|
+
%define _cpp_protection_EXT_XBGR_GREEN EXT_XBGR_GREEN
|
|
58
|
+
%define _cpp_protection_EXT_XBGR_BLUE EXT_XBGR_BLUE
|
|
59
|
+
%define _cpp_protection_EXT_XBGR_PIXELSIZE EXT_XBGR_PIXELSIZE
|
|
60
|
+
|
|
61
|
+
%define _cpp_protection_EXT_XRGB_RED EXT_XRGB_RED
|
|
62
|
+
%define _cpp_protection_EXT_XRGB_GREEN EXT_XRGB_GREEN
|
|
63
|
+
%define _cpp_protection_EXT_XRGB_BLUE EXT_XRGB_BLUE
|
|
64
|
+
%define _cpp_protection_EXT_XRGB_PIXELSIZE EXT_XRGB_PIXELSIZE
|
|
65
|
+
|
|
66
|
+
%define RGBX_FILLER_0XFF 1
|
|
67
|
+
|
|
68
|
+
; Representation of a single sample (pixel element value).
|
|
69
|
+
; On this SIMD implementation, this must be 'unsigned char'.
|
|
70
|
+
;
|
|
71
|
+
|
|
72
|
+
%define JSAMPLE byte ; unsigned char
|
|
73
|
+
%define SIZEOF_JSAMPLE SIZEOF_BYTE ; sizeof(JSAMPLE)
|
|
74
|
+
|
|
75
|
+
%define _cpp_protection_CENTERJSAMPLE CENTERJSAMPLE
|
|
76
|
+
|
|
77
|
+
; Representation of a DCT frequency coefficient.
|
|
78
|
+
; On this SIMD implementation, this must be 'short'.
|
|
79
|
+
;
|
|
80
|
+
%define JCOEF word ; short
|
|
81
|
+
%define SIZEOF_JCOEF SIZEOF_WORD ; sizeof(JCOEF)
|
|
82
|
+
|
|
83
|
+
; Datatype used for image dimensions.
|
|
84
|
+
; On this SIMD implementation, this must be 'unsigned int'.
|
|
85
|
+
;
|
|
86
|
+
%define JDIMENSION dword ; unsigned int
|
|
87
|
+
%define SIZEOF_JDIMENSION SIZEOF_DWORD ; sizeof(JDIMENSION)
|
|
88
|
+
|
|
89
|
+
%define JSAMPROW POINTER ; JSAMPLE * (jpeglib.h)
|
|
90
|
+
%define JSAMPARRAY POINTER ; JSAMPROW * (jpeglib.h)
|
|
91
|
+
%define JSAMPIMAGE POINTER ; JSAMPARRAY * (jpeglib.h)
|
|
92
|
+
%define JCOEFPTR POINTER ; JCOEF * (jpeglib.h)
|
|
93
|
+
%define SIZEOF_JSAMPROW SIZEOF_POINTER ; sizeof(JSAMPROW)
|
|
94
|
+
%define SIZEOF_JSAMPARRAY SIZEOF_POINTER ; sizeof(JSAMPARRAY)
|
|
95
|
+
%define SIZEOF_JSAMPIMAGE SIZEOF_POINTER ; sizeof(JSAMPIMAGE)
|
|
96
|
+
%define SIZEOF_JCOEFPTR SIZEOF_POINTER ; sizeof(JCOEFPTR)
|
|
97
|
+
|
|
98
|
+
;
|
|
99
|
+
; -- jdct.h
|
|
100
|
+
;
|
|
101
|
+
|
|
102
|
+
; A forward DCT routine is given a pointer to a work area of type DCTELEM[];
|
|
103
|
+
; the DCT is to be performed in-place in that buffer.
|
|
104
|
+
; To maximize parallelism, Type DCTELEM is changed to short (originally, int).
|
|
105
|
+
;
|
|
106
|
+
%define DCTELEM word ; short
|
|
107
|
+
%define SIZEOF_DCTELEM SIZEOF_WORD ; sizeof(DCTELEM)
|
|
108
|
+
|
|
109
|
+
%define FAST_FLOAT FP32 ; float
|
|
110
|
+
%define SIZEOF_FAST_FLOAT SIZEOF_FP32 ; sizeof(FAST_FLOAT)
|
|
111
|
+
|
|
112
|
+
; To maximize parallelism, Type MULTIPLIER is changed to short.
|
|
113
|
+
;
|
|
114
|
+
%define ISLOW_MULT_TYPE word ; must be short
|
|
115
|
+
%define SIZEOF_ISLOW_MULT_TYPE SIZEOF_WORD ; sizeof(ISLOW_MULT_TYPE)
|
|
116
|
+
|
|
117
|
+
%define IFAST_MULT_TYPE word ; must be short
|
|
118
|
+
%define SIZEOF_IFAST_MULT_TYPE SIZEOF_WORD ; sizeof(IFAST_MULT_TYPE)
|
|
119
|
+
%define IFAST_SCALE_BITS 2 ; fractional bits in scale factors
|
|
120
|
+
|
|
121
|
+
%define FLOAT_MULT_TYPE FP32 ; must be float
|
|
122
|
+
%define SIZEOF_FLOAT_MULT_TYPE SIZEOF_FP32 ; sizeof(FLOAT_MULT_TYPE)
|
|
123
|
+
|
|
124
|
+
;
|
|
125
|
+
; -- jsimd.h
|
|
126
|
+
;
|
|
127
|
+
|
|
128
|
+
%define _cpp_protection_JSIMD_NONE JSIMD_NONE
|
|
129
|
+
%define _cpp_protection_JSIMD_MMX JSIMD_MMX
|
|
130
|
+
%define _cpp_protection_JSIMD_3DNOW JSIMD_3DNOW
|
|
131
|
+
%define _cpp_protection_JSIMD_SSE JSIMD_SSE
|
|
132
|
+
%define _cpp_protection_JSIMD_SSE2 JSIMD_SSE2
|
|
133
|
+
%define _cpp_protection_JSIMD_AVX2 JSIMD_AVX2
|