From: DRC Date: Mon, 15 Apr 2019 18:41:45 +0000 (-0500) Subject: Merge branch 'master' into dev X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=8a0e35b21298c54a2cccbcc8b076fcc9868160c6;p=libjpeg-turbo Merge branch 'master' into dev --- 8a0e35b21298c54a2cccbcc8b076fcc9868160c6 diff --cc ChangeLog.md index 3737951,cb537b3..584bb16 --- a/ChangeLog.md +++ b/ChangeLog.md @@@ -1,41 -1,13 +1,51 @@@ +2.1 pre-beta +============ + +### Significant changes relative to 2.0.1: + +1. The build system, x86-64 SIMD extensions, and accelerated Huffman codec now +support the x32 ABI on Linux, which allows for using x86-64 instructions with +32-bit pointers. The x32 ABI is generally enabled by adding `-mx32` to the +compiler flags. + + Caveats: + - CMake 3.9.0 or later is required in order for the build system to +automatically detect an x32 build. + - Java does not support the x32 ABI, and thus the TurboJPEG Java API will +automatically be disabled with x32 builds. + - SIMD acceleration for progressive Huffman encoding does not (currently) +work with the x32 ABI and will be disabled in x32 builds. + +2. Added Loongson MMI SIMD implementations of the RGB-to-grayscale, 4:2:2 fancy +chroma upsampling, 4:2:2 and 4:2:0 merged chroma upsampling/color conversion, +and fast integer DCT/IDCT algorithms. Relative to libjpeg-turbo 2.0.x, this +speeds up: + + - the compression of RGB source images into grayscale JPEG images by +approximately 20% + - the decompression of 4:2:2 JPEG images by approximately 40-60% when +using fancy upsampling + - the decompression of 4:2:2 and 4:2:0 JPEG images by approximately +15-20% when using merged upsampling + - the compression of RGB source images by approximately 30-45% when using +the fast integer DCT + - the decompression of JPEG images into RGB destination images by +approximately 2x when using the fast integer IDCT + + The overall decompression speedup for RGB images is now approximately +2.3-3.7x (compared to 2-3.5x with libjpeg-turbo 2.0.x.) + + + 2.0.3 + ===== + + ### Significant changes relative to 2.0.2: + + 1. Fixed "using JNI after critical get" errors that occurred on Android + platforms when passing invalid arguments to certain methods in the TurboJPEG + Java API. + + 2.0.2 ===== diff --cc jdhuff.c index cff2ec4,a112817..d079470 --- a/jdhuff.c +++ b/jdhuff.c @@@ -4,8 -4,7 +4,8 @@@ * This file was part of the Independent JPEG Group's software: * Copyright (C) 1991-1997, Thomas G. Lane. * libjpeg-turbo Modifications: - * Copyright (C) 2009-2011, 2016, 2018, D. R. Commander. + * Copyright (C) 2009-2011, 2016, 2018-2019, D. R. Commander. + * Copyright (C) 2018, Matthias Räncker. * For conditions of distribution and use, see the accompanying README.ijg * file. *