diff options
author | Andreas Rheinhardt <andreas.rheinhardt@outlook.com> | 2024-03-13 01:49:54 +0100 |
---|---|---|
committer | Andreas Rheinhardt <andreas.rheinhardt@outlook.com> | 2024-03-14 21:52:16 +0100 |
commit | 8e207bf463618c14a6e5cad882ee7622a303a320 (patch) | |
tree | 52f1b59c7b96b818f5739890ad8390439e8255f5 | |
parent | cc2d2b665e48ce3d0f2a9050cb2aeb2796a8849f (diff) | |
download | ffmpeg-8e207bf463618c14a6e5cad882ee7622a303a320.tar.gz |
avcodec/mpeg4videodec: Align idct-block appropriately
It is accessed via AV_RN64A in ff_simple_idct_put_int32_10bit().
Should fix the UBSan failures in the mpeg4-simple-studio-profile
test here:
https://fate.ffmpeg.org/report.cgi?time=20240312011016&slot=ppc-linux-gcc-13.2-ubsan-altivec-qemu
Reviewed-by: Kieran Kunhya <kierank@obe.tv>
Tested-by: Sean McGovern <gseanmcg@gmail.com>
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
-rw-r--r-- | libavcodec/mpeg4videodec.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/libavcodec/mpeg4videodec.h b/libavcodec/mpeg4videodec.h index c0e6ec6592..4a26d18987 100644 --- a/libavcodec/mpeg4videodec.h +++ b/libavcodec/mpeg4videodec.h @@ -29,6 +29,7 @@ #include "mpegvideo.h" #include "mpeg4videodsp.h" +#include "libavutil/mem_internal.h" typedef struct Mpeg4DecContext { MpegEncContext m; @@ -83,7 +84,7 @@ typedef struct Mpeg4DecContext { Mpeg4VideoDSPContext mdsp; - int32_t block32[12][64]; + DECLARE_ALIGNED(8, int32_t, block32)[12][64]; // 0 = DCT, 1 = DPCM top to bottom scan, -1 = DPCM bottom to top scan int dpcm_direction; int16_t dpcm_macroblock[3][256]; |