On Mon, Jun 16, 2025 at 01:19:55PM +0200, Niklas Haas wrote: > From: Niklas Haas <g...@haasn.dev> > > Processes two channels in parallel, using 128-bit XMM registers. > > In theory, we could go up to YMM registers to process 4 channels, but this is > not a gain except for relatively high channel counts (e.g. 7.1), and also > complicates the sample load/store operations considerably. > > I decided to only add an AVX variant, since the C code is not substantially > slower enough to justify a separate function just for ancient CPUs. > --- > libavfilter/f_ebur128.c | 15 ++-- > libavfilter/f_ebur128.h | 16 ++++ > libavfilter/x86/Makefile | 4 + > libavfilter/x86/f_ebur128.asm | 142 +++++++++++++++++++++++++++++++ > libavfilter/x86/f_ebur128_init.c | 35 ++++++++ > 5 files changed, 207 insertions(+), 5 deletions(-) > create mode 100644 libavfilter/x86/f_ebur128.asm > create mode 100644 libavfilter/x86/f_ebur128_init.c
breaks x86-32 build src/libavfilter/x86/f_ebur128.asm:116: error: symbol `m8' undefined src//libavutil/x86/x86inc.asm:1638: ... from macro `movddup' defined here src//libavutil/x86/x86inc.asm:1501: ... from macro `RUN_AVX_INSTR' defined here src/libavfilter/x86/f_ebur128.asm:118: error: symbol `m9' undefined src//libavutil/x86/x86inc.asm:1638: ... from macro `movddup' defined here src//libavutil/x86/x86inc.asm:1501: ... from macro `RUN_AVX_INSTR' defined here src/libavfilter/x86/f_ebur128.asm:119: error: symbol `m10' undefined src//libavutil/x86/x86inc.asm:1638: ... from macro `movddup' defined here src//libavutil/x86/x86inc.asm:1501: ... from macro `RUN_AVX_INSTR' defined here src/libavfilter/x86/f_ebur128.asm:120: error: symbol `m11' undefined src//libavutil/x86/x86inc.asm:1638: ... from macro `movddup' defined here src//libavutil/x86/x86inc.asm:1501: ... from macro `RUN_AVX_INSTR' defined here src/libavfilter/x86/f_ebur128.asm:121: error: symbol `m12' undefined src//libavutil/x86/x86inc.asm:1638: ... from macro `movddup' defined here src//libavutil/x86/x86inc.asm:1501: ... from macro `RUN_AVX_INSTR' defined here src/libavfilter/x86/f_ebur128.asm:122: error: symbol `m13' undefined src//libavutil/x86/x86inc.asm:1638: ... from macro `movddup' defined here src//libavutil/x86/x86inc.asm:1501: ... from macro `RUN_AVX_INSTR' defined here src/libavfilter/x86/f_ebur128.asm:124: error: symbol `r7q' undefined src/libavfilter/x86/f_ebur128.asm:125: error: symbol `r8q' undefined src/libavfilter/x86/f_ebur128.asm:132: error: symbol `r7q' undefined ... [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB Take away the freedom of one citizen and you will be jailed, take away the freedom of all citizens and you will be congratulated by your peers in Parliament.
signature.asc
Description: PGP signature
_______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".