Android 2.3 CTS release 12
Do not merge.
Backport changes/fixes related to Jpeg tile-based decoder from Honeycomb
to Gingerbread.
Bug: 3309014
//////////////////////////////////////////////////////////////////////////
This is a combination of 5 commits.
Fix 3118622, where tile-base jpeg decode does not handle the region
width correctly in Progressive JPEG when the h_samp_factor is different from one color
component to anothor.
To decode a region in a progressive JPEG, each time we decode
one iMCU row, the width of which equals to the region width.
However, for each color component the region width in DCT blocks depends on its h_samp_factor.
The change ensures we get a correct region width from our recorded MCU_column number.
Bug: 3118622
Change-Id: I6d3e30f946e0395c0719aee0c8e694824ab3d27f
libjpeg: Remove the old assembly code for ARM.
A much better one is coming.
Change-Id: I60d8c227d573fcbff10af363d69405e9fbd0c147
libjpeg: Use the new fast-and-accurate IDCT method for ARMv6+ devices.
As another AA&N implementation, it runs 9-10% faster than jidctfst.S
and 11-15% faster than jidctfst.c. As another IDCT method, it runs
17-20% faster than JDCT_ISLOW method and provides the same accuracy
or even better.
Change-Id: I81783c310d6dac5aaf84c03a4cf20662f466564c
libjpeg: Make both JDCT_IFAST and JDCT_ISLOW use armv6_idct.
Change-Id: Iae9c402ec7e1c6b078f404fec995162c8091f383
Fix the JPEG tile decode issue in the case of JPEGs having restart
markers.
The fix stores the restart information on each index point and restores
the restart information when we do the tile decode.
Bug: 3312406
////////////////////////////////////////////////////////////////////////////
8 files changed