summaryrefslogtreecommitdiff
path: root/vp9/common/vp9_reconintra.c
diff options
context:
space:
mode:
Diffstat (limited to 'vp9/common/vp9_reconintra.c')
-rw-r--r--vp9/common/vp9_reconintra.c10
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,