1. a4940d1 Add descriptions to help sort out which function goes with which version of the API. by DRC · 10 years ago
  2. 3276045 Add descriptions to help sort out which function goes with which version of the API. by DRC · 10 years ago
  3. fa8bcb8 Compiler warnings by DRC · 10 years ago
  4. 580f391 Fix build broken by r1349 by DRC · 10 years ago
  5. 46a0392 Compiler warnings by DRC · 10 years ago
  6. 26dd86b Restore backward compatibility between libjpeg-turbo 1.3.x JAR and the new JNI library by DRC · 10 years ago
  7. 927a10d Allow the int pixel versions of the various TurboJPEG JNI functions to share the same code as the byte pixel versions. by DRC · 10 years ago
  8. cdcac99 Clean up exception handling in the JNI code. The exception is actually not thrown until the function exits, so we can let the code fall through to bailout: if the TurboJPEG C function fails. Also, per the JNI spec, no other JNI functions can be called between GetPrimitiveArrayCritical() and ReleasePrimitiveArrayCritical(). This hasn't caused any problems thus far, but better safe than sorry. by DRC · 10 years ago
  9. 8951cf0 Clean up exception handling in the JNI code. The exception is actually not thrown until the function exits, so we can let the code fall through to bailout: if the TurboJPEG C function fails. Also, per the JNI spec, no other JNI functions can be called between GetPrimitiveArrayCritical() and ReleasePrimitiveArrayCritical(). This hasn't caused any problems thus far, but better safe than sorry. by DRC · 10 years ago
  10. f7c1105 Oops. Parameter name is "strides", not "stride" by DRC · 10 years ago
  11. 9d77dad Reformat TurboJPEG C API documentation to improve ease of maintenance and to make it more consistent with the javadoc formatting; fix minor error in tjCompressFromYUV() prototype. by DRC · 10 years ago
  12. aecea38 Extend the TurboJPEG C API to support handling YUV images stored in separate image planes instead of a unified buffer by DRC · 10 years ago
  13. 493be61 Clean up and consolidate notes regarding the YUV image format. This also corrects a factual error regarding the padding of the luminance plane-- because we now support 4:1:1, the component width is not necessarily padded to the nearest multiple of 2 if horizontal subsampling is used. by DRC · 10 years ago
  14. 779bd68 Clean up notes using the doxygen @note command by DRC · 10 years ago
  15. d13df21 Clean up notes using the doxygen @note command by DRC · 10 years ago
  16. c71ab2f Make the documentation more readable by displaying fixed-width text (which is used to refer to variables and functions) in a different color. by DRC · 10 years ago
  17. 983503e Fix a display issue in the documentation for tjDecompress2() (doxygen treats a star at the beginning of the line as a list bullet); make the documentation more readable by displaying fixed-width text (which is used to refer to variables and functions) in a different color. by DRC · 10 years ago
  18. aee4f72 12-bit JPEG support by DRC · 10 years ago
  19. 8a74848 Oops. The Windows version of collect_args/uncollect_args uses rsp, so we still need the rsp prologue/epilogue, despite the fact that we aren't using the stack as a work area. This fixes a segfault on Windows caused by r1335. by DRC · 10 years ago
  20. a8ab342 Attempt to improve performance by refactoring the compression-side color conversion and DCT algorithms so that they take full advantage of the additional registers available with 64-bit SSE2. This produces a somewhat yawn-worthy speedup of 2-3%, but at least the code is a lot more readable now. by DRC · 10 years ago
  21. a4f1359 Add support for iOS to libjpeg.gyp. by blundell@chromium.org · 10 years ago
  22. 3728aa0 Fix performance and other issues uncovered in testing with actual ARM64 hardware; formatting tweaks; remove NEON platform check (NEON is always available with ARMv8) by DRC · 10 years ago
  23. 8214555 Include "Installed-Size" field in the deb-control file to prevent Ubuntu from complaining by DRC · 10 years ago
  24. d762c19 Include "Installed-Size" field in the deb-control file to prevent Ubuntu from complaining by DRC · 10 years ago
  25. 2472bc7 Add proper support for Borland compilers (Borland needs section names to be prefixed with an underscore, and it needs OMF object files.) by DRC · 10 years ago
  26. a81f542 Big oops. wrjpgcom on Windows was being built using the rdjpgcom source. by DRC · 10 years ago
  27. 3da1033 Big oops. wrjpgcom on Windows was being built using the rdjpgcom source. by DRC · 10 years ago
  28. 73821bf Big oops. wrjpgcom on Windows was being built using the rdjpgcom source. by DRC · 10 years ago
  29. 2384331 Prevent a buffer overrun if the comment begins with a literal quote character and the string exceeds 65k characters. Also prevent comments longer than 65k characters from being written, since this will produce an incorrect JPEG file. by DRC · 10 years ago
  30. b7d6e84 Prevent a buffer overrun if the comment begins with a literal quote character and the string exceeds 65k characters. Also prevent comments longer than 65k characters from being written, since this will produce an incorrect JPEG file. by DRC · 10 years ago
  31. a8fb48b Remove VMS-specific code by DRC · 10 years ago
  32. 88c7e30 Our copyright string is longer than JMSG_LENGTH_MAX, and this was causing a buffer overrun if output_message() was called with msg_code set to JMSG_COPYRIGHT, or if format_message() was called with msg_code set to JMSG_COPYRIGHT and with a buffer of length JMSG_LENGTH_MAX. by DRC · 10 years ago
  33. d7a2559 Our copyright string is longer than JMSG_LENGTH_MAX, and this was causing a buffer overrun if output_message() was called with msg_code set to JMSG_COPYRIGHT, or if format_message() was called with msg_code set to JMSG_COPYRIGHT and with a buffer of length JMSG_LENGTH_MAX. by DRC · 10 years ago
  34. cf55f0b Our copyright string is longer than JMSG_LENGTH_MAX, and this was causing a buffer overrun if output_message() was called with msg_code set to JMSG_COPYRIGHT, or if format_message() was called with msg_code set to JMSG_COPYRIGHT and with a buffer of length JMSG_LENGTH_MAX. by DRC · 10 years ago
  35. 841fff8 Update libjpeg_turbo to use clz for bitcounting on ARM by noel@chromium.org · 10 years ago
  36. fced14c We don't support non-ANSI C compilers by DRC · 10 years ago
  37. 495e434 Allow for building the MIPS DSPr2 extensions if the host is mips-* as well as mipsel-*. The DSPr2 extensions are little endian, so we still have to check that the compiler defines __MIPSEL__ before enabling them. This paves the way for supporting big-endian MIPS, and in the near term, it allows the SIMD extensions to be built with Sourcery CodeBench. by DRC · 10 years ago
  38. 5ef4630 SIMD-accelerated int upsample routine for MIPS DSPr2 by DRC · 10 years ago
  39. c728cfd Fix MIPS build by DRC · 10 years ago
  40. 5de454b 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. by DRC · 10 years ago
  41. 5033f3e 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. by DRC · 10 years ago
  42. 7f4a81b Further copyright header cleanup by DRC · 10 years ago
  43. da13af6 Further copyright header cleanup by DRC · 10 years ago
  44. d88f7dd Further copyright header cleanup by DRC · 10 years ago
  45. bc56b75 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. by DRC · 10 years ago
  46. 52ded87 Remove all of the NEED_SHORT_EXTERNAL_NAMES stuff. There is scant information available as to which linkers ever had a 15-character global symbol name limit. AFAICT, it might have been a VMS and/or a.out BSD thing, but none of those platforms have ever been supported by libjpeg-turbo (nor are such systems supported by other open source libraries of this nature.) by DRC · 10 years ago
  47. 6408628 Clean up code formatting in the SIMD interface functions by DRC · 10 years ago
  48. 1419852 Clean up code formatting in the SIMD interface functions by DRC · 10 years ago
  49. 1b3fd7e SIMD-accelerated NULL convert routine for MIPS DSPr2 by DRC · 10 years ago
  50. a3c3bbc Fix build, which was broken by the checkin of the MIPS DSPr2 accelerated smooth downsampling routine. Until/unless other platforms include SIMD support for that function, it's just easier to #ifdef around it rather than adding stubs for the other platforms. by DRC · 10 years ago
  51. 0bf325b Fix error in MIPS DSPr2 accelerated smooth downsample routine by DRC · 10 years ago
  52. 6a61c1e SIMD-accelerated h2v2 smooth downsampling routine for MIPS DSPr2 by DRC · 10 years ago
  53. 1e9cbba Minor tweak to improve code readability by DRC · 10 years ago
  54. 3b489c3 Minor tweak to improve code readability by DRC · 10 years ago
  55. 976fd96 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. by DRC · 10 years ago
  56. b844eaa SIMD-accelerated merged upsampling routines for MIPS DSPr2 by DRC · 10 years ago
  57. 3402a66 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. by DRC · 10 years ago
  58. 78df2e6 Add support for decompressing to RGB565 (16-bit) pixels by DRC · 10 years ago
  59. 6e8220e Document -rgb option in djpeg man page; "gray-scale"="grayscale" by DRC · 10 years ago
  60. 90d6c38 Document -rgb option in djpeg man page; "gray-scale"="grayscale" by DRC · 10 years ago
  61. 2a9f0cf Use 2-space indentation for the enums, to be consistent with the structs by DRC · 10 years ago
  62. 333e918 Use 2-space indentation for the enums, to be consistent with the structs by DRC · 10 years ago
  63. e3cb4eb Document the fact that the fast integer FDCT is not fully accelerated for quality levels above 97 + additional wordsmithing by DRC · 10 years ago
  64. 05524e6 Document the fact that the fast integer FDCT is not fully accelerated for quality levels above 97 + additional wordsmithing by DRC · 10 years ago
  65. 715bb41 Port the more accurate (and slightly faster) floating point IDCT implementation from jpeg-8a and later. New research revealed that the SSE/SSE2 floating point IDCT implementation was actually more accurate than the jpeg-6b implementation, not less, which is why its mathematical results have always differed from those of the jpeg-6b implementation. This patch brings the accuracy of the C code in line with that of the SSE/SSE2 code. by DRC · 10 years ago
  66. a758460 Provide a more thorough description of the trade-offs between the various DCT/IDCT algorithms, based on new resarch by DRC · 10 years ago
  67. 8940e6c Provide a more thorough description of the trade-offs between the various DCT/IDCT algorithms, based on new resarch by DRC · 10 years ago
  68. b775351 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.) by DRC · 10 years ago
  69. e47364a Modify Windows build system to take into account new assembly file names by DRC · 10 years ago
  70. 24e92e9 Using subdirectories unfortunately opened up a can of worms. In order to prevent object name conflicts, it is necessary to use the subdir-objects automake directive, but it simply doesn't work right on some of the versions of automake we still have to support. Another option would be to add a separate Makefile.am file to each subdirectory, but that requires maintaining a completely different set of build rules for each one. Fortunately, however, we're in the 21st century now, so we can use filenames longer than 8.3. by DRC · 10 years ago
  71. 72130be Re-organize the x86/x86-64 SIMD routines into separate folders by instruction set so we can name each routine similarly to its corresponding C file. This also makes it easier to add support for new instruction sets. by DRC · 10 years ago
  72. 1a45b81 Remove trailing spaces (+ one additional tab in TJUnitTest.java that was missed in the previous commit) by DRC · 10 years ago
  73. e5eaf37 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.) by DRC · 10 years ago
  74. 771886c Fix an error in the MIPS DSPr2 fancy upsampling routine by DRC · 10 years ago
  75. a32b3ec Fix regression that caused 'make test' to fail with non-x86 SIMD code. The round-off error in the SIMD float DCT/IDCT routines only exists in the SSE and SSE2 implementations. by DRC · 10 years ago
  76. 29d30cb Shared the rm commands to reduce as much output noise as possible by DRC · 10 years ago
  77. 35db75e Redesign the libjpeg regression tests so that they fully cover all of the SIMD-accelerated algorithms (and most of the other ones as well) by DRC · 10 years ago
  78. 393bac6 Android build instructions by DRC · 10 years ago
  79. b0a9cca Replace our custom version of Android.mk with instructions on how to build a libjpeg-turbo SDK for Android using autotools. Upon consulting with AOSP, it appears that Android.mk isn't really necessary except when building libjpeg-turbo for use by the Android platform itself, and it makes more sense for them to maintain the makefile for that purpose rather than for it to be upstreamed. ndk-build has serious limitations that prevent it from being used to generate static libjpeg-turbo libraries (mainly, it isn't possible to combine pre-built objects from one module into a static library for another module, which is necessary because the SIMD extensions sometimes have to be built with different CFLAGS than the rest of the code.) In general, it's just better not to introduce a new build system. by DRC · 10 years ago
  80. 425c5a5 Wordsmithing by DRC · 10 years ago
  81. dab6b8a Wordsmithing by DRC · 10 years ago
  82. 3434786 SIMD-accelerated slow integer IDCT routine for MIPS DSPr2 by DRC · 10 years ago
  83. f57b8a6 Phrasing. Boom. by DRC · 10 years ago
  84. 66129dc Redesign the libjpeg regression tests so that they fully cover all of the SIMD-accelerated algorithms (and most of the other ones as well) by DRC · 10 years ago
  85. 06296e8 First pass at an Android makefile by DRC · 10 years ago
  86. 61976bd We use __CHAR_UNSIGNED__ (automatically defined by the AC_C_CHAR_UNSIGNED macro) rather than CHAR_IS_UNSIGNED (defined by custom autoconf code in libjpeg that we didn't port over), although I doubt it matters on any of the platforms we support. by DRC · 10 years ago
  87. 4dae78f We use __CHAR_UNSIGNED__ (automatically defined by the AC_C_CHAR_UNSIGNED macro) rather than CHAR_IS_UNSIGNED (defined by custom autoconf code in libjpeg that we didn't port over), although I doubt it matters on any of the platforms we support. by DRC · 10 years ago
  88. 230d09d Fix crashes and bogus output in the CMYK and decode-to-YUV features that occurred if JCS_EXTENSIONS wasn't defined. by DRC · 10 years ago
  89. 6887f05 Fix 'make dist' by DRC · 10 years ago
  90. ff6961f This patch accomplishes the following: by DRC · 10 years ago
  91. 714839d This patch accomplishes the following: by DRC · 10 years ago
  92. beb0b33 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: by DRC · 10 years ago
  93. b1398cb Prevent svn:mergeinfo from being modified on Makefile.am and simd/jsimd*.c every time a merge is done. by DRC · 10 years ago
  94. ac9a92e 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: by DRC · 10 years ago
  95. 06fa20d 1.3.2 by DRC · 10 years ago
  96. 0816d08 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: by DRC · 10 years ago
  97. fe9c907 Minor comment correction (we support the full range of IDCT scaling factors now.) by DRC · 10 years ago
  98. d76ba91 Minor comment correction (we support the full range of IDCT scaling factors now.) by DRC · 10 years ago
  99. d0c9f0c Clarify how to do a 64-bit build using the Visual Studio IDE by DRC · 10 years ago
  100. 8666f4f Clarify how to do a 64-bit build using the Visual Studio IDE by DRC · 10 years ago