Replacing CHECK_BOUNDS macro with inline check_bounds function. Change-Id: I8437113da256088576bf66401186e35125089c03
diff --git a/vp9/encoder/vp9_mcomp.c b/vp9/encoder/vp9_mcomp.c index fee11fd..aec8de3 100644 --- a/vp9/encoder/vp9_mcomp.c +++ b/vp9/encoder/vp9_mcomp.c
@@ -666,14 +666,12 @@ #undef CHECK_BETTER #undef SP -#define CHECK_BOUNDS(range) \ - {\ - all_in = 1;\ - all_in &= ((br-range) >= x->mv_row_min);\ - all_in &= ((br+range) <= x->mv_row_max);\ - all_in &= ((bc-range) >= x->mv_col_min);\ - all_in &= ((bc+range) <= x->mv_col_max);\ - } +static INLINE int check_bounds(MACROBLOCK *x, int row, int col, int range) { + return ((row - range) >= x->mv_row_min) & + ((row + range) <= x->mv_row_max) & + ((col - range) >= x->mv_col_min) & + ((col + range) <= x->mv_col_max); +} #define CHECK_POINT \ {\ @@ -739,7 +737,6 @@ uint8_t *base_offset; uint8_t *this_offset; int k = -1; - int all_in; int best_site = -1; int_mv fcenter_mv; int best_init_s = search_param_to_steps[search_param]; @@ -771,8 +768,7 @@ best_init_s = -1; for (t = 0; t <= s; ++t) { best_site = -1; - CHECK_BOUNDS((1 << t)) - if (all_in) { + if (check_bounds(x, br, bc, 1 << t)) { for (i = 0; i < num_candidates[t]; i++) { this_mv.row = br + candidates[t][i].row; this_mv.col = bc + candidates[t][i].col; @@ -815,8 +811,7 @@ do { // No need to search all 6 points the 1st time if initial search was used if (!do_init_search || s != best_init_s) { - CHECK_BOUNDS((1 << s)) - if (all_in) { + if (check_bounds(x, br, bc, 1 << s)) { for (i = 0; i < num_candidates[s]; i++) { this_mv.row = br + candidates[s][i].row; this_mv.col = bc + candidates[s][i].col; @@ -851,10 +846,8 @@ do { int next_chkpts_indices[PATTERN_CANDIDATES_REF]; best_site = -1; - CHECK_BOUNDS((1 << s)) - get_next_chkpts(next_chkpts_indices, k, num_candidates[s]); - if (all_in) { + if (check_bounds(x, br, bc, 1 << s)) { for (i = 0; i < PATTERN_CANDIDATES_REF; i++) { this_mv.row = br + candidates[s][next_chkpts_indices[i]].row; this_mv.col = bc + candidates[s][next_chkpts_indices[i]].col; @@ -894,8 +887,7 @@ }; for (j = 0; j < 16; j++) { best_site = -1; - CHECK_BOUNDS(1) - if (all_in) { + if (check_bounds(x, br, bc, 1)) { for (i = 0; i < 4; i++) { this_mv.row = br + neighbors[i].row; this_mv.col = bc + neighbors[i].col; @@ -1062,7 +1054,6 @@ square_num_candidates, square_candidates); }; -#undef CHECK_BOUNDS #undef CHECK_POINT #undef CHECK_BETTER