diff --git a/av1/encoder/bitstream.c b/av1/encoder/bitstream.c
index 2e6ccb0..4e1603a 100644
--- a/av1/encoder/bitstream.c
+++ b/av1/encoder/bitstream.c
@@ -1487,8 +1487,8 @@
 
   skip = write_skip(cm, xd, segment_id, mi, w);
   if (cm->delta_q_present_flag) {
-    int super_block_upper_left =
-        ((mi_row & MAX_MIB_MASK) == 0) && ((mi_col & MAX_MIB_MASK) == 0);
+    int super_block_upper_left = ((mi_row & (cm->mib_size - 1)) == 0) &&
+                                 ((mi_col & (cm->mib_size - 1)) == 0);
     if ((bsize != cm->sb_size || skip == 0) && super_block_upper_left) {
       assert(mbmi->current_q_index > 0);
       int reduced_delta_qindex =
@@ -1815,8 +1815,8 @@
 
   const int skip = write_skip(cm, xd, mbmi->segment_id, mi, w);
   if (cm->delta_q_present_flag) {
-    int super_block_upper_left =
-        ((mi_row & MAX_MIB_MASK) == 0) && ((mi_col & MAX_MIB_MASK) == 0);
+    int super_block_upper_left = ((mi_row & (cm->mib_size - 1)) == 0) &&
+                                 ((mi_col & (cm->mib_size - 1)) == 0);
     if ((bsize != cm->sb_size || skip == 0) && super_block_upper_left) {
       assert(mbmi->current_q_index > 0);
       int reduced_delta_qindex =
