Take out drl index control from opt-ref-mv

Removing the drl dependency on the candidate list length appears
to incur more than 0.3% compression performance loss. Hence remove
this option from opt-ref-mv to allow better latency vs compression
performance trade off.

Change-Id: I6edaeb2d437996082b7bdd6cda7351426c5584b9
diff --git a/av1/common/mvref_common.c b/av1/common/mvref_common.c
index 1150fb2..98687dc 100644
--- a/av1/common/mvref_common.c
+++ b/av1/common/mvref_common.c
@@ -770,9 +770,6 @@
   const int nearest_match = ref_match_count;
   const int nearest_refmv_count = *refmv_count;
 
-#if CONFIG_OPT_REF_MV
-  ref_mv_stack[0].weight = 0;
-#endif
   for (int idx = 0; idx < nearest_refmv_count; ++idx)
     ref_mv_stack[idx].weight += REF_CAT_LEVEL;
 
diff --git a/av1/common/mvref_common.h b/av1/common/mvref_common.h
index 1a508af..9cf5d81 100644
--- a/av1/common/mvref_common.h
+++ b/av1/common/mvref_common.h
@@ -352,13 +352,6 @@
 
 static INLINE uint8_t av1_drl_ctx(const CANDIDATE_MV *ref_mv_stack,
                                   int ref_idx) {
-#if CONFIG_OPT_REF_MV
-  if (ref_mv_stack[0].weight >= REF_CAT_LEVEL)
-    return 0;
-  else
-    return 2;
-#endif
-
   if (ref_mv_stack[ref_idx].weight >= REF_CAT_LEVEL &&
       ref_mv_stack[ref_idx + 1].weight >= REF_CAT_LEVEL)
     return 0;
diff --git a/av1/decoder/decodemv.c b/av1/decoder/decodemv.c
index 87e6748..f9bf0c3 100644
--- a/av1/decoder/decodemv.c
+++ b/av1/decoder/decodemv.c
@@ -255,7 +255,7 @@
   mbmi->ref_mv_idx = 0;
   if (mbmi->mode == NEWMV || mbmi->mode == NEW_NEWMV) {
     for (int idx = 0; idx < 2; ++idx) {
-      if (xd->ref_mv_count[ref_frame_type] > idx + 1 || CONFIG_OPT_REF_MV) {
+      if (xd->ref_mv_count[ref_frame_type] > idx + 1) {
         uint8_t drl_ctx = av1_drl_ctx(xd->ref_mv_stack[ref_frame_type], idx);
         int drl_idx = aom_read_symbol(r, ec_ctx->drl_cdf[drl_ctx], 2, ACCT_STR);
         mbmi->ref_mv_idx = idx + drl_idx;
@@ -269,7 +269,7 @@
     // TODO(jingning): Unify the two syntax decoding loops after the NEARESTMV
     // mode is factored in.
     for (int idx = 1; idx < 3; ++idx) {
-      if (xd->ref_mv_count[ref_frame_type] > idx + 1 || CONFIG_OPT_REF_MV) {
+      if (xd->ref_mv_count[ref_frame_type] > idx + 1) {
         uint8_t drl_ctx = av1_drl_ctx(xd->ref_mv_stack[ref_frame_type], idx);
         int drl_idx = aom_read_symbol(r, ec_ctx->drl_cdf[drl_ctx], 2, ACCT_STR);
         mbmi->ref_mv_idx = idx + drl_idx - 1;
diff --git a/av1/encoder/bitstream.c b/av1/encoder/bitstream.c
index 1ecca53..dda3372 100644
--- a/av1/encoder/bitstream.c
+++ b/av1/encoder/bitstream.c
@@ -148,8 +148,7 @@
   if (new_mv) {
     int idx;
     for (idx = 0; idx < 2; ++idx) {
-      if (mbmi_ext->ref_mv_count[ref_frame_type] > idx + 1 ||
-          CONFIG_OPT_REF_MV) {
+      if (mbmi_ext->ref_mv_count[ref_frame_type] > idx + 1) {
         uint8_t drl_ctx =
             av1_drl_ctx(mbmi_ext->ref_mv_stack[ref_frame_type], idx);
 
@@ -165,8 +164,7 @@
     int idx;
     // TODO(jingning): Temporary solution to compensate the NEARESTMV offset.
     for (idx = 1; idx < 3; ++idx) {
-      if (mbmi_ext->ref_mv_count[ref_frame_type] > idx + 1 ||
-          CONFIG_OPT_REF_MV) {
+      if (mbmi_ext->ref_mv_count[ref_frame_type] > idx + 1) {
         uint8_t drl_ctx =
             av1_drl_ctx(mbmi_ext->ref_mv_stack[ref_frame_type], idx);
         aom_write_symbol(w, mbmi->ref_mv_idx != (idx - 1),