From: Jingning Han Date: Tue, 7 Oct 2014 19:45:25 +0000 (-0700) Subject: Replace mi_width_log2() with mi_width_log2_lookup table X-Git-Tag: v1.4.0~662^2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=7ee58985bd080bff50149dfd2f2ab373a55650a0;p=libvpx Replace mi_width_log2() with mi_width_log2_lookup table Change-Id: If0ea98aa139d14d40cd924114e18396aff36b5a5 --- diff --git a/vp9/common/vp9_blockd.h b/vp9/common/vp9_blockd.h index 01de4aa65..2436694c9 100644 --- a/vp9/common/vp9_blockd.h +++ b/vp9/common/vp9_blockd.h @@ -111,10 +111,6 @@ typedef enum { MAX_REF_FRAMES = 4 } MV_REFERENCE_FRAME; -static INLINE int mi_width_log2(BLOCK_SIZE sb_type) { - return mi_width_log2_lookup[sb_type]; -} - // This structure now relates to 8x8 block regions. typedef struct { // Common for both INTER and INTRA blocks diff --git a/vp9/common/vp9_onyxc_int.h b/vp9/common/vp9_onyxc_int.h index eeaff7fb9..c28f156ab 100644 --- a/vp9/common/vp9_onyxc_int.h +++ b/vp9/common/vp9_onyxc_int.h @@ -329,7 +329,7 @@ static INLINE int partition_plane_context(const MACROBLOCKD *xd, const PARTITION_CONTEXT *above_ctx = xd->above_seg_context + mi_col; const PARTITION_CONTEXT *left_ctx = xd->left_seg_context + (mi_row & MI_MASK); - const int bsl = mi_width_log2(bsize); + const int bsl = mi_width_log2_lookup[bsize]; const int bs = 1 << bsl; int above = 0, left = 0, i; diff --git a/vp9/encoder/vp9_encodeframe.c b/vp9/encoder/vp9_encodeframe.c index 6183f1fe2..c0e36295a 100644 --- a/vp9/encoder/vp9_encodeframe.c +++ b/vp9/encoder/vp9_encodeframe.c @@ -1956,7 +1956,7 @@ static void auto_partition_range(VP9_COMP *cpi, const TileInfo *const tile, int bh, bw; BLOCK_SIZE min_size = BLOCK_32X32; BLOCK_SIZE max_size = BLOCK_8X8; - int bsl = mi_width_log2(BLOCK_64X64); + int bsl = mi_width_log2_lookup[BLOCK_64X64]; const int search_range_ctrl = (((mi_row + mi_col) >> bsl) + get_chessboard_index(cm->current_video_frame)) & 0x1; // Trap case where we do not have a prediction. diff --git a/vp9/encoder/vp9_pickmode.c b/vp9/encoder/vp9_pickmode.c index 9abc9d1fb..fc73cfaf1 100644 --- a/vp9/encoder/vp9_pickmode.c +++ b/vp9/encoder/vp9_pickmode.c @@ -492,7 +492,7 @@ void vp9_pick_inter_mode(VP9_COMP *cpi, MACROBLOCK *x, const int *const rd_threshes = cpi->rd.threshes[segment_id][bsize]; const int *const rd_thresh_freq_fact = cpi->rd.thresh_freq_fact[bsize]; INTERP_FILTER filter_ref = cm->interp_filter; - const int bsl = mi_width_log2(bsize); + const int bsl = mi_width_log2_lookup[bsize]; const int pred_filter_search = cm->interp_filter == SWITCHABLE ? (((mi_row + mi_col) >> bsl) + get_chessboard_index(cm->current_video_frame)) & 0x1 : 0; diff --git a/vp9/encoder/vp9_rdopt.c b/vp9/encoder/vp9_rdopt.c index b3dfbb058..ac1c9d4c2 100644 --- a/vp9/encoder/vp9_rdopt.c +++ b/vp9/encoder/vp9_rdopt.c @@ -3096,7 +3096,7 @@ int64_t vp9_rd_pick_inter_mode_sb(VP9_COMP *cpi, MACROBLOCK *x, tile->mi_col_end - mi_col); const int mi_height = MIN(num_8x8_blocks_high_lookup[bsize], tile->mi_row_end - mi_row); - const int bsl = mi_width_log2(bsize); + const int bsl = mi_width_log2_lookup[bsize]; int cb_partition_search_ctrl = (((mi_row + mi_col) >> bsl) + get_chessboard_index(cm->current_video_frame)) & 0x1; MB_MODE_INFO *ref_mbmi;