diff --git a/configure b/configure
index 29073938f9e4f5e1955c749908d0ba4db6193930..6e96899c9c6c2dc76c1d74e3473135b86e906274 100755
--- a/configure
+++ b/configure
@@ -226,7 +226,6 @@ EXPERIMENT_LIST="
     qimode
     uvintra
     newnear
-    mulcontext
 "
 CONFIG_LIST="
     external_build
diff --git a/vp8/common/onyxc_int.h b/vp8/common/onyxc_int.h
index 544557626573c97e27537a77ae8f1cbaf40ca26e..4bca5af87ef81edbe4b07d2162690d234f971e0e 100644
--- a/vp8/common/onyxc_int.h
+++ b/vp8/common/onyxc_int.h
@@ -211,9 +211,7 @@ typedef struct VP8Common
 
     vp8_prob i8x8_mode_prob [VP8_UV_MODES-1];
 
-#if CONFIG_MULCONTEXT
     FRAME_CONTEXT lfc_a; /* last alt ref entropy */
-#endif
     FRAME_CONTEXT lfc; /* last frame entropy */
     FRAME_CONTEXT fc;  /* this frame entropy */
 
diff --git a/vp8/decoder/decodframe.c b/vp8/decoder/decodframe.c
index 75ba1f00f3ddc54933926e265f81d793e726d7dc..661c28d2db0a2b7910972966e2afb92a7ce2f26e 100644
--- a/vp8/decoder/decodframe.c
+++ b/vp8/decoder/decodframe.c
@@ -844,10 +844,9 @@ static void init_frame(VP8D_COMP *pbi)
         pc->ref_frame_sign_bias[GOLDEN_FRAME] = 0;
         pc->ref_frame_sign_bias[ALTREF_FRAME] = 0;
 
-#if CONFIG_MULCONTEXT
         vpx_memcpy(&pc->lfc, &pc->fc, sizeof(pc->fc));
         vpx_memcpy(&pc->lfc_a, &pc->fc, sizeof(pc->fc));
-#endif
+
 #if CONFIG_NEWNEAR
         vp8_init_mv_ref_counts(&pbi->common);
 #endif
@@ -1236,12 +1235,10 @@ int vp8_decode_frame(VP8D_COMP *pbi)
             pc->refresh_alt_ref_frame = 0;
 #endif
 
-#if CONFIG_MULCONTEXT
         if(pc->refresh_alt_ref_frame)
             vpx_memcpy(&pc->fc, &pc->lfc_a, sizeof(pc->fc));
         else
             vpx_memcpy(&pc->fc, &pc->lfc, sizeof(pc->fc));
-#endif
 
         /* Buffer to buffer copy flags. */
         pc->copy_buffer_to_gf = 0;
@@ -1450,7 +1447,6 @@ int vp8_decode_frame(VP8D_COMP *pbi)
     {
         pc->last_kf_gf_q = pc->base_qindex;
     }
-#if CONFIG_MULCONTEXT
     if(pc->refresh_entropy_probs)
     {
         if(pc->refresh_alt_ref_frame)
@@ -1458,13 +1454,6 @@ int vp8_decode_frame(VP8D_COMP *pbi)
         else
             vpx_memcpy(&pc->lfc, &pc->fc, sizeof(pc->fc));
     }
-#else
-    if (pc->refresh_entropy_probs == 0)
-    {
-        vpx_memcpy(&pc->fc, &pc->lfc, sizeof(pc->fc));
-        pbi->independent_partitions = prev_independent_partitions;
-    }
-#endif
 
 #ifdef PACKET_TESTING
     {
diff --git a/vp8/encoder/bitstream.c b/vp8/encoder/bitstream.c
index 0ddc0c71b785f98aa720b069875f67eac0fb84b1..3b9637dc1cf601dd7e09b020225ed7077197b82a 100644
--- a/vp8/encoder/bitstream.c
+++ b/vp8/encoder/bitstream.c
@@ -2294,13 +2294,6 @@ void vp8_pack_bitstream(VP8_COMP *cpi, unsigned char *dest, unsigned long *size)
 
     vp8_clear_system_state();  //__asm emms;
 
-    //************************************************
-    // save a copy for later refresh
-#if !CONFIG_MULCONTEXT
-    {
-        vpx_memcpy(&cpi->common.lfc, &cpi->common.fc, sizeof(cpi->common.fc));
-    }
-#endif
     update_coef_probs(cpi);
 
 #ifdef ENTROPY_STATS
diff --git a/vp8/encoder/onyx_if.c b/vp8/encoder/onyx_if.c
index 4c30c399f1fed5b1d334ae4a01323fd3af22d3f3..0b95a02e218c56069fd695ef45ce1f8e317b1153 100644
--- a/vp8/encoder/onyx_if.c
+++ b/vp8/encoder/onyx_if.c
@@ -4353,13 +4353,11 @@ static void encode_frame_to_data_rate
             resize_key_frame(cpi);
             vp8_setup_key_frame(cpi);
         }
-#if CONFIG_MULCONTEXT
         else
         {
             /* setup entropy for nonkey frame */
             vp8_setup_inter_frame(cpi);
         }
-#endif
         // transform / motion compensation build reconstruction frame
         vp8_encode_frame(cpi);
 
@@ -5522,7 +5520,6 @@ int vp8_get_compressed_data(VP8_PTR ptr, unsigned int *frame_flags, unsigned lon
 
 
 
-#if CONFIG_MULCONTEXT
     if(cm->refresh_entropy_probs)
     {
         if(cm->refresh_alt_ref_frame)
@@ -5530,13 +5527,6 @@ int vp8_get_compressed_data(VP8_PTR ptr, unsigned int *frame_flags, unsigned lon
         else
             vpx_memcpy(&cm->lfc, &cm->fc, sizeof(cm->fc));
     }
-#else
-    if (cm->refresh_entropy_probs == 0)
-    {
-        vpx_memcpy(&cm->fc, &cm->lfc, sizeof(cm->fc));
-    }
-#endif
-
 
     // if its a dropped frame honor the requests on subsequent frames
     if (*size > 0)
diff --git a/vp8/encoder/ratectrl.c b/vp8/encoder/ratectrl.c
index d4ca381aea2d14125e327bdf3588e3b2b0aeb375..62735d5d3366ee55b0ad4ff716af8b577c7d039e 100644
--- a/vp8/encoder/ratectrl.c
+++ b/vp8/encoder/ratectrl.c
@@ -262,16 +262,13 @@ void vp8_setup_key_frame(VP8_COMP *cpi)
     cpi->common.refresh_golden_frame = TRUE;
     cpi->common.refresh_alt_ref_frame = TRUE;
 
-#if CONFIG_MULCONTEXT
     vpx_memcpy(&cpi->common.lfc, &cpi->common.fc, sizeof(cpi->common.fc));
     vpx_memcpy(&cpi->common.lfc_a, &cpi->common.fc, sizeof(cpi->common.fc));
-#endif
 
 #if CONFIG_NEWNEAR
     vp8_init_mv_ref_counts(&cpi->common);
 #endif
 }
-#if CONFIG_MULCONTEXT
 void vp8_setup_inter_frame(VP8_COMP *cpi)
 {
     if(cpi->common.refresh_alt_ref_frame)
@@ -279,7 +276,6 @@ void vp8_setup_inter_frame(VP8_COMP *cpi)
     else
         vpx_memcpy(&cpi->common.fc, &cpi->common.lfc, sizeof(cpi->common.fc));
 }
-#endif
 
 
 static int estimate_bits_at_q(int frame_kind, int Q, int MBs,