Merge "Assign above/left context in decode_coefs() instead of in caller." into experimental
diff --git a/vp9/common/rtcd_defs.sh b/vp9/common/rtcd_defs.sh
index b9514be..813e93a 100644
--- a/vp9/common/rtcd_defs.sh
+++ b/vp9/common/rtcd_defs.sh
@@ -501,8 +501,13 @@
 vp9_refining_search_sad_sse3=vp9_refining_search_sadx4
 
 prototype int vp9_diamond_search_sad "struct macroblock *x, struct block *b, struct blockd *d, union int_mv *ref_mv, union int_mv *best_mv, int search_param, int sad_per_bit, int *num00, struct variance_vtable *fn_ptr, DEC_MVCOSTS, union int_mv *center_mv"
+specialize vp9_diamond_search_sad sse3
 vp9_diamond_search_sad_sse3=vp9_diamond_search_sadx4
 
+prototype void vp9_temporal_filter_apply "unsigned char *frame1, unsigned int stride, unsigned char *frame2, unsigned int block_size, int strength, int filter_weight, unsigned int *accumulator, unsigned short *count"
+specialize vp9_temporal_filter_apply sse2
+
+
 fi
 # end encoder functions
 
diff --git a/vp9/encoder/generic/csystemdependent.c b/vp9/encoder/generic/csystemdependent.c
index 05b1d61..d49b7d9 100644
--- a/vp9/encoder/generic/csystemdependent.c
+++ b/vp9/encoder/generic/csystemdependent.c
@@ -27,7 +27,6 @@
 void vp9_cmachine_specific_config(VP9_COMP *cpi) {
 #if CONFIG_RUNTIME_CPU_DETECT
   cpi->rtcd.common                    = &cpi->common.rtcd;
-  cpi->rtcd.temporal.apply                 = vp9_temporal_filter_apply_c;
 #endif
 
   vp9_yv12_copy_partial_frame_ptr = vp9_yv12_copy_partial_frame;
diff --git a/vp9/encoder/temporal_filter.c b/vp9/encoder/temporal_filter.c
index e2695de..90037f9 100644
--- a/vp9/encoder/temporal_filter.c
+++ b/vp9/encoder/temporal_filter.c
@@ -317,35 +317,17 @@
            predictor);
 
           // Apply the filter (YUV)
-          TEMPORAL_INVOKE(&cpi->rtcd.temporal, apply)
-          (f->y_buffer + mb_y_offset,
-           f->y_stride,
-           predictor,
-           16,
-           strength,
-           filter_weight,
-           accumulator,
-           count);
+          vp9_temporal_filter_apply(f->y_buffer + mb_y_offset, f->y_stride,
+                                    predictor, 16, strength, filter_weight,
+                                    accumulator, count);
 
-          TEMPORAL_INVOKE(&cpi->rtcd.temporal, apply)
-          (f->u_buffer + mb_uv_offset,
-           f->uv_stride,
-           predictor + 256,
-           8,
-           strength,
-           filter_weight,
-           accumulator + 256,
-           count + 256);
+          vp9_temporal_filter_apply(f->u_buffer + mb_uv_offset, f->uv_stride,
+                                    predictor + 256, 8, strength, filter_weight,
+                                    accumulator + 256, count + 256);
 
-          TEMPORAL_INVOKE(&cpi->rtcd.temporal, apply)
-          (f->v_buffer + mb_uv_offset,
-           f->uv_stride,
-           predictor + 320,
-           8,
-           strength,
-           filter_weight,
-           accumulator + 320,
-           count + 320);
+          vp9_temporal_filter_apply(f->v_buffer + mb_uv_offset, f->uv_stride,
+                                    predictor + 320, 8, strength, filter_weight,
+                                    accumulator + 320, count + 320);
         }
       }
 
diff --git a/vp9/encoder/x86/x86_csystemdependent.c b/vp9/encoder/x86/x86_csystemdependent.c
index 0176672..38ede74 100644
--- a/vp9/encoder/x86/x86_csystemdependent.c
+++ b/vp9/encoder/x86/x86_csystemdependent.c
@@ -90,8 +90,6 @@
   /* Override default functions with fastest ones for this CPU. */
 #if HAVE_SSE2
   if (flags & HAS_SSE2) {
-    cpi->rtcd.temporal.apply                 = vp9_temporal_filter_apply_sse2;
-
   }
 #endif