diff options
author | Lynne <dev@lynne.ee> | 2021-07-18 15:00:48 +0200 |
---|---|---|
committer | Lynne <dev@lynne.ee> | 2021-07-18 15:04:57 +0200 |
commit | 997f9bdb99de18b27f8f213f381c5e90536a1be9 (patch) | |
tree | 4b9d5a4ccdc550c3f1a2befbcaad1e952a4a8dcd /libavutil/x86 | |
parent | 694545b6d5fff5a8242b5fab8c1746e74a06f9ba (diff) | |
download | ffmpeg-997f9bdb99de18b27f8f213f381c5e90536a1be9.tar.gz |
x86/tx_float: correctly load the transform length
The field is a standard field, yet we were loading it as if it was
a quadword. This worked for forward transforms by chance, but broke
when the transform was inverse.
checkasm couldn't catch that because we only test forward transforms,
which are identical to inverse transforms but with a different revtab.
Diffstat (limited to 'libavutil/x86')
-rw-r--r-- | libavutil/x86/tx_float.asm | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/libavutil/x86/tx_float.asm b/libavutil/x86/tx_float.asm index b71fb49592..4d2283fae1 100644 --- a/libavutil/x86/tx_float.asm +++ b/libavutil/x86/tx_float.asm @@ -884,7 +884,7 @@ ALIGN 16 %macro FFT_SPLIT_RADIX_FN 1 INIT_YMM %1 cglobal split_radix_fft_float, 4, 8, 16, 272, lut, out, in, len, tmp, itab, rtab, tgt - mov lenq, [lutq + AVTXContext.m] + movsxd lenq, dword [lutq + AVTXContext.m] mov lutq, [lutq + AVTXContext.revtab] mov tgtq, lenq |