History log of /external/libjpeg-turbo/jmorecfg.h
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/jmorecfg.h
8e9cef2e6f5156c4b055a04a8f979b7291fc6b7a 21-Sep-2015 DRC <information@libjpeg-turbo.org> Fix various issues reported by the UB sanitizers
Most of these involved left shifting a negative number, which is
technically undefined (although every modern compiler I'm aware of
will implement this by treating the signed integer as a 2's complement
unsigned integer-- the LEFT_SHIFT() macro just makes this behavior
explicit in order to shut up ubsan.) This also fixes a couple of
non-issues in the entropy codecs, whereby the sanitizer reported an
out-of-bounds index in the 4th argument of jpeg_make_d_derived_tbl().
In those cases, the index was actually out of bounds (caused by a
malformed JPEG image), but jpeg_make_d_derived_tbl() would have caught
the error and aborted prior to actually using the invalid address. Here
again, the fix was to make our intentions explicit so as to shut up
ubsan.
/external/libjpeg-turbo/jmorecfg.h
498d9bc92fcf39124b6f08e57326944dedd2ddd6 15-Sep-2015 Chandler Carruth <chandlerc@gmail.com> Fix x86-64 ABI conformance issue in SIMD code
(descriptions cribbed by DRC from discussion in #20)
In the x86-64 ABI, the high (unused) DWORD of a 32-bit argument's
register is undefined, so it was incorrect to use a 64-bit mov
instruction to transfer a JDIMENSION argument in the 64-bit SSE2 SIMD
functions. The code worked thus far only because the existing compiler
optimizers weren't smart enough to do anything else with the register in
question, so the upper 32 bits happened to be all zeroes-- for the past
6 years, on every x86-64 compiler previously known to mankind.

The bleeding-edge Clang/LLVM compiler has a smarter optimizer, and
under certain circumstances, it will attempt to load-combine adjacent
32-bit integers from one of the libjpeg structures into a single 64-bit
integer and pass that 64-bit integer as a 32-bit argument to one of the
SIMD functions (which is allowed by the ABI, since the upper 32 bits of
the 32-bit argument's register are undefined.) This caused the
libjpeg-turbo regression tests to crash.

Also enhance the documentation of JDIMENSION to explain that its size
is significant to the implementation of the SIMD code.

Closes #20. Refer also to http://crbug.com/532214.
/external/libjpeg-turbo/jmorecfg.h
c23e36e80009728b8c0f5e36ba6cb07885334d3b 06-Jul-2015 DRC <dcommander@users.sourceforge.net> Add additional protections against defining INT32 if another header has already defined it (code borrowed from libjpeg v8.) This isn't necessary when using the libjpeg-turbo build system on Windows, because the CMake generated jconfig.h defines INT32 and then defines XMD_H to trick jmorecfg.h into not redefining it. However, some projects build libjpeg-turbo using their own build systems.


git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/branches/1.4.x@1593 632fc199-4ca6-4c93-a231-07263d6284db
5829cb23983cd241c48abd8ed70ff3627560c453 15-Jan-2012 Guido Vollbeding <jpeg-info@jpegclub.org> The Independent JPEG Group's JPEG software v8d
/external/libjpeg-turbo/jmorecfg.h
989630f70cf1af69ebfefca8910d1647bf189712 10-Jan-2010 Guido Vollbeding <jpeg-info@uc.ag> The Independent JPEG Group's JPEG software v8
/external/libjpeg-turbo/jmorecfg.h
5996a25e2f50d20d6a8f09830724035b49c3927b 27-Jun-2009 Guido Vollbeding <jpeg-info@jpegclub.org> The Independent JPEG Group's JPEG software v7
/external/libjpeg-turbo/jmorecfg.h
1e247ac854f8e33682bcfea475f6bccc42377208 28-Mar-1998 Guido Vollbeding <guido@jpegclub.org> The Independent JPEG Group's JPEG software v6b with arithmetic coding support
/external/libjpeg-turbo/jmorecfg.h
5ead57a34a398aa798f35bd7a6abad19b2e453e2 27-Mar-1998 Thomas G. Lane <tgl@netcom.com> The Independent JPEG Group's JPEG software v6b
/external/libjpeg-turbo/jmorecfg.h
489583f5165e05d37302e8eeec58104ea0109127 07-Feb-1996 Thomas G. Lane <tgl@netcom.com> The Independent JPEG Group's JPEG software v6a
/external/libjpeg-turbo/jmorecfg.h
bc79e0680a45d1ca330d690dae0340c8e17ab5e3 02-Aug-1995 Thomas G. Lane <tgl@netcom.com> The Independent JPEG Group's JPEG software v6
/external/libjpeg-turbo/jmorecfg.h
36a4ccccd33f5cc9df62949554af87129ced7f84 24-Sep-1994 Thomas G. Lane <tgl@netcom.com> The Independent JPEG Group's JPEG software v5
/external/libjpeg-turbo/jmorecfg.h
2a6b8316fce86aa05c00bf44a29a28d2e9aec99c 25-Nov-2014 DRC <dcommander@users.sourceforge.net> Some software also needs the FAR macro. Ugh. Also wordsmithing.


git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/branches/1.4.x@1432 632fc199-4ca6-4c93-a231-07263d6284db
/external/libjpeg-turbo/jmorecfg.h
e2dd3e3e5cb479f8596325e72f0595a31bf79921 25-Nov-2014 DRC <dcommander@users.sourceforge.net> Restore the JPP() and JMETHOD() macros. Even though libjpeg-turbo doesn't use them anymore, other software apparently does:
https://bugzilla.redhat.com/show_bug.cgi?id=1164815
https://bugs.kde.org/show_bug.cgi?id=340944
https://bugzilla.mozilla.org/show_bug.cgi?id=1093615


git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/branches/1.4.x@1430 632fc199-4ca6-4c93-a231-07263d6284db
/external/libjpeg-turbo/jmorecfg.h
aee4f721602b86fae0057b517933ae1624972907 10-Aug-2014 DRC <dcommander@users.sourceforge.net> 12-bit JPEG support


git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@1337 632fc199-4ca6-4c93-a231-07263d6284db
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/jmorecfg.h
da13af6b8d5427af89bbdc5698b4e09d0ea814fe 18-May-2014 DRC <dcommander@users.sourceforge.net> Further copyright header cleanup


git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@1310 632fc199-4ca6-4c93-a231-07263d6284db
/external/libjpeg-turbo/jmorecfg.h
bc56b754e1a6a1db9ccadf64d6dda8a74140e1a3 16-May-2014 DRC <dcommander@users.sourceforge.net> Get rid of the HAVE_PROTOTYPES configuration option, as well as the related JMETHOD and JPP macros. libjpeg-turbo has never supported compilers that don't handle prototypes. Doing so requires ansi2knr, which isn't even supported in the IJG code anymore.


git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@1308 632fc199-4ca6-4c93-a231-07263d6284db
/external/libjpeg-turbo/jmorecfg.h
3402a66a22ff040096a8146a0eec029b38dab6c2 13-May-2014 DRC <dcommander@users.sourceforge.net> The x86/x86-64 SIMD extensions were originally designed to accommodate changing the value of RGB_*, but this apparently broke when RGB-to-gray colorspace conversion was accelerated. Further, the ARM NEON extensions have always assumed that JCS_RGB behaves identically to JCS_EXT_RGB. Rather than fix these issues, it makes more sense to just stop claiming that we support changing the values of RGB_*, since doing so is no longer necessary.


git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@1296 632fc199-4ca6-4c93-a231-07263d6284db
976fd9687e5773f3653385da7a3489ce4d58dd51 13-May-2014 DRC <dcommander@users.sourceforge.net> The x86/x86-64 SIMD extensions were originally designed to accommodate changing the value of RGB_*, but this apparently broke when RGB-to-gray colorspace conversion was accelerated. Further, the ARM NEON extensions have always assumed that JCS_RGB behaves identically to JCS_EXT_RGB. Rather than fix these issues, it makes more sense to just stop claiming that we support changing the values of RGB_*, since doing so is no longer necessary.


git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/branches/1.3.x@1298 632fc199-4ca6-4c93-a231-07263d6284db
/external/libjpeg-turbo/jmorecfg.h
78df2e6115b0e579432d01cb034132cd4402a1ba 12-May-2014 DRC <dcommander@users.sourceforge.net> Add support for decompressing to RGB565 (16-bit) pixels


git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@1295 632fc199-4ca6-4c93-a231-07263d6284db
/external/libjpeg-turbo/jmorecfg.h
b775351012af176720429ac21d11682a0b75b4b7 11-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/branches/1.3.x@1285 632fc199-4ca6-4c93-a231-07263d6284db
/external/libjpeg-turbo/jmorecfg.h
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/jmorecfg.h
c168d9641ce8c2eccbc405ac0f38020a0acf90dc 06-Jan-2013 DRC <dcommander@users.sourceforge.net> Prevent compiler warning on Windows if jmorecfg.h is included after the Windows headers, which also define FAR.


git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/branches/1.2.x@892 632fc199-4ca6-4c93-a231-07263d6284db
/external/libjpeg-turbo/jmorecfg.h
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/jmorecfg.h
67ce3b2352fe1f7511edbfed74ec6960e41e97dc 19-Dec-2011 DRC <dcommander@users.sourceforge.net> Added new alpha channel colorspace constants/pixel formats, so applications can specify that they need the unused byte in a 4-component RGB output buffer set to 0xFF when decompressing.


git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@732 632fc199-4ca6-4c93-a231-07263d6284db
/external/libjpeg-turbo/jmorecfg.h
b4570bbf8cb3045e2b3cbf3d6a80d31735871d10 07-Sep-2011 DRC <dcommander@users.sourceforge.net> Improve performance of non-SIMD color conversion routines and use global constants to define colorspace extension parameters


git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@698 632fc199-4ca6-4c93-a231-07263d6284db
/external/libjpeg-turbo/jmorecfg.h
e372004b4deb7b51199068b97996911c89a70894 23-Nov-2010 DRC <dcommander@users.sourceforge.net> Added configure options to disable arithmetic encoding/decoding


git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@300 632fc199-4ca6-4c93-a231-07263d6284db
/external/libjpeg-turbo/jmorecfg.h
66f97e6820e2cc9ef7429ea36285c80ffda87c8f 23-Nov-2010 DRC <dcommander@users.sourceforge.net> Support arithmetic encoding and decoding


git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@299 632fc199-4ca6-4c93-a231-07263d6284db
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/jmorecfg.h
5eb84ff97f00c02aadfdce0cb30ab3e899c1b113 09-Mar-2009 Pierre Ossman <ossman@cendio.se> Add MMX SIMD implementation of computationally intensive routines.


git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@17 632fc199-4ca6-4c93-a231-07263d6284db
a2e6a9dd47eb10c701a42a16f305ded1a02cd886 04-Feb-2006 MIYASAKA Masaru <alkaid@coral.ocn.ne.jp> IJG R6b with x86SIMD V1.02
Independent JPEG Group's JPEG software release 6b
with x86 SIMD extension for IJG JPEG library version 1.02
/external/libjpeg-turbo/jmorecfg.h
0ca44258fc43bc44ea31b875001311591cc5634c 28-Sep-2008 Constantin Kaplinsky <const@tightvnc.com> Merged changes from branches/1.5-xserver (revision range 2432:2631) back to trunk.


git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@2 632fc199-4ca6-4c93-a231-07263d6284db
/external/libjpeg-turbo/jmorecfg.h