add missing ()s to macro parameters

BUG=webp:355

Change-Id: I616c6d3540d6551edd1b1cfdb5bffcf0a044c90f
This commit is contained in:
James Zern 2017-08-04 17:00:55 -07:00
parent 6473d20b3e
commit 7beed2807b
11 changed files with 74 additions and 72 deletions

View File

@ -233,20 +233,20 @@ static int GetSignedBits(const uint8_t* const data, size_t data_size, size_t nb,
return 1; return 1;
} }
#define GET_BITS(v, n) \ #define GET_BITS(v, n) \
do { \ do { \
if (!GetBits(data, data_size, n, &v, bit_pos)) { \ if (!GetBits(data, data_size, n, &(v), bit_pos)) { \
LOG_ERROR("Truncated lossy bitstream."); \ LOG_ERROR("Truncated lossy bitstream."); \
return WEBP_INFO_TRUNCATED_DATA; \ return WEBP_INFO_TRUNCATED_DATA; \
} \ } \
} while (0) } while (0)
#define GET_SIGNED_BITS(v, n) \ #define GET_SIGNED_BITS(v, n) \
do { \ do { \
if (!GetSignedBits(data, data_size, n, &v, bit_pos)) { \ if (!GetSignedBits(data, data_size, n, &(v), bit_pos)) { \
LOG_ERROR("Truncated lossy bitstream."); \ LOG_ERROR("Truncated lossy bitstream."); \
return WEBP_INFO_TRUNCATED_DATA; \ return WEBP_INFO_TRUNCATED_DATA; \
} \ } \
} while (0) } while (0)
static WebPInfoStatus ParseLossySegmentHeader(const WebPInfo* const webp_info, static WebPInfoStatus ParseLossySegmentHeader(const WebPInfo* const webp_info,
@ -462,12 +462,12 @@ static int LLGetBits(const uint8_t* const data, size_t data_size, size_t nb,
return 1; return 1;
} }
#define LL_GET_BITS(v, n) \ #define LL_GET_BITS(v, n) \
do { \ do { \
if (!LLGetBits(data, data_size, n, &v, bit_pos)) { \ if (!LLGetBits(data, data_size, n, &(v), bit_pos)) { \
LOG_ERROR("Truncated lossless bitstream."); \ LOG_ERROR("Truncated lossless bitstream."); \
return WEBP_INFO_TRUNCATED_DATA; \ return WEBP_INFO_TRUNCATED_DATA; \
} \ } \
} while (0) } while (0)
static WebPInfoStatus ParseLosslessTransform(WebPInfo* const webp_info, static WebPInfoStatus ParseLosslessTransform(WebPInfo* const webp_info,

View File

@ -36,7 +36,7 @@ static int IsValidColorspace(int webp_csp_mode) {
// strictly speaking, the very last (or first, if flipped) row // strictly speaking, the very last (or first, if flipped) row
// doesn't require padding. // doesn't require padding.
#define MIN_BUFFER_SIZE(WIDTH, HEIGHT, STRIDE) \ #define MIN_BUFFER_SIZE(WIDTH, HEIGHT, STRIDE) \
(uint64_t)(STRIDE) * ((HEIGHT) - 1) + (WIDTH) ((uint64_t)(STRIDE) * ((HEIGHT) - 1) + (WIDTH))
static VP8StatusCode CheckDecBuffer(const WebPDecBuffer* const buffer) { static VP8StatusCode CheckDecBuffer(const WebPDecBuffer* const buffer) {
int ok = 1; int ok = 1;

View File

@ -25,7 +25,7 @@ static WEBP_INLINE uint8_t clip_8b(int v) {
// Transforms (Paragraph 14.4) // Transforms (Paragraph 14.4)
#define STORE(x, y, v) \ #define STORE(x, y, v) \
dst[x + y * BPS] = clip_8b(dst[x + y * BPS] + ((v) >> 3)) dst[(x) + (y) * BPS] = clip_8b(dst[(x) + (y) * BPS] + ((v) >> 3))
#define STORE2(y, dc, d, c) do { \ #define STORE2(y, dc, d, c) do { \
const int DC = (dc); \ const int DC = (dc); \

View File

@ -260,8 +260,8 @@ static WEBP_INLINE void SignedShift8b(__m128i* const x) {
} }
#define FLIP_SIGN_BIT2(a, b) { \ #define FLIP_SIGN_BIT2(a, b) { \
a = _mm_xor_si128(a, sign_bit); \ (a) = _mm_xor_si128(a, sign_bit); \
b = _mm_xor_si128(b, sign_bit); \ (b) = _mm_xor_si128(b, sign_bit); \
} }
#define FLIP_SIGN_BIT4(a, b, c, d) { \ #define FLIP_SIGN_BIT4(a, b, c, d) { \
@ -630,41 +630,41 @@ static void SimpleHFilter16i(uint8_t* p, int stride, int thresh) {
// Complex In-loop filtering (Paragraph 15.3) // Complex In-loop filtering (Paragraph 15.3)
#define MAX_DIFF1(p3, p2, p1, p0, m) do { \ #define MAX_DIFF1(p3, p2, p1, p0, m) do { \
m = MM_ABS(p1, p0); \ (m) = MM_ABS(p1, p0); \
m = _mm_max_epu8(m, MM_ABS(p3, p2)); \ (m) = _mm_max_epu8(m, MM_ABS(p3, p2)); \
m = _mm_max_epu8(m, MM_ABS(p2, p1)); \ (m) = _mm_max_epu8(m, MM_ABS(p2, p1)); \
} while (0) } while (0)
#define MAX_DIFF2(p3, p2, p1, p0, m) do { \ #define MAX_DIFF2(p3, p2, p1, p0, m) do { \
m = _mm_max_epu8(m, MM_ABS(p1, p0)); \ (m) = _mm_max_epu8(m, MM_ABS(p1, p0)); \
m = _mm_max_epu8(m, MM_ABS(p3, p2)); \ (m) = _mm_max_epu8(m, MM_ABS(p3, p2)); \
m = _mm_max_epu8(m, MM_ABS(p2, p1)); \ (m) = _mm_max_epu8(m, MM_ABS(p2, p1)); \
} while (0) } while (0)
#define LOAD_H_EDGES4(p, stride, e1, e2, e3, e4) { \ #define LOAD_H_EDGES4(p, stride, e1, e2, e3, e4) { \
e1 = _mm_loadu_si128((__m128i*)&(p)[0 * stride]); \ (e1) = _mm_loadu_si128((__m128i*)&(p)[0 * (stride)]); \
e2 = _mm_loadu_si128((__m128i*)&(p)[1 * stride]); \ (e2) = _mm_loadu_si128((__m128i*)&(p)[1 * (stride)]); \
e3 = _mm_loadu_si128((__m128i*)&(p)[2 * stride]); \ (e3) = _mm_loadu_si128((__m128i*)&(p)[2 * (stride)]); \
e4 = _mm_loadu_si128((__m128i*)&(p)[3 * stride]); \ (e4) = _mm_loadu_si128((__m128i*)&(p)[3 * (stride)]); \
} }
#define LOADUV_H_EDGE(p, u, v, stride) do { \ #define LOADUV_H_EDGE(p, u, v, stride) do { \
const __m128i U = _mm_loadl_epi64((__m128i*)&(u)[(stride)]); \ const __m128i U = _mm_loadl_epi64((__m128i*)&(u)[(stride)]); \
const __m128i V = _mm_loadl_epi64((__m128i*)&(v)[(stride)]); \ const __m128i V = _mm_loadl_epi64((__m128i*)&(v)[(stride)]); \
p = _mm_unpacklo_epi64(U, V); \ (p) = _mm_unpacklo_epi64(U, V); \
} while (0) } while (0)
#define LOADUV_H_EDGES4(u, v, stride, e1, e2, e3, e4) { \ #define LOADUV_H_EDGES4(u, v, stride, e1, e2, e3, e4) { \
LOADUV_H_EDGE(e1, u, v, 0 * stride); \ LOADUV_H_EDGE(e1, u, v, 0 * (stride)); \
LOADUV_H_EDGE(e2, u, v, 1 * stride); \ LOADUV_H_EDGE(e2, u, v, 1 * (stride)); \
LOADUV_H_EDGE(e3, u, v, 2 * stride); \ LOADUV_H_EDGE(e3, u, v, 2 * (stride)); \
LOADUV_H_EDGE(e4, u, v, 3 * stride); \ LOADUV_H_EDGE(e4, u, v, 3 * (stride)); \
} }
#define STOREUV(p, u, v, stride) { \ #define STOREUV(p, u, v, stride) { \
_mm_storel_epi64((__m128i*)&u[(stride)], p); \ _mm_storel_epi64((__m128i*)&(u)[(stride)], p); \
p = _mm_srli_si128(p, 8); \ (p) = _mm_srli_si128(p, 8); \
_mm_storel_epi64((__m128i*)&v[(stride)], p); \ _mm_storel_epi64((__m128i*)&(v)[(stride)], p); \
} }
static WEBP_INLINE void ComplexMask(const __m128i* const p1, static WEBP_INLINE void ComplexMask(const __m128i* const p1,

View File

@ -20,8 +20,8 @@
// Helpful macro. // Helpful macro.
# define SANITY_CHECK(in, out) \ # define SANITY_CHECK(in, out) \
assert(in != NULL); \ assert((in) != NULL); \
assert(out != NULL); \ assert((out) != NULL); \
assert(width > 0); \ assert(width > 0); \
assert(height > 0); \ assert(height > 0); \
assert(stride >= width); \ assert(stride >= width); \

View File

@ -24,8 +24,8 @@
// Helpful macro. // Helpful macro.
# define SANITY_CHECK(in, out) \ # define SANITY_CHECK(in, out) \
assert(in != NULL); \ assert((in) != NULL); \
assert(out != NULL); \ assert((out) != NULL); \
assert(width > 0); \ assert(width > 0); \
assert(height > 0); \ assert(height > 0); \
assert(stride >= width); \ assert(stride >= width); \

View File

@ -21,7 +21,7 @@
#include "./lossless_common.h" #include "./lossless_common.h"
// For sign-extended multiplying constants, pre-shifted by 5: // For sign-extended multiplying constants, pre-shifted by 5:
#define CST_5b(X) (((int16_t)((uint16_t)X << 8)) >> 5) #define CST_5b(X) (((int16_t)((uint16_t)(X) << 8)) >> 5)
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
// Subtract-Green Transform // Subtract-Green Transform
@ -261,9 +261,9 @@ static void HistogramAdd(const VP8LHistogram* const a,
// Checks whether the X or Y contribution is worth computing and adding. // Checks whether the X or Y contribution is worth computing and adding.
// Used in loop unrolling. // Used in loop unrolling.
#define ANALYZE_X_OR_Y(x_or_y, j) \ #define ANALYZE_X_OR_Y(x_or_y, j) \
do { \ do { \
if (x_or_y[i + j] != 0) retval -= VP8LFastSLog2(x_or_y[i + j]); \ if ((x_or_y)[i + (j)] != 0) retval -= VP8LFastSLog2((x_or_y)[i + (j)]); \
} while (0) } while (0)
// Checks whether the X + Y contribution is worth computing and adding. // Checks whether the X + Y contribution is worth computing and adding.

View File

@ -381,7 +381,7 @@ static void PredictorAdd11_SSE2(const uint32_t* in, const uint32_t* upper,
#define DO_PRED12_SHIFT(DIFF, LANE) do { \ #define DO_PRED12_SHIFT(DIFF, LANE) do { \
/* Shift the pre-computed value for the next iteration.*/ \ /* Shift the pre-computed value for the next iteration.*/ \
if (LANE == 0) (DIFF) = _mm_srli_si128((DIFF), 8); \ if ((LANE) == 0) (DIFF) = _mm_srli_si128((DIFF), 8); \
src = _mm_srli_si128(src, 4); \ src = _mm_srli_si128(src, 4); \
} while (0) } while (0)

View File

@ -63,17 +63,17 @@ static void FUNC_NAME(const uint8_t* top_y, const uint8_t* bottom_y, \
const uint32_t uv0 = (diag_12 + tl_uv) >> 1; \ const uint32_t uv0 = (diag_12 + tl_uv) >> 1; \
const uint32_t uv1 = (diag_03 + t_uv) >> 1; \ const uint32_t uv1 = (diag_03 + t_uv) >> 1; \
FUNC(top_y[2 * x - 1], uv0 & 0xff, (uv0 >> 16), \ FUNC(top_y[2 * x - 1], uv0 & 0xff, (uv0 >> 16), \
top_dst + (2 * x - 1) * XSTEP); \ top_dst + (2 * x - 1) * (XSTEP)); \
FUNC(top_y[2 * x - 0], uv1 & 0xff, (uv1 >> 16), \ FUNC(top_y[2 * x - 0], uv1 & 0xff, (uv1 >> 16), \
top_dst + (2 * x - 0) * XSTEP); \ top_dst + (2 * x - 0) * (XSTEP)); \
} \ } \
if (bottom_y != NULL) { \ if (bottom_y != NULL) { \
const uint32_t uv0 = (diag_03 + l_uv) >> 1; \ const uint32_t uv0 = (diag_03 + l_uv) >> 1; \
const uint32_t uv1 = (diag_12 + uv) >> 1; \ const uint32_t uv1 = (diag_12 + uv) >> 1; \
FUNC(bottom_y[2 * x - 1], uv0 & 0xff, (uv0 >> 16), \ FUNC(bottom_y[2 * x - 1], uv0 & 0xff, (uv0 >> 16), \
bottom_dst + (2 * x - 1) * XSTEP); \ bottom_dst + (2 * x - 1) * (XSTEP)); \
FUNC(bottom_y[2 * x + 0], uv1 & 0xff, (uv1 >> 16), \ FUNC(bottom_y[2 * x + 0], uv1 & 0xff, (uv1 >> 16), \
bottom_dst + (2 * x + 0) * XSTEP); \ bottom_dst + (2 * x + 0) * (XSTEP)); \
} \ } \
tl_uv = t_uv; \ tl_uv = t_uv; \
l_uv = uv; \ l_uv = uv; \
@ -82,12 +82,12 @@ static void FUNC_NAME(const uint8_t* top_y, const uint8_t* bottom_y, \
{ \ { \
const uint32_t uv0 = (3 * tl_uv + l_uv + 0x00020002u) >> 2; \ const uint32_t uv0 = (3 * tl_uv + l_uv + 0x00020002u) >> 2; \
FUNC(top_y[len - 1], uv0 & 0xff, (uv0 >> 16), \ FUNC(top_y[len - 1], uv0 & 0xff, (uv0 >> 16), \
top_dst + (len - 1) * XSTEP); \ top_dst + (len - 1) * (XSTEP)); \
} \ } \
if (bottom_y != NULL) { \ if (bottom_y != NULL) { \
const uint32_t uv0 = (3 * l_uv + tl_uv + 0x00020002u) >> 2; \ const uint32_t uv0 = (3 * l_uv + tl_uv + 0x00020002u) >> 2; \
FUNC(bottom_y[len - 1], uv0 & 0xff, (uv0 >> 16), \ FUNC(bottom_y[len - 1], uv0 & 0xff, (uv0 >> 16), \
bottom_dst + (len - 1) * XSTEP); \ bottom_dst + (len - 1) * (XSTEP)); \
} \ } \
} \ } \
} }
@ -157,7 +157,7 @@ extern void FUNC_NAME(const uint8_t* y, const uint8_t* u, const uint8_t* v, \
void FUNC_NAME(const uint8_t* y, const uint8_t* u, const uint8_t* v, \ void FUNC_NAME(const uint8_t* y, const uint8_t* u, const uint8_t* v, \
uint8_t* dst, int len) { \ uint8_t* dst, int len) { \
int i; \ int i; \
for (i = 0; i < len; ++i) FUNC(y[i], u[i], v[i], &dst[i * XSTEP]); \ for (i = 0; i < len; ++i) FUNC(y[i], u[i], v[i], &dst[i * (XSTEP)]); \
} }
YUV444_FUNC(WebPYuv444ToRgb_C, VP8YuvToRgb, 3) YUV444_FUNC(WebPYuv444ToRgb_C, VP8YuvToRgb, 3)

View File

@ -83,8 +83,8 @@
GET_M(ad, s, diag2); /* diag2 = (3a + b + c + 3d) / 8 */ \ GET_M(ad, s, diag2); /* diag2 = (3a + b + c + 3d) / 8 */ \
\ \
/* pack the alternate pixels */ \ /* pack the alternate pixels */ \
PACK_AND_STORE(a, b, diag1, diag2, out + 0); /* store top */ \ PACK_AND_STORE(a, b, diag1, diag2, (out) + 0); /* store top */ \
PACK_AND_STORE(c, d, diag2, diag1, out + 2 * 32); /* store bottom */ \ PACK_AND_STORE(c, d, diag2, diag1, (out) + 2 * 32); /* store bottom */ \
} }
// Turn the macro into a function for reducing code-size when non-critical // Turn the macro into a function for reducing code-size when non-critical
@ -108,23 +108,23 @@ static void Upsample32Pixels(const uint8_t r1[], const uint8_t r2[],
top_dst, bottom_dst, cur_x, num_pixels) { \ top_dst, bottom_dst, cur_x, num_pixels) { \
int n; \ int n; \
for (n = 0; n < (num_pixels); ++n) { \ for (n = 0; n < (num_pixels); ++n) { \
FUNC(top_y[(cur_x) + n], r_u[n], r_v[n], \ FUNC((top_y)[(cur_x) + n], r_u[n], r_v[n], \
top_dst + ((cur_x) + n) * XSTEP); \ (top_dst) + ((cur_x) + n) * (XSTEP)); \
} \ } \
if (bottom_y != NULL) { \ if ((bottom_y) != NULL) { \
for (n = 0; n < (num_pixels); ++n) { \ for (n = 0; n < (num_pixels); ++n) { \
FUNC(bottom_y[(cur_x) + n], r_u[64 + n], r_v[64 + n], \ FUNC((bottom_y)[(cur_x) + n], r_u[64 + n], r_v[64 + n], \
bottom_dst + ((cur_x) + n) * XSTEP); \ (bottom_dst) + ((cur_x) + n) * (XSTEP)); \
} \ } \
} \ } \
} }
#define CONVERT2RGB_32(FUNC, XSTEP, top_y, bottom_y, \ #define CONVERT2RGB_32(FUNC, XSTEP, top_y, bottom_y, \
top_dst, bottom_dst, cur_x) do { \ top_dst, bottom_dst, cur_x) do { \
FUNC##32_SSE2(top_y + (cur_x), r_u, r_v, top_dst + (cur_x) * XSTEP); \ FUNC##32_SSE2((top_y) + (cur_x), r_u, r_v, (top_dst) + (cur_x) * (XSTEP)); \
if (bottom_y != NULL) { \ if ((bottom_y) != NULL) { \
FUNC##32_SSE2(bottom_y + (cur_x), r_u + 64, r_v + 64, \ FUNC##32_SSE2((bottom_y) + (cur_x), r_u + 64, r_v + 64, \
bottom_dst + (cur_x) * XSTEP); \ (bottom_dst) + (cur_x) * (XSTEP)); \
} \ } \
} while (0) } while (0)
@ -220,9 +220,11 @@ static void FUNC_NAME(const uint8_t* y, const uint8_t* u, const uint8_t* v, \
uint8_t* dst, int len) { \ uint8_t* dst, int len) { \
int i; \ int i; \
const int max_len = len & ~31; \ const int max_len = len & ~31; \
for (i = 0; i < max_len; i += 32) CALL(y + i, u + i, v + i, dst + i * XSTEP);\ for (i = 0; i < max_len; i += 32) { \
CALL(y + i, u + i, v + i, dst + i * (XSTEP)); \
} \
if (i < len) { /* C-fallback */ \ if (i < len) { /* C-fallback */ \
CALL_C(y + i, u + i, v + i, dst + i * XSTEP, len - i); \ CALL_C(y + i, u + i, v + i, dst + i * (XSTEP), len - i); \
} \ } \
} }

View File

@ -22,14 +22,14 @@
static void FUNC_NAME(const uint8_t* y, \ static void FUNC_NAME(const uint8_t* y, \
const uint8_t* u, const uint8_t* v, \ const uint8_t* u, const uint8_t* v, \
uint8_t* dst, int len) { \ uint8_t* dst, int len) { \
const uint8_t* const end = dst + (len & ~1) * XSTEP; \ const uint8_t* const end = dst + (len & ~1) * (XSTEP); \
while (dst != end) { \ while (dst != end) { \
FUNC(y[0], u[0], v[0], dst); \ FUNC(y[0], u[0], v[0], dst); \
FUNC(y[1], u[0], v[0], dst + XSTEP); \ FUNC(y[1], u[0], v[0], dst + (XSTEP)); \
y += 2; \ y += 2; \
++u; \ ++u; \
++v; \ ++v; \
dst += 2 * XSTEP; \ dst += 2 * (XSTEP); \
} \ } \
if (len & 1) { \ if (len & 1) { \
FUNC(y[0], u[0], v[0], dst); \ FUNC(y[0], u[0], v[0], dst); \