mirror of
https://github.com/webmproject/libwebp.git
synced 2025-07-16 22:09:57 +02:00
add WebPInt32ToMem
and use it in calls containing _mm_cvtsi32_si128; this calls WebPUint32ToMem, but corrects the type to avoid runtime warnings with clang -fsanitize=integer of the form: implicit conversion from type 'int' of value -1904123502 (32-bit, signed) to type 'uint32_t' (aka 'unsigned int') changed the value to 2390843794 (32-bit, unsigned) Bug: b/229626362 Change-Id: I20545e822d8045fa44f688241879206055a0a148
This commit is contained in:
@ -85,7 +85,7 @@ static void RescalerImportRowExpand_SSE2(WebPRescaler* const wrk,
|
||||
const __m128i mult = _mm_cvtsi32_si128(((x_add - accum) << 16) | accum);
|
||||
const __m128i out = _mm_madd_epi16(cur_pixels, mult);
|
||||
assert(sizeof(*frow) == sizeof(uint32_t));
|
||||
WebPUint32ToMem((uint8_t*)frow, _mm_cvtsi128_si32(out));
|
||||
WebPInt32ToMem((uint8_t*)frow, _mm_cvtsi128_si32(out));
|
||||
frow += 1;
|
||||
if (frow >= frow_end) break;
|
||||
accum -= wrk->x_sub;
|
||||
|
Reference in New Issue
Block a user