Deprecate refresh_alt2_ref_frame flag

Refactor the control flow and remove refresh_alt2_ref_frame flag.

Change-Id: I231f437f4e4a169b17962f3e970ec0baac4976e5
diff --git a/av1/encoder/encode_strategy.c b/av1/encoder/encode_strategy.c
index 6bd325a..12dd2aa 100644
--- a/av1/encoder/encode_strategy.c
+++ b/av1/encoder/encode_strategy.c
@@ -50,7 +50,6 @@
       frame_params->refresh_last_frame = 1;
       frame_params->refresh_golden_frame = 1;
       frame_params->refresh_bwd_ref_frame = 1;
-      frame_params->refresh_alt2_ref_frame = 1;
       frame_params->refresh_alt_ref_frame = 1;
       break;
 
@@ -58,7 +57,6 @@
       frame_params->refresh_last_frame = 1;
       frame_params->refresh_golden_frame = 0;
       frame_params->refresh_bwd_ref_frame = 0;
-      frame_params->refresh_alt2_ref_frame = 0;
       frame_params->refresh_alt_ref_frame = 0;
       break;
 
@@ -68,7 +66,6 @@
       frame_params->refresh_last_frame = 1;
       frame_params->refresh_golden_frame = 1;
       frame_params->refresh_bwd_ref_frame = 0;
-      frame_params->refresh_alt2_ref_frame = 0;
       frame_params->refresh_alt_ref_frame = 0;
       break;
 
@@ -76,7 +73,6 @@
       frame_params->refresh_last_frame = 0;
       frame_params->refresh_golden_frame = 1;
       frame_params->refresh_bwd_ref_frame = 0;
-      frame_params->refresh_alt2_ref_frame = 0;
       frame_params->refresh_alt_ref_frame = 0;
 
       cpi->rc.is_src_frame_alt_ref = 1;
@@ -87,7 +83,6 @@
       frame_params->refresh_golden_frame = 0;
       // NOTE: BWDREF does not get updated along with ALTREF_FRAME.
       frame_params->refresh_bwd_ref_frame = 0;
-      frame_params->refresh_alt2_ref_frame = 0;
       frame_params->refresh_alt_ref_frame = 1;
       break;
 
@@ -95,7 +90,6 @@
       frame_params->refresh_last_frame = 1;
       frame_params->refresh_golden_frame = 0;
       frame_params->refresh_bwd_ref_frame = 0;
-      frame_params->refresh_alt2_ref_frame = 0;
       frame_params->refresh_alt_ref_frame = 0;
 
       cpi->rc.is_src_frame_alt_ref = 1;
@@ -104,13 +98,7 @@
     case INTNL_ARF_UPDATE:
       frame_params->refresh_last_frame = 0;
       frame_params->refresh_golden_frame = 0;
-      if (cpi->oxcf.pass != 1) {
-        frame_params->refresh_bwd_ref_frame = 1;
-        frame_params->refresh_alt2_ref_frame = 0;
-      } else {
-        frame_params->refresh_bwd_ref_frame = 0;
-        frame_params->refresh_alt2_ref_frame = 1;
-      }
+      frame_params->refresh_bwd_ref_frame = 1;
       frame_params->refresh_alt_ref_frame = 0;
       break;
 
@@ -123,14 +111,12 @@
     frame_params->refresh_golden_frame = cpi->ext_refresh_golden_frame;
     frame_params->refresh_alt_ref_frame = cpi->ext_refresh_alt_ref_frame;
     frame_params->refresh_bwd_ref_frame = cpi->ext_refresh_bwd_ref_frame;
-    frame_params->refresh_alt2_ref_frame = cpi->ext_refresh_alt2_ref_frame;
   }
 
   if (force_refresh_all) {
     frame_params->refresh_last_frame = 1;
     frame_params->refresh_golden_frame = 1;
     frame_params->refresh_bwd_ref_frame = 1;
-    frame_params->refresh_alt2_ref_frame = 1;
     frame_params->refresh_alt_ref_frame = 1;
   }
 }
@@ -164,9 +150,8 @@
              cpi->ext_refresh_bwd_ref_frame || cpi->ext_refresh_golden_frame ||
              cpi->ext_refresh_last_frame);
   else
-    return !(cpi->refresh_alt_ref_frame || cpi->refresh_alt2_ref_frame ||
-             cpi->refresh_bwd_ref_frame || cpi->refresh_golden_frame ||
-             cpi->refresh_last_frame);
+    return !(cpi->refresh_alt_ref_frame || cpi->refresh_bwd_ref_frame ||
+             cpi->refresh_golden_frame || cpi->refresh_last_frame);
 }
 
 static INLINE void update_frames_till_gf_update(AV1_COMP *cpi) {
diff --git a/av1/encoder/encodeframe.c b/av1/encoder/encodeframe.c
index 52c651c..dfe5d77 100644
--- a/av1/encoder/encodeframe.c
+++ b/av1/encoder/encodeframe.c
@@ -746,7 +746,7 @@
   if ((rd_cost->rate != INT_MAX) && (aq_mode == COMPLEXITY_AQ) &&
       (bsize >= BLOCK_16X16) &&
       (cm->current_frame.frame_type == KEY_FRAME ||
-       cpi->refresh_alt_ref_frame || cpi->refresh_alt2_ref_frame ||
+       cpi->refresh_alt_ref_frame || cpi->refresh_bwd_ref_frame ||
        (cpi->refresh_golden_frame && !cpi->rc.is_src_frame_alt_ref))) {
     av1_caq_select_segment(cpi, x, bsize, mi_row, mi_col, rd_cost->rate);
   }
diff --git a/av1/encoder/encoder.c b/av1/encoder/encoder.c
index a3450e6..38011d6 100644
--- a/av1/encoder/encoder.c
+++ b/av1/encoder/encoder.c
@@ -2510,7 +2510,6 @@
   cpi->refresh_last_frame = 1;
   cpi->refresh_golden_frame = 0;
   cpi->refresh_bwd_ref_frame = 0;
-  cpi->refresh_alt2_ref_frame = 0;
 
   cm->refresh_frame_context = (oxcf->frame_parallel_decoding_mode)
                                   ? REFRESH_FRAME_CONTEXT_DISABLED
@@ -5774,7 +5773,6 @@
   cpi->refresh_last_frame = frame_params->refresh_last_frame;
   cpi->refresh_golden_frame = frame_params->refresh_golden_frame;
   cpi->refresh_bwd_ref_frame = frame_params->refresh_bwd_ref_frame;
-  cpi->refresh_alt2_ref_frame = frame_params->refresh_alt2_ref_frame;
   cpi->refresh_alt_ref_frame = frame_params->refresh_alt_ref_frame;
 
   if (current_frame->frame_type == KEY_FRAME && cm->show_frame)
diff --git a/av1/encoder/encoder.h b/av1/encoder/encoder.h
index 2f9264d..3f27b8a 100644
--- a/av1/encoder/encoder.h
+++ b/av1/encoder/encoder.h
@@ -820,7 +820,6 @@
   int refresh_last_frame;
   int refresh_golden_frame;
   int refresh_bwd_ref_frame;
-  int refresh_alt2_ref_frame;
   int refresh_alt_ref_frame;
 
   // For each type of reference frame, this contains the index of a reference
@@ -1116,7 +1115,6 @@
   int refresh_last_frame;
   int refresh_golden_frame;
   int refresh_bwd_ref_frame;
-  int refresh_alt2_ref_frame;
   int refresh_alt_ref_frame;
 
   // Speed level to use for this frame: Bigger number means faster.
diff --git a/av1/encoder/ratectrl.c b/av1/encoder/ratectrl.c
index 0f374cc..b2505ee 100644
--- a/av1/encoder/ratectrl.c
+++ b/av1/encoder/ratectrl.c
@@ -625,7 +625,7 @@
         curr_frame == 0 ? rc->worst_quality : rc->last_q[KEY_FRAME] * 2;
   } else {
     if (!rc->is_src_frame_alt_ref &&
-        (cpi->refresh_golden_frame || cpi->refresh_alt2_ref_frame ||
+        (cpi->refresh_golden_frame || cpi->refresh_bwd_ref_frame ||
          cpi->refresh_alt_ref_frame)) {
       active_worst_quality = curr_frame == 1 ? rc->last_q[KEY_FRAME] * 5 / 4
                                              : rc->last_q[INTER_FRAME];
@@ -1443,10 +1443,9 @@
   const CurrentFrame *const current_frame = &cm->current_frame;
   RATE_CONTROL *const rc = &cpi->rc;
   const GF_GROUP *const gf_group = &cpi->gf_group;
+
   const int is_intrnl_arf =
-      cpi->oxcf.pass == 2
-          ? gf_group->update_type[gf_group->index] == INTNL_ARF_UPDATE
-          : cpi->refresh_alt2_ref_frame;
+      gf_group->update_type[gf_group->index] == INTNL_ARF_UPDATE;
 
   const int qindex = cm->base_qindex;
 
diff --git a/av1/encoder/rdopt.c b/av1/encoder/rdopt.c
index ea39484..e31c845 100644
--- a/av1/encoder/rdopt.c
+++ b/av1/encoder/rdopt.c
@@ -13356,9 +13356,8 @@
       mbmi->partition != PARTITION_NONE && mbmi->partition != PARTITION_SPLIT) {
     // Don't enable for vert and horz partition blocks if current frame
     // will be used as bwd or arf2.
-    if ((!cpi->refresh_bwd_ref_frame && !cpi->refresh_alt2_ref_frame) ||
-        (mbmi->partition != PARTITION_VERT &&
-         mbmi->partition != PARTITION_HORZ)) {
+    if (!cpi->refresh_bwd_ref_frame || (mbmi->partition != PARTITION_VERT &&
+                                        mbmi->partition != PARTITION_HORZ)) {
       picked_ref_frames_mask = fetch_picked_ref_frames_mask(
           x, bsize, cm->seq_params.mib_size, mi_row, mi_col);
     }
diff --git a/av1/encoder/speed_features.c b/av1/encoder/speed_features.c
index c0eee79..c3505e2 100644
--- a/av1/encoder/speed_features.c
+++ b/av1/encoder/speed_features.c
@@ -231,8 +231,7 @@
     const AV1_COMP *const cpi, SPEED_FEATURES *const sf, int speed) {
   const AV1_COMMON *const cm = &cpi->common;
   const int boosted = frame_is_boosted(cpi);
-  const int is_boosted_arf2_bwd_type =
-      boosted || cpi->refresh_bwd_ref_frame || cpi->refresh_alt2_ref_frame;
+  const int is_boosted_arf2_bwd_type = boosted || cpi->refresh_bwd_ref_frame;
 
   // Speed 0 for all speed features that give neutral coding performance change.
   sf->reduce_inter_modes = 1;
diff --git a/av1/encoder/tpl_model.c b/av1/encoder/tpl_model.c
index c644c88..2fe8800 100644
--- a/av1/encoder/tpl_model.c
+++ b/av1/encoder/tpl_model.c
@@ -751,7 +751,6 @@
     cpi->refresh_last_frame = this_frame_params.refresh_last_frame;
     cpi->refresh_golden_frame = this_frame_params.refresh_golden_frame;
     cpi->refresh_bwd_ref_frame = this_frame_params.refresh_bwd_ref_frame;
-    cpi->refresh_alt2_ref_frame = this_frame_params.refresh_alt2_ref_frame;
     cpi->refresh_alt_ref_frame = this_frame_params.refresh_alt_ref_frame;
 
     gf_group->q_val[gf_index] = av1_rc_pick_q_and_bounds(