Remove filter_intra mode info for UV plane

Change-Id: I92f73b78dfd0e25a61897e8b6e9e28ff210376d5
diff --git a/av1/encoder/rdopt.c b/av1/encoder/rdopt.c
index ac3a6d9..c6c4275 100644
--- a/av1/encoder/rdopt.c
+++ b/av1/encoder/rdopt.c
@@ -2362,9 +2362,9 @@
       if (ext_tx_set > 0 && ALLOW_INTRA_EXT_TX) {
 #if CONFIG_FILTER_INTRA
         PREDICTION_MODE intra_dir;
-        if (mbmi->filter_intra_mode_info.use_filter_intra_mode[0])
+        if (mbmi->filter_intra_mode_info.use_filter_intra)
           intra_dir = fimode_to_intradir[mbmi->filter_intra_mode_info
-                                             .filter_intra_mode[0]];
+                                             .filter_intra_mode];
         else
           intra_dir = mbmi->mode;
         return x->intra_tx_type_costs[ext_tx_set][square_tx_size][intra_dir]
@@ -2401,8 +2401,7 @@
   mbmi->tx_type = tx_type;
   mbmi->tx_size = tx_size;
 #if CONFIG_FILTER_INTRA
-  if (!is_inter_block(mbmi) &&
-      mbmi->filter_intra_mode_info.use_filter_intra_mode[0] &&
+  if (!is_inter_block(mbmi) && mbmi->filter_intra_mode_info.use_filter_intra &&
       !av1_filter_intra_allowed_txsize(tx_size)) {
     rd_stats->rate = INT_MAX;
     // Note: Initialize following to avoid uninitialied warnings.
@@ -2723,7 +2722,7 @@
   int64_t temp_sse, this_rd;
   TX_SIZE tx_size = tx_size_from_tx_mode(bsize, cm->tx_mode, 0);
 #if CONFIG_FILTER_INTRA
-  if (mbmi->filter_intra_mode_info.use_filter_intra_mode[0]) {
+  if (mbmi->filter_intra_mode_info.use_filter_intra) {
     tx_size = av1_max_tx_size_for_filter_intra(bsize, cm->tx_mode);
     if (!av1_filter_intra_allowed_txsize(tx_size)) return INT64_MAX;
   }
@@ -2756,8 +2755,8 @@
 #endif  // CONFIG_EXT_INTRA
 #if CONFIG_FILTER_INTRA
   if (mbmi->mode == DC_PRED && av1_filter_intra_allowed_txsize(mbmi->tx_size)) {
-    if (mbmi->filter_intra_mode_info.use_filter_intra_mode[0]) {
-      const int mode = mbmi->filter_intra_mode_info.filter_intra_mode[0];
+    if (mbmi->filter_intra_mode_info.use_filter_intra) {
+      const int mode = mbmi->filter_intra_mode_info.filter_intra_mode;
       mode_cost += x->filter_intra_cost[mbmi->tx_size][1] +
                    x->filter_intra_mode_cost[0][mode];
     } else {
@@ -2924,7 +2923,7 @@
 #endif  // CONFIG_HIGHBITDEPTH
     colors = av1_count_colors(src, src_stride, rows, cols, count_buf);
 #if CONFIG_FILTER_INTRA
-  mbmi->filter_intra_mode_info.use_filter_intra_mode[0] = 0;
+  mbmi->filter_intra_mode_info.use_filter_intra = 0;
 #endif  // CONFIG_FILTER_INTRA
 
   if (colors > 1 && colors <= 64) {
@@ -2972,7 +2971,7 @@
 
     mbmi->mode = DC_PRED;
 #if CONFIG_FILTER_INTRA
-    mbmi->filter_intra_mode_info.use_filter_intra_mode[0] = 0;
+    mbmi->filter_intra_mode_info.use_filter_intra = 0;
 #endif  // CONFIG_FILTER_INTRA
 
     if (rows * cols > MAX_PALETTE_SQUARE) return 0;
@@ -3053,7 +3052,7 @@
   TX_TYPE best_tx_type;
 
   av1_zero(filter_intra_mode_info);
-  mbmi->filter_intra_mode_info.use_filter_intra_mode[0] = 1;
+  mbmi->filter_intra_mode_info.use_filter_intra = 1;
   mbmi->mode = DC_PRED;
   mbmi->palette_mode_info.palette_size[0] = 0;
 
@@ -3061,7 +3060,7 @@
     int this_rate;
     int64_t this_rd, this_model_rd;
     RD_STATS tokenonly_rd_stats;
-    mbmi->filter_intra_mode_info.filter_intra_mode[0] = mode;
+    mbmi->filter_intra_mode_info.filter_intra_mode = mode;
     this_model_rd = intra_model_yrd(cpi, x, bsize, mode_cost);
     if (*best_model_rd != INT64_MAX &&
         this_model_rd > *best_model_rd + (*best_model_rd >> 1))
@@ -3090,10 +3089,7 @@
   if (filter_intra_selected_flag) {
     mbmi->mode = DC_PRED;
     mbmi->tx_size = best_tx_size;
-    mbmi->filter_intra_mode_info.use_filter_intra_mode[0] =
-        filter_intra_mode_info.use_filter_intra_mode[0];
-    mbmi->filter_intra_mode_info.filter_intra_mode[0] =
-        filter_intra_mode_info.filter_intra_mode[0];
+    mbmi->filter_intra_mode_info = filter_intra_mode_info;
     mbmi->tx_type = best_tx_type;
     return 1;
   } else {
@@ -3426,7 +3422,7 @@
                      directional_mode_skip_mask);
 #endif  // CONFIG_EXT_INTRA
 #if CONFIG_FILTER_INTRA
-  mbmi->filter_intra_mode_info.use_filter_intra_mode[0] = 0;
+  mbmi->filter_intra_mode_info.use_filter_intra = 0;
 #endif  // CONFIG_FILTER_INTRA
   pmi->palette_size[0] = 0;
   if (try_palette) {
@@ -5156,9 +5152,6 @@
   if (rows * cols > MAX_PALETTE_SQUARE) return;
 
   mbmi->uv_mode = UV_DC_PRED;
-#if CONFIG_FILTER_INTRA
-  mbmi->filter_intra_mode_info.use_filter_intra_mode[1] = 0;
-#endif  // CONFIG_FILTER_INTRA
 
   int count_buf[1 << 12];  // Maximum (1 << 12) color levels.
 #if CONFIG_HIGHBITDEPTH
@@ -5518,9 +5511,6 @@
 static void init_sbuv_mode(MB_MODE_INFO *const mbmi) {
   mbmi->uv_mode = UV_DC_PRED;
   mbmi->palette_mode_info.palette_size[1] = 0;
-#if CONFIG_FILTER_INTRA
-  mbmi->filter_intra_mode_info.use_filter_intra_mode[1] = 0;
-#endif  // CONFIG_FILTER_INTRA
 }
 
 static int64_t rd_pick_intra_sbuv_mode(const AV1_COMP *const cpi, MACROBLOCK *x,
@@ -9724,8 +9714,7 @@
     pmi->palette_size[0] = 0;
     pmi->palette_size[1] = 0;
 #if CONFIG_FILTER_INTRA
-    mbmi->filter_intra_mode_info.use_filter_intra_mode[0] = 0;
-    mbmi->filter_intra_mode_info.use_filter_intra_mode[1] = 0;
+    mbmi->filter_intra_mode_info.use_filter_intra = 0;
 #endif  // CONFIG_FILTER_INTRA
         // Evaluate all sub-pel filters irrespective of whether we can use
         // them for this frame.
@@ -9836,12 +9825,12 @@
                                distortion_y);
         }
 
-        mbmi->filter_intra_mode_info.use_filter_intra_mode[0] = 1;
+        mbmi->filter_intra_mode_info.use_filter_intra = 1;
         for (FILTER_INTRA_MODE fi_mode = FILTER_DC_PRED;
              fi_mode < FILTER_INTRA_MODES; ++fi_mode) {
           int this_rate_tmp;
           int64_t this_rd_tmp;
-          mbmi->filter_intra_mode_info.filter_intra_mode[0] = fi_mode;
+          mbmi->filter_intra_mode_info.filter_intra_mode = fi_mode;
 
           super_block_yrd(cpi, x, &rd_stats_y_fi, bsize, best_rd);
           if (rd_stats_y_fi.rate == INT_MAX) continue;
@@ -9868,10 +9857,10 @@
         mbmi->tx_size = best_tx_size;
         mbmi->tx_type = best_tx_type;
         if (filter_intra_selected_flag) {
-          mbmi->filter_intra_mode_info.use_filter_intra_mode[0] = 1;
-          mbmi->filter_intra_mode_info.filter_intra_mode[0] = best_fi_mode;
+          mbmi->filter_intra_mode_info.use_filter_intra = 1;
+          mbmi->filter_intra_mode_info.filter_intra_mode = best_fi_mode;
         } else {
-          mbmi->filter_intra_mode_info.use_filter_intra_mode[0] = 0;
+          mbmi->filter_intra_mode_info.use_filter_intra = 0;
         }
       }
 #endif
@@ -9948,11 +9937,11 @@
       if (mbmi->mode == DC_PRED &&
           av1_filter_intra_allowed_txsize(mbmi->tx_size)) {
         rate2 +=
-            x->filter_intra_cost[mbmi->tx_size][mbmi->filter_intra_mode_info
-                                                    .use_filter_intra_mode[0]];
-        if (mbmi->filter_intra_mode_info.use_filter_intra_mode[0]) {
+            x->filter_intra_cost[mbmi->tx_size]
+                                [mbmi->filter_intra_mode_info.use_filter_intra];
+        if (mbmi->filter_intra_mode_info.use_filter_intra) {
           rate2 += x->filter_intra_mode_cost[0][mbmi->filter_intra_mode_info
-                                                    .filter_intra_mode[0]];
+                                                    .filter_intra_mode];
         }
       }
 #endif  // CONFIG_FILTER_INTRA
@@ -9977,8 +9966,7 @@
         mbmi->angle_delta[1] = 0;
 #endif  // CONFIG_EXT_INTRA
 #if CONFIG_FILTER_INTRA
-        mbmi->filter_intra_mode_info.use_filter_intra_mode[0] = 0;
-        mbmi->filter_intra_mode_info.use_filter_intra_mode[1] = 0;
+        mbmi->filter_intra_mode_info.use_filter_intra = 0;
 #endif  // CONFIG_FILTER_INTRA
       }
       mbmi->ref_mv_idx = 0;
@@ -11035,8 +11023,7 @@
   mbmi->palette_mode_info.palette_size[1] = 0;
 
 #if CONFIG_FILTER_INTRA
-  mbmi->filter_intra_mode_info.use_filter_intra_mode[0] = 0;
-  mbmi->filter_intra_mode_info.use_filter_intra_mode[1] = 0;
+  mbmi->filter_intra_mode_info.use_filter_intra = 0;
 #endif  // CONFIG_FILTER_INTRA
   mbmi->mode = GLOBALMV;
   mbmi->motion_mode = SIMPLE_TRANSLATION;