[FFmpeg-devel] [PATCH 2/2] vp9: use LOCAL_ALIGNED_32 for left/top intra_pred pointers

James Almer jamrial at gmail.com
Thu Apr 24 19:11:24 CEST 2014


This is needed for future AVX2 implementations

Signed-off-by: James Almer <jamrial at gmail.com>
---
 libavcodec/vp9.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/libavcodec/vp9.c b/libavcodec/vp9.c
index cbc885b..d970709 100644
--- a/libavcodec/vp9.c
+++ b/libavcodec/vp9.c
@@ -2448,8 +2448,8 @@ static void intra_recon(AVCodecContext *ctx, ptrdiff_t y_off, ptrdiff_t uv_off)
     int tx = 4 * s->lossless + b->tx, uvtx = b->uvtx + 4 * s->lossless;
     int uvstep1d = 1 << b->uvtx, p;
     uint8_t *dst = s->dst[0], *dst_r = s->frames[CUR_FRAME].tf.f->data[0] + y_off;
-    LOCAL_ALIGNED_16(uint8_t, a_buf, [48]);
-    LOCAL_ALIGNED_16(uint8_t, l, [32]);
+    LOCAL_ALIGNED_32(uint8_t, a_buf, [64]);
+    LOCAL_ALIGNED_32(uint8_t, l, [32]);
 
     for (n = 0, y = 0; y < end_y; y += step1d) {
         uint8_t *ptr = dst, *ptr_r = dst_r;
@@ -2457,7 +2457,7 @@ static void intra_recon(AVCodecContext *ctx, ptrdiff_t y_off, ptrdiff_t uv_off)
                                ptr_r += 4 * step1d, n += step) {
             int mode = b->mode[b->bs > BS_8x8 && b->tx == TX_4X4 ?
                                y * 2 + x : 0];
-            uint8_t *a = &a_buf[16];
+            uint8_t *a = &a_buf[32];
             enum TxfmType txtp = vp9_intra_txfm_type[mode];
             int eob = b->skip ? 0 : b->tx > TX_8X8 ? AV_RN16A(&s->eob[n]) : s->eob[n];
 
-- 
1.8.3.2



More information about the ffmpeg-devel mailing list