[FFmpeg-devel] [PATCH 1/2] x86/tx_float: add support for calling assembly functions from assembly

Mattias Wadman mattias.wadman at gmail.com
Tue Sep 6 16:21:17 EEST 2022


On Sat, Sep 3, 2022 at 3:41 AM Lynne <dev at lynne.ee> wrote:

> Needed for the next patch.
> We get this for the extremely small cost of a branch on _ns functions,
> which wouldn't be used anyway with assembly.
>
> Patch attached.
>

Hi, I have issues building on macOS (12.5.1) with this patch. Maybe I'm
missing something? old nasm version?

$ make V=1
nasm -f macho64 -DPIC -DPREFIX -I./ -I.// -Ilibavutil/x86/ -Pconfig.asm
 -MD libavutil/x86/tx_float.d  -o libavutil/x86/tx_float.o
libavutil/x86/tx_float.asm
libavutil/x86/tx_float.asm:753: error: symbol `ff_tx_fft8_asm_float_sse3'
not defined
libavutil/x86/tx_float.asm:747: ... from macro `FFT8_SSE_FN' defined here
libavutil/x86/x86util.asm:1180: ... from macro `call' defined here
libavutil/x86/x86util.asm:1192: ... from macro `call_internal' defined here
libavutil/x86/tx_float.asm:793: error: symbol `ff_tx_fft8_asm_float_avx'
not defined
libavutil/x86/tx_float.asm:787: ... from macro `FFT8_AVX_FN' defined here
libavutil/x86/x86util.asm:1180: ... from macro `call' defined here
libavutil/x86/x86util.asm:1192: ... from macro `call_internal' defined here
libavutil/x86/tx_float.asm:842: error: symbol `ff_tx_fft16_asm_float_avx'
not defined
libavutil/x86/tx_float.asm:836: ... from macro `FFT16_FN' defined here
libavutil/x86/x86util.asm:1180: ... from macro `call' defined here
libavutil/x86/x86util.asm:1192: ... from macro `call_internal' defined here
libavutil/x86/tx_float.asm:844: error: symbol `ff_tx_fft16_asm_float_fma3'
not defined
libavutil/x86/tx_float.asm:836: ... from macro `FFT16_FN' defined here
libavutil/x86/x86util.asm:1180: ... from macro `call' defined here
libavutil/x86/x86util.asm:1192: ... from macro `call_internal' defined here
libavutil/x86/tx_float.asm:927: error: symbol `ff_tx_fft32_asm_float_avx'
not defined
libavutil/x86/tx_float.asm:920: ... from macro `FFT32_FN' defined here
libavutil/x86/x86util.asm:1180: ... from macro `call' defined here
libavutil/x86/x86util.asm:1192: ... from macro `call_internal' defined here
libavutil/x86/tx_float.asm:929: error: symbol `ff_tx_fft32_asm_float_fma3'
not defined
libavutil/x86/tx_float.asm:920: ... from macro `FFT32_FN' defined here
libavutil/x86/x86util.asm:1180: ... from macro `call' defined here
libavutil/x86/x86util.asm:1192: ... from macro `call_internal' defined here
libavutil/x86/tx_float.asm:1352: error: symbol
`ff_tx_fft_sr_asm_float_fma3' not defined
libavutil/x86/tx_float.asm:1345: ... from macro `FFT_SPLIT_RADIX_FN'
defined here
libavutil/x86/x86util.asm:1180: ... from macro `call' defined here
libavutil/x86/x86util.asm:1192: ... from macro `call_internal' defined here
libavutil/x86/tx_float.asm:1355: error: symbol
`ff_tx_fft_sr_asm_float_avx2' not defined
libavutil/x86/tx_float.asm:1345: ... from macro `FFT_SPLIT_RADIX_FN'
defined here
libavutil/x86/x86util.asm:1180: ... from macro `call' defined here
libavutil/x86/x86util.asm:1192: ... from macro `call_internal' defined here
$ nasm --version
NASM version 2.15.05 compiled on Nov 14 2020


More information about the ffmpeg-devel mailing list