From 6ecc3fd61225c79116de64167e3bf47736f0e779 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micka=C3=ABl=20Raulet?= Date: Thu, 5 Feb 2015 19:20:42 +0000 Subject: [PATCH] x86/hevc_mc: use aligned loads Signed-off-by: Michael Niedermayer --- libavcodec/hevc.h | 2 +- libavcodec/x86/hevc_mc.asm | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/libavcodec/hevc.h b/libavcodec/hevc.h index ae9a32acf0..e0af6f1810 100644 --- a/libavcodec/hevc.h +++ b/libavcodec/hevc.h @@ -771,7 +771,7 @@ typedef struct HEVCLocalContext { DECLARE_ALIGNED(32, uint8_t, edge_emu_buffer)[(MAX_PB_SIZE + 7) * EDGE_EMU_BUFFER_STRIDE * 2]; /* The extended size between the new edge emu buffer is abused by SAO */ DECLARE_ALIGNED(32, uint8_t, edge_emu_buffer2)[(MAX_PB_SIZE + 7) * EDGE_EMU_BUFFER_STRIDE * 2]; - DECLARE_ALIGNED(16, int16_t, tmp [MAX_PB_SIZE * MAX_PB_SIZE]); + DECLARE_ALIGNED(32, int16_t, tmp [MAX_PB_SIZE * MAX_PB_SIZE]); int ct_depth; CodingUnit cu; diff --git a/libavcodec/x86/hevc_mc.asm b/libavcodec/x86/hevc_mc.asm index e8a5032f16..04d00ce4dd 100644 --- a/libavcodec/x86/hevc_mc.asm +++ b/libavcodec/x86/hevc_mc.asm @@ -103,14 +103,14 @@ QPEL_TABLE 10, 8, w, avx2 %endif ;avx %elif %1 <= 16 %if cpuflag(avx2) - movu %3, [%2] + mova %3, [%2] %else movdqa %3, [%2] ; load data from source2 movdqa %4, [%2+16] ; load data from source2 %endif ; avx %else ; %1 = 32 - movu %3, [%2] - movu %4, [%2+32] + mova %3, [%2] + mova %4, [%2+32] %endif %endmacro