Android 2.3.3 release 1.1
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
tree: e366f62f3f33e52ae8a4bcc728b510dd64cbc5c1
  1. Android.mk
  2. ansi2knr.1
  3. ansi2knr.c
  4. armv6_idct.S
  5. cderror.h
  6. cdjpeg.c
  7. cdjpeg.h
  8. change.log
  9. cjpeg.1
  10. cjpeg.c
  11. ckconfig.c
  12. CleanSpec.mk
  13. coderules.doc
  14. config.guess
  15. config.sub
  16. configure
  17. djpeg.1
  18. djpeg.c
  19. example.c
  20. filelist.doc
  21. install-sh
  22. install.doc
  23. jcapimin.c
  24. jcapistd.c
  25. jccoefct.c
  26. jccolor.c
  27. jcdctmgr.c
  28. jchuff.c
  29. jchuff.h
  30. jcinit.c
  31. jcmainct.c
  32. jcmarker.c
  33. jcmaster.c
  34. jcomapi.c
  35. jconfig.bcc
  36. jconfig.cfg
  37. jconfig.dj
  38. jconfig.doc
  39. jconfig.h
  40. jconfig.mac
  41. jconfig.manx
  42. jconfig.mc6
  43. jconfig.sas
  44. jconfig.st
  45. jconfig.vc
  46. jconfig.vms
  47. jconfig.wat
  48. jcparam.c
  49. jcphuff.c
  50. jcprepct.c
  51. jcsample.c
  52. jctrans.c
  53. jdapimin.c
  54. jdapistd.c
  55. jdatadst.c
  56. jdatasrc.c
  57. jdcoefct.c
  58. jdcolor.c
  59. jdct.h
  60. jddctmgr.c
  61. jdhuff.c
  62. jdhuff.h
  63. jdinput.c
  64. jdmainct.c
  65. jdmarker.c
  66. jdmaster.c
  67. jdmerge.c
  68. jdphuff.c
  69. jdpostct.c
  70. jdsample.c
  71. jdtrans.c
  72. jerror.c
  73. jerror.h
  74. jfdctflt.c
  75. jfdctfst.c
  76. jfdctint.c
  77. jidctflt.c
  78. jidctfst.c
  79. jidctint.c
  80. jidctred.c
  81. jinclude.h
  82. jmem-android.c
  83. jmem-ashmem.c
  84. jmemansi.c
  85. jmemdos.c
  86. jmemdosa.asm
  87. jmemmac.c
  88. jmemmgr.c
  89. jmemname.c
  90. jmemnobs.c
  91. jmemsys.h
  92. jmorecfg.h
  93. jpegint.h
  94. jpeglib.h
  95. jpegtran.1
  96. jpegtran.c
  97. jquant1.c
  98. jquant2.c
  99. jutils.c
  100. jversion.h
  101. libjpeg.doc
  102. ltconfig
  103. ltmain.sh
  104. makcjpeg.st
  105. makdjpeg.st
  106. makeapps.ds
  107. makefile.ansi
  108. makefile.bcc
  109. makefile.cfg
  110. makefile.dj
  111. makefile.manx
  112. makefile.mc6
  113. makefile.mms
  114. makefile.sas
  115. makefile.unix
  116. makefile.vc
  117. makefile.vms
  118. makefile.wat
  119. makelib.ds
  120. makeproj.mac
  121. makljpeg.st
  122. maktjpeg.st
  123. makvms.opt
  124. MODULE_LICENSE_BSD_LIKE
  125. NOTICE
  126. rdbmp.c
  127. rdcolmap.c
  128. rdgif.c
  129. rdjpgcom.1
  130. rdjpgcom.c
  131. rdppm.c
  132. rdrle.c
  133. rdswitch.c
  134. rdtarga.c
  135. README
  136. structure.doc
  137. testimg.bmp
  138. testimg.jpg
  139. testimg.ppm
  140. testimgp.jpg
  141. testorig.jpg
  142. testprog.jpg
  143. ThirdPartyProject.prop
  144. transupp.c
  145. transupp.h
  146. usage.doc
  147. wizard.doc
  148. wrbmp.c
  149. wrgif.c
  150. wrjpgcom.1
  151. wrjpgcom.c
  152. wrppm.c
  153. wrrle.c
  154. wrtarga.c