summaryrefslogtreecommitdiffstats
path: root/media/libvpx/bug1137614.patch
blob: 9edc79722092ff9fbbe8c0362604bb118eadd66d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
diff --git a/vp8/encoder/block.h b/vp8/encoder/block.h
--- a/vp8/encoder/block.h
+++ b/vp8/encoder/block.h
@@ -87,17 +87,18 @@ typedef struct macroblock {
   int rddiv;
   int rdmult;
   unsigned int *mb_activity_ptr;
   int *mb_norm_activity_ptr;
   signed int act_zbin_adj;
   signed int last_act_zbin_adj;

   int *mvcost[2];
-  int *mvsadcost[2];
+  /* MSVC generates code that thinks this is 16-byte aligned */
+  DECLARE_ALIGNED(16, int*, mvsadcost[2]);
   int (*mbmode_cost)[MB_MODE_COUNT];
   int (*intra_uv_mode_cost)[MB_MODE_COUNT];
   int (*bmode_costs)[10][10];
   int *inter_bmode_costs;
   int (*token_costs)[COEF_BANDS][PREV_COEF_CONTEXTS][MAX_ENTROPY_TOKENS];

   /* These define limits to motion vector components to prevent
    * them from extending outside the UMV borders.