Move interp_filter_search_mask to cpi

interp_filter_search_mask stores the mask associated to speed feature:
adaptive_interp_filter_search, and shouldn't be in cpi->sf itself.
Moved it to cpi.

Change-Id: I1aae964f95b5cd12d777dfaddceebef4b0f07883
diff --git a/av1/encoder/encoder.c b/av1/encoder/encoder.c
index ebb0f73..6813da3 100644
--- a/av1/encoder/encoder.c
+++ b/av1/encoder/encoder.c
@@ -5013,7 +5013,7 @@
 
   set_size_independent_vars(cpi);
   if (cpi->oxcf.pass == 2 && cpi->sf.adaptive_interp_filter_search)
-    cpi->sf.interp_filter_search_mask = setup_interp_filter_search_mask(cpi);
+    cpi->interp_filter_search_mask = setup_interp_filter_search_mask(cpi);
   cpi->source->buf_8bit_valid = 0;
 
   av1_setup_frame_size(cpi);
diff --git a/av1/encoder/encoder.h b/av1/encoder/encoder.h
index ce2c5e2..b54e58d 100644
--- a/av1/encoder/encoder.h
+++ b/av1/encoder/encoder.h
@@ -1054,6 +1054,9 @@
   // Stores the default value of skip flag depending on chroma format
   // Set as 1 for monochrome and 3 for other color formats
   int default_interp_skip_flags;
+  // Filter mask to allow certain interp_filter type.
+  uint16_t interp_filter_search_mask;
+
   int preserve_arf_as_gld;
   MultiThreadHandle multi_thread_ctxt;
   void (*row_mt_sync_read_ptr)(AV1RowMTSync *const, int, int);
diff --git a/av1/encoder/rdopt.c b/av1/encoder/rdopt.c
index 2d2aab7..3351b7e 100644
--- a/av1/encoder/rdopt.c
+++ b/av1/encoder/rdopt.c
@@ -8810,7 +8810,7 @@
       assert(filter_sets[filter_idx].as_filters.x_filter ==
              filter_sets[filter_idx].as_filters.y_filter);
       if (cpi->sf.adaptive_interp_filter_search &&
-          !(get_interp_filter_allowed_mask(cpi->sf.interp_filter_search_mask,
+          !(get_interp_filter_allowed_mask(cpi->interp_filter_search_mask,
                                            filter_idx))) {
         return;
       }
@@ -8845,7 +8845,7 @@
     set_interp_filter_allowed_mask(&allowed_interp_mask, SHARP_SHARP);
     set_interp_filter_allowed_mask(&allowed_interp_mask, SMOOTH_SMOOTH);
     if (cpi->sf.adaptive_interp_filter_search)
-      allowed_interp_mask &= cpi->sf.interp_filter_search_mask;
+      allowed_interp_mask &= cpi->interp_filter_search_mask;
 
     find_best_interp_rd_facade(x, cpi, tile_data, bsize, mi_row, mi_col,
                                orig_dst, rd, rd_stats_y, rd_stats,
@@ -8859,7 +8859,7 @@
       assert(filter_sets[i].as_filters.x_filter ==
              filter_sets[i].as_filters.y_filter);
       if (cpi->sf.adaptive_interp_filter_search &&
-          !(get_interp_filter_allowed_mask(cpi->sf.interp_filter_search_mask,
+          !(get_interp_filter_allowed_mask(cpi->interp_filter_search_mask,
                                            i))) {
         continue;
       }
diff --git a/av1/encoder/speed_features.c b/av1/encoder/speed_features.c
index eced9d5..c3b6ecb 100644
--- a/av1/encoder/speed_features.c
+++ b/av1/encoder/speed_features.c
@@ -828,7 +828,6 @@
   sf->skip_obmc_in_uniform_mv_field = 0;
   sf->skip_wm_in_uniform_mv_field = 0;
   sf->adaptive_interp_filter_search = 0;
-  sf->interp_filter_search_mask = ALLOW_ALL_INTERP_FILT_MASK;
   sf->src_var_thresh_intra_skip = 1;
   sf->reduce_high_precision_mv_usage = 0;
   sf->disable_sb_level_coeff_cost_upd = 0;
diff --git a/av1/encoder/speed_features.h b/av1/encoder/speed_features.h
index eaeaa92..bf6cd1e 100644
--- a/av1/encoder/speed_features.h
+++ b/av1/encoder/speed_features.h
@@ -758,9 +758,6 @@
   // Use modeled (currently CurvFit model) RDCost for fast non-RD mode
   int use_modeled_non_rd_cost;
 
-  // Filter mask to allow certain interp_filter type.
-  uint16_t interp_filter_search_mask;
-
   // Skip a number of expensive mode evaluations for blocks with very low
   // temporal variance.
   int short_circuit_low_temp_var;