author | Ehsan Akhgari <ehsan@mozilla.com> |
Mon, 17 Sep 2012 22:00:07 -0400 | |
changeset 107331 | 14eac84d5ce6a11f0ffea4512b21641fd4a7fb9c |
parent 107330 | 62a48b2712fb04037d2992910af484c48d047296 |
child 107332 | 2cb646fdcccef05f3c898df4556cd92d0375e6f9 |
push id | 14982 |
push user | eakhgari@mozilla.com |
push date | Tue, 18 Sep 2012 02:00:18 +0000 |
treeherder | mozilla-inbound@14eac84d5ce6 [default view] [failures only] |
perfherder | [talos] [build metrics] [platform microbench] (compared to previous push) |
bugs | 785321 |
milestone | 18.0a1 |
first release with | nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
|
last release without | nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
|
--- a/gfx/ycbcr/convert.patch +++ b/gfx/ycbcr/convert.patch @@ -307,35 +307,16 @@ diff --git a/gfx/ycbcr/yuv_convert.cpp b // Diagram showing origin and direction of source sampling. // ->0 4<- // 7 3 // // 6 5 // ->1 2<- // Rotations that start at right side of image. if ((view_rotate == ROTATE_180) || -@@ -243,17 +262,17 @@ void ScaleYUVToRGB32(const uint8* y_buf, - uv_pitch = 1; - } - } - - // Need padding because FilterRows() will write 1 to 16 extra pixels - // after the end for SSE2 version. - uint8 yuvbuf[16 + kFilterBufferSize * 3 + 16]; - uint8* ybuf = -- reinterpret_cast<uint8*>(reinterpret_cast<uintptr_t>(yuvbuf + 15) & ~15); -+ reinterpret_cast<uint8*>(reinterpret_cast<uintptr_t>(yuvbuf + 15) & ~15); - uint8* ubuf = ybuf + kFilterBufferSize; - uint8* vbuf = ubuf + kFilterBufferSize; - // TODO(fbarchard): Fixed point math is off by 1 on negatives. - int yscale_fixed = (source_height << kFractionBits) / height; - - // TODO(fbarchard): Split this into separate function for better efficiency. - for (int y = 0; y < height; ++y) { - uint8* dest_pixel = rgb_buf + y * rgb_pitch; @@ -276,17 +295,17 @@ void ScaleYUVToRGB32(const uint8* y_buf, int source_uv_fraction = ((source_y_subpixel >> y_shift) & kFractionMask) >> 8; const uint8* y_ptr = y0_ptr; const uint8* u_ptr = u0_ptr; const uint8* v_ptr = v0_ptr; // Apply vertical filtering if necessary.