I'll address the review comments that are relevant to the upstream code
here:

(1) jround_up() argument types:  this was the result of a bad game of
Celebrity Whack-a-Mole that I played while trying to port the code to
Win64.  Jeff's idea of creating a local, power-of-2-specific round-up
function for jmemmgr.c is a better idea, and I've done so in a new patch
(attachment 522544) (actually, I made it a macro instead of a function.)
Please let me know if that looks like a reasonable solution.

(2) RGB_{RED|GREEN|BLUE} macro conflicts on OS/2 (OS/2?  Really?):  This
seems like an innocuous enough patch, although I'd rather have it in
jmorecfg.h instead of jpeglib.h.  I'd also like to know more of the back
story as to why OS/2 is defining those macros.  Is this a generic
problem that anyone building libjpeg-turbo on OS/2 would encounter?  My
lingering doubt here is that libjpeg supports OS/2, so I wonder why they
haven't encountered this problem on that platform.  Is Mozilla including
some header file that causes those macros to be defined?

(3) bitscan instructions:  I tested the proposed patch to make
jcdctmgr.c use GCC 3.4+ compiler intrinsics to replace flss() with
bitscan instructions, but I cannot observe any measurable speedup from
this (tested several different image types and platforms, as well as
32-bit and 64-bit.)  If it were even 2% faster, I would agree to include
it, but a performance patch that causes no appreciable increase in
performance does nothing but needlessly obfuscate the code.

(4) The tables in jccolor.c are part of the optimized RGB-to-grayscale
conversion routines.  These are pre-computed R-to-luminance, G-to-
luminance, and B-to-luminance conversion values.  The problem with this
approach is that it loses a bit of accuracy due to round-off, so I
recently checked in code to the SVN trunk (1.2 working version) that
uses new SIMD routines to perform RGB-to-grayscale conversion.  This is
faster and eliminates the round-off issues, as well as the need for the
tables in jccolor.c and the #ifdef in rgb_gray_convert().

(5) The rest of the concerns regarding jccolor.c have already been
addressed in trunk as well (pulling rgb_red, rgb_green, rgb_blue out of
the loop, etc.)

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/612377

Title:
  [needs-packaging] libjpeg-turbo

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to