diff options
author | Mickaƫl Raulet <mraulet@insa-rennes.fr> | 2015-02-05 19:20:42 +0000 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2015-02-06 21:38:00 +0100 |
commit | 6ecc3fd61225c79116de64167e3bf47736f0e779 (patch) | |
tree | ba0df9673ad66dda342bac5925001a634ef730a0 | |
parent | 383fddeec65f4cebcb197eae702dfefdc6192eb0 (diff) | |
download | ffmpeg-6ecc3fd61225c79116de64167e3bf47736f0e779.tar.gz |
x86/hevc_mc: use aligned loads
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r-- | libavcodec/hevc.h | 2 | ||||
-rw-r--r-- | 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 |