History log of /external/libjpeg-turbo/jquant2.c
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
6eb7d3798b5a79347c62825fc4c16f7ce673bdd0 16-Oct-2016 Alex Naidis <alex.naidis@linux.com> libjpeg-turbo: Upgrade to 1.5.1

The changes from 1.4.2 to 1.5.1 include
a big amount of fixes and huge performance improvements.
As highlights there is a full ARM 64-bit (ARMv8) NEON SIMD
implementation which improves compression of full-color JPEGs
by about 2-2.5x on average on Cortex-A53 and Cortex-A57 cores.
Also SIMD acceleration for Huffman encoding on NEON-capable
ARM 32-bit and 64-bit platforms was added.
Performance on x86/x86_64 was also improved by
adding better optimized SSE2 routines.

For the full changelog, please see the ChangeLog.md
file.

Partial decoding optimizations, the security fix
to adress b/27494207 and the fix for the AARCH64
conformance issueare present in the release.
The README.android file was edited to reflect this.

The configuration files were regenerated
and all Android specific changes were applied.

BUG:28268702

Change-Id: I538291d894df1da01d3f733771647df1fb61ec42
Signed-off-by: Alex Naidis <alex.naidis@linux.com>
/external/libjpeg-turbo/jquant2.c
5de454b291f48382648a5d1dc2aa0fca8b5786d4 18-May-2014 DRC <dcommander@users.sourceforge.net> libjpeg-turbo has never supported non-ANSI compilers, so get rid of the crufty SIZEOF() macro. It was not being used consistently anyhow, so it would not have been possible to build prior releases of libjpeg-turbo using the broken compilers for which that macro was designed.


git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@1313 632fc199-4ca6-4c93-a231-07263d6284db
/external/libjpeg-turbo/jquant2.c
5033f3e19a31e8ad40c1a79700365aefe5664494 18-May-2014 DRC <dcommander@users.sourceforge.net> Remove MS-DOS code and information, and adjust copyright headers to reflect the removal of features in r1307 and r1308. libjpeg-turbo has never supported MS-DOS, nor is it even possible for us to do so.


git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@1312 632fc199-4ca6-4c93-a231-07263d6284db
/external/libjpeg-turbo/jquant2.c
e5eaf37440b8e337ab150c017df7c03faf846c51 09-May-2014 DRC <dcommander@users.sourceforge.net> Convert tabs to spaces in the libjpeg code and the SIMD code (TurboJPEG retains the use of tabs for historical reasons. They were annoying in the libjpeg code primarily because they were not consistently used and because they were used to format as well as indent the code. In the case of TurboJPEG, tabs are used just to indent the code, so even if the editor assumes a different tab width, the code will still be readable.)


git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@1278 632fc199-4ca6-4c93-a231-07263d6284db
/external/libjpeg-turbo/jquant2.c
ac9a92ebbdae96c89723ecec377a4e6a4edf879a 20-Apr-2014 DRC <dcommander@users.sourceforge.net> Work around an issue in Visual C++ 2010 and 2013 that was causing the 256-bit bitmap test in the regression tests to fail. More specifically, when optimization is enabled in these versions of Visual C++, the optimizer seems to get confused by the following code block:

delta = cur0 * 2;
cur0 += delta; /* form error * 3 */
errorptr[0] = (FSERROR) (bpreverr0 + cur0);
cur0 += delta; /* form error * 5 */
bpreverr0 = belowerr0 + cur0;
cur0 += delta; /* form error * 7 */

Each time cur0 is incremented by delta, the compiled code doubles the value of delta (WTF?!) Thus, by the time the end of the block is reached, cur0 is equal to 15 times its former self, not 7 times its former self as it should be. At any rate, it was a lot simpler to just refactor the code so that it uses multiplication.


git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/branches/1.3.x@1253 632fc199-4ca6-4c93-a231-07263d6284db
beb0b33764267797d6f56fd1ec628ac0d322b956 20-Apr-2014 DRC <dcommander@users.sourceforge.net> Work around an issue in Visual C++ 2010 and 2013 that was causing the 256-bit bitmap test in the regression tests to fail. More specifically, when optimization is enabled in these versions of Visual C++, the optimizer seems to get confused by the following code block:

delta = cur0 * 2;
cur0 += delta; /* form error * 3 */
errorptr[0] = (FSERROR) (bpreverr0 + cur0);
cur0 += delta; /* form error * 5 */
bpreverr0 = belowerr0 + cur0;
cur0 += delta; /* form error * 7 */

Each time cur0 is incremented by delta, the compiled code doubles the value of delta (WTF?!) Thus, by the time the end of the block is reached, cur0 is equal to 15 times its former self, not 7 times its former self as it should be. At any rate, it was a lot simpler to just refactor the code so that it uses multiplication.


git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/branches/1.2.x@1255 632fc199-4ca6-4c93-a231-07263d6284db
/external/libjpeg-turbo/jquant2.c
2885cf58308957705a8eff807bde52342e8df0e6 07-Feb-2014 DRC <dcommander@users.sourceforge.net> Further examination of the code reveals that this change is unnecessary. The histogram stores a count of each color in the image, so it will always contain at least one non-zero element, and thus the total can never be zero. Since the histogram is generated from the image data and not read from the header, there is no chance that header corruption would affect it.


git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/branches/1.3.x@1116 632fc199-4ca6-4c93-a231-07263d6284db
/external/libjpeg-turbo/jquant2.c
d4ab63d191d69b0197215c39c8328a31b523ca0f 06-Feb-2014 DRC <dcommander@users.sourceforge.net> Fix several potential overflow issues identified by the community.


git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/branches/1.3.x@1114 632fc199-4ca6-4c93-a231-07263d6284db
/external/libjpeg-turbo/jquant2.c
a6ef282a49f2d7d1b4d19cc89f63e81fd66b35b7 28-Sep-2013 DRC <dcommander@users.sourceforge.net> Some of the IJG headers say "Modified by", so clarify that our "Modifications" are not referring to these.


git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/branches/1.3.x@1053 632fc199-4ca6-4c93-a231-07263d6284db
/external/libjpeg-turbo/jquant2.c
a73e870ad02de20c2b34cb3a5382c2846c2afbe3 31-Dec-2012 DRC <dcommander@users.sourceforge.net> Change the copyright notices to make it clear that our modified files are not part of the IJG's software.


git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/branches/1.2.x@873 632fc199-4ca6-4c93-a231-07263d6284db
/external/libjpeg-turbo/jquant2.c
8ece7fef15fad1abf46e511f1a55e9904ac108f7 06-Aug-2009 DRC <dcommander@users.sourceforge.net> Update copyrights to indicate files modified with colorspace extensions



git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@57 632fc199-4ca6-4c93-a231-07263d6284db
/external/libjpeg-turbo/jquant2.c
f25c071eb745268452206bb633561b770c4d62ea 03-Apr-2009 DRC <dcommander@users.sourceforge.net> Implement new colorspaces to allow directly compressing from/decompressing to RGB/RGBX/BGR/BGRX/XBGR/XRGB without conversion



git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@35 632fc199-4ca6-4c93-a231-07263d6284db
/external/libjpeg-turbo/jquant2.c
489583f5165e05d37302e8eeec58104ea0109127 07-Feb-1996 Thomas G. Lane <tgl@netcom.com> The Independent JPEG Group's JPEG software v6a
/external/libjpeg-turbo/jquant2.c
bc79e0680a45d1ca330d690dae0340c8e17ab5e3 02-Aug-1995 Thomas G. Lane <tgl@netcom.com> The Independent JPEG Group's JPEG software v6
/external/libjpeg-turbo/jquant2.c
36a4ccccd33f5cc9df62949554af87129ced7f84 24-Sep-1994 Thomas G. Lane <tgl@netcom.com> The Independent JPEG Group's JPEG software v5
/external/libjpeg-turbo/jquant2.c
cc7150e281999ac2642e21f13e2c160f68b1d675 18-Feb-1993 Thomas G. Lane <tgl@netcom.com> The Independent JPEG Group's JPEG software v4a
/external/libjpeg-turbo/jquant2.c
88aeed428fd820659e3ae00292cb84ecfc05dd23 10-Dec-1992 Thomas G. Lane <tgl@netcom.com> The Independent JPEG Group's JPEG software v4
/external/libjpeg-turbo/jquant2.c
4a6b7303643714d495b9d26742d8a156fd120936 17-Mar-1992 Thomas G. Lane <tgl@netcom.com> The Independent JPEG Group's JPEG software v3
/external/libjpeg-turbo/jquant2.c
2cbeb8abd92d5ad8a1bd415b51b3816213b15f31 07-Oct-1991 Thomas G. Lane <tgl@netcom.com> The Independent JPEG Group's JPEG software v1
/external/libjpeg-turbo/jquant2.c