diff options
Diffstat (limited to 'vp9/common/vp9_reconintra.c')
-rw-r--r-- | vp9/common/vp9_reconintra.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/vp9/common/vp9_reconintra.c b/vp9/common/vp9_reconintra.c index daeb6b558..aef34c9b1 100644 --- a/vp9/common/vp9_reconintra.c +++ b/vp9/common/vp9_reconintra.c @@ -592,14 +592,16 @@ void vp9_intra8x8_predict(MACROBLOCKD *xd, #if !CONFIG_NEWBINTRAMODES void vp9_intra4x4_predict(MACROBLOCKD *xd, int block_idx, + BLOCK_SIZE_TYPE bsize, int mode, uint8_t *predictor, int pre_stride) { + const int bwl = b_width_log2(bsize); + const int wmask = (1 << bwl) - 1; const int have_top = - (block_idx >> (2 >> CONFIG_SB8X8)) || xd->up_available; + (block_idx >> bwl) || xd->up_available; const int have_left = - (block_idx & (3 >> CONFIG_SB8X8)) || xd->left_available; - const int have_right = - ((block_idx & (3 >> CONFIG_SB8X8)) != (3 >> CONFIG_SB8X8)); + (block_idx & wmask) || xd->left_available; + const int have_right = ((block_idx & wmask) != wmask); vp9_build_intra_predictors(predictor, pre_stride, predictor, pre_stride, |