mirror of
https://chromium.googlesource.com/libyuv/libyuv
synced 2026-02-09 11:16:43 +08:00
width and 3 bug fix in odd width support of ARGBToI411
TBR=harryjin@google.com BUG=none Review URL: https://codereview.chromium.org/1415213002 .
This commit is contained in:
parent
ba4b409d51
commit
5bf4de0806
@ -678,17 +678,17 @@ ANY1(ARGBSetRow_Any_NEON, ARGBSetRow_NEON, uint32, 4, 3)
|
|||||||
temp + SS(r, UVSHIFT) * BPP - BPP, 4); \
|
temp + SS(r, UVSHIFT) * BPP - BPP, 4); \
|
||||||
} \
|
} \
|
||||||
/* repeat last 4 - 12 bytes for 411 subsampler */ \
|
/* repeat last 4 - 12 bytes for 411 subsampler */ \
|
||||||
if (((width & 1) == 1) && BPP == 4 && DUVSHIFT == 2) { \
|
if (((width & 3) == 1) && BPP == 4 && DUVSHIFT == 2) { \
|
||||||
memcpy(temp + SS(r, UVSHIFT) * BPP, \
|
memcpy(temp + SS(r, UVSHIFT) * BPP, \
|
||||||
temp + SS(r, UVSHIFT) * BPP - BPP, 4); \
|
temp + SS(r, UVSHIFT) * BPP - BPP, 4); \
|
||||||
memcpy(temp + SS(r, UVSHIFT) * BPP + 4, \
|
memcpy(temp + SS(r, UVSHIFT) * BPP + 4, \
|
||||||
temp + SS(r, UVSHIFT) * BPP - BPP, 8); \
|
temp + SS(r, UVSHIFT) * BPP - BPP, 8); \
|
||||||
} \
|
} \
|
||||||
if (((width & 1) == 2) && BPP == 4 && DUVSHIFT == 2) { \
|
if (((width & 3) == 2) && BPP == 4 && DUVSHIFT == 2) { \
|
||||||
memcpy(temp + SS(r, UVSHIFT) * BPP, \
|
memcpy(temp + SS(r, UVSHIFT) * BPP, \
|
||||||
temp + SS(r, UVSHIFT) * BPP - BPP * 2, 8); \
|
temp + SS(r, UVSHIFT) * BPP - BPP * 2, 8); \
|
||||||
} \
|
} \
|
||||||
if (((width & 1) == 3) && BPP == 4 && DUVSHIFT == 2) { \
|
if (((width & 3) == 3) && BPP == 4 && DUVSHIFT == 2) { \
|
||||||
memcpy(temp + SS(r, UVSHIFT) * BPP, \
|
memcpy(temp + SS(r, UVSHIFT) * BPP, \
|
||||||
temp + SS(r, UVSHIFT) * BPP - BPP, 4); \
|
temp + SS(r, UVSHIFT) * BPP - BPP, 4); \
|
||||||
} \
|
} \
|
||||||
|
|||||||
@ -33,7 +33,7 @@ DEFINE_int32(libyuv_flags, 0, "cpu flags for reference code. 0 = C -1 = asm");
|
|||||||
// Set flags to -1 for benchmarking to avoid slower C code.
|
// Set flags to -1 for benchmarking to avoid slower C code.
|
||||||
|
|
||||||
LibYUVConvertTest::LibYUVConvertTest() :
|
LibYUVConvertTest::LibYUVConvertTest() :
|
||||||
benchmark_iterations_(BENCHMARK_ITERATIONS), benchmark_width_(128),
|
benchmark_iterations_(BENCHMARK_ITERATIONS), benchmark_width_(130),
|
||||||
benchmark_height_(72), disable_cpu_flags_(0) {
|
benchmark_height_(72), disable_cpu_flags_(0) {
|
||||||
const char* repeat = getenv("LIBYUV_REPEAT");
|
const char* repeat = getenv("LIBYUV_REPEAT");
|
||||||
if (repeat) {
|
if (repeat) {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user