rtc: Fix to usable_ref_frame in nonrd pickmode

When frames_since_golden = 0, set
skip_ref_find_pred[GOLDEN] to 1 and set
usable_ref_frame to LAST only if ALT_REF is
not used. This prevents ALT_REF reference
from being skipped when frame_since_golden = 0.

Also usable_ref_frame should be used in update
of rd_thresh after mode selection.

Smalll bdrate gain on low-res speed 7 of ~0.22.
Negligible speed impact observed on QVGA clip.

Change-Id: I497cee3704a2ab034edae55c749eb6b4e75d6265
diff --git a/av1/encoder/nonrd_pickmode.c b/av1/encoder/nonrd_pickmode.c
index 12b1cf2..614ffdb 100644
--- a/av1/encoder/nonrd_pickmode.c
+++ b/av1/encoder/nonrd_pickmode.c
@@ -1481,7 +1481,8 @@
       cpi->sf.use_nonrd_altref_frame ? ALTREF_FRAME : GOLDEN_FRAME;
 
   if (cpi->rc.frames_since_golden == 0 && gf_temporal_ref) {
-    usable_ref_frame = LAST_FRAME;
+    skip_ref_find_pred[GOLDEN_FRAME] = 1;
+    if (!cpi->sf.use_nonrd_altref_frame) usable_ref_frame = LAST_FRAME;
   }
 
   const int mi_row = xd->mi_row;
@@ -2016,7 +2017,7 @@
                                 intra_mode_list[i]);
       }
     } else {
-      for (ref_frame = LAST_FRAME; ref_frame <= GOLDEN_FRAME; ++ref_frame) {
+      for (ref_frame = LAST_FRAME; ref_frame <= usable_ref_frame; ++ref_frame) {
         PREDICTION_MODE this_mode;
         if (best_pickmode.best_ref_frame != ref_frame) continue;
         for (this_mode = NEARESTMV; this_mode <= NEWMV; ++this_mode) {