]> granicus.if.org Git - libvpx/commitdiff
Let YUV plane share the same dqcoeff buffer.
authorhkuang <hkuang@google.com>
Fri, 12 Dec 2014 19:31:23 +0000 (11:31 -0800)
committerhkuang <hkuang@google.com>
Thu, 18 Dec 2014 02:29:07 +0000 (18:29 -0800)
Remove unnecessary dqcoeff from macroblockd which reduce macroblockd
size by 16384 bytes.

Change-Id: Ia379a703b4fee81c8fd4698b52488a85a90c9bc2

vp9/common/vp9_blockd.h
vp9/common/vp9_onyxc_int.h

index ebb1d1d0a4db3ef9a617fdc8dd008e5a541b2d6e..e7fb19fd1f9c4ba2ff833b910871c006055f2f4a 100644 (file)
@@ -227,7 +227,8 @@ typedef struct macroblockd {
   DECLARE_ALIGNED(16, uint16_t, mc_buf_high[80 * 2 * 80 * 2]);
 #endif
 
-  DECLARE_ALIGNED(16, tran_low_t, dqcoeff[MAX_MB_PLANE][64 * 64]);
+  /* dqcoeff are shared by all the planes. So planes must be decoded serially */
+  DECLARE_ALIGNED(16, tran_low_t, dqcoeff[64 * 64]);
 
   int lossless;
   int corrupted;
index bba24e03b0762fbba20ed024771a5575e54a1b2e..ad91c10dd019d596a425a7e55fb978703634b560 100644 (file)
@@ -265,7 +265,7 @@ static INLINE void init_macroblockd(VP9_COMMON *cm, MACROBLOCKD *xd) {
   int i;
 
   for (i = 0; i < MAX_MB_PLANE; ++i) {
-    xd->plane[i].dqcoeff = xd->dqcoeff[i];
+    xd->plane[i].dqcoeff = xd->dqcoeff;
     xd->above_context[i] = cm->above_context +
         i * sizeof(*cm->above_context) * 2 * mi_cols_aligned_to_sb(cm->mi_cols);
   }