mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-01-08 13:22:53 +02:00
configure: probe RISC-V Vector extension
This commit is contained in:
parent
0c0a3deb18
commit
1b6aee52a5
2
Makefile
2
Makefile
@ -91,7 +91,7 @@ ffbuild/.config: $(CONFIGURABLE_COMPONENTS)
|
|||||||
SUBDIR_VARS := CLEANFILES FFLIBS HOSTPROGS TESTPROGS TOOLS \
|
SUBDIR_VARS := CLEANFILES FFLIBS HOSTPROGS TESTPROGS TOOLS \
|
||||||
HEADERS ARCH_HEADERS BUILT_HEADERS SKIPHEADERS \
|
HEADERS ARCH_HEADERS BUILT_HEADERS SKIPHEADERS \
|
||||||
ARMV5TE-OBJS ARMV6-OBJS ARMV8-OBJS VFP-OBJS NEON-OBJS \
|
ARMV5TE-OBJS ARMV6-OBJS ARMV8-OBJS VFP-OBJS NEON-OBJS \
|
||||||
ALTIVEC-OBJS VSX-OBJS MMX-OBJS X86ASM-OBJS \
|
ALTIVEC-OBJS VSX-OBJS RVV-OBJS MMX-OBJS X86ASM-OBJS \
|
||||||
MIPSFPU-OBJS MIPSDSPR2-OBJS MIPSDSP-OBJS MSA-OBJS \
|
MIPSFPU-OBJS MIPSDSPR2-OBJS MIPSDSP-OBJS MSA-OBJS \
|
||||||
MMI-OBJS LSX-OBJS LASX-OBJS OBJS SLIBOBJS SHLIBOBJS \
|
MMI-OBJS LSX-OBJS LASX-OBJS OBJS SLIBOBJS SHLIBOBJS \
|
||||||
STLIBOBJS HOSTOBJS TESTOBJS
|
STLIBOBJS HOSTOBJS TESTOBJS
|
||||||
|
15
configure
vendored
15
configure
vendored
@ -462,6 +462,7 @@ Optimization options (experts only):
|
|||||||
--disable-mmi disable Loongson MMI optimizations
|
--disable-mmi disable Loongson MMI optimizations
|
||||||
--disable-lsx disable Loongson LSX optimizations
|
--disable-lsx disable Loongson LSX optimizations
|
||||||
--disable-lasx disable Loongson LASX optimizations
|
--disable-lasx disable Loongson LASX optimizations
|
||||||
|
--disable-rvv disable RISC-V Vector optimizations
|
||||||
--disable-fast-unaligned consider unaligned accesses slow
|
--disable-fast-unaligned consider unaligned accesses slow
|
||||||
|
|
||||||
Developer options (useful when working on FFmpeg itself):
|
Developer options (useful when working on FFmpeg itself):
|
||||||
@ -2126,6 +2127,10 @@ ARCH_EXT_LIST_PPC="
|
|||||||
vsx
|
vsx
|
||||||
"
|
"
|
||||||
|
|
||||||
|
ARCH_EXT_LIST_RISCV="
|
||||||
|
rvv
|
||||||
|
"
|
||||||
|
|
||||||
ARCH_EXT_LIST_X86="
|
ARCH_EXT_LIST_X86="
|
||||||
$ARCH_EXT_LIST_X86_SIMD
|
$ARCH_EXT_LIST_X86_SIMD
|
||||||
cpunop
|
cpunop
|
||||||
@ -2135,6 +2140,7 @@ ARCH_EXT_LIST_X86="
|
|||||||
ARCH_EXT_LIST="
|
ARCH_EXT_LIST="
|
||||||
$ARCH_EXT_LIST_ARM
|
$ARCH_EXT_LIST_ARM
|
||||||
$ARCH_EXT_LIST_PPC
|
$ARCH_EXT_LIST_PPC
|
||||||
|
$ARCH_EXT_LIST_RISCV
|
||||||
$ARCH_EXT_LIST_X86
|
$ARCH_EXT_LIST_X86
|
||||||
$ARCH_EXT_LIST_MIPS
|
$ARCH_EXT_LIST_MIPS
|
||||||
$ARCH_EXT_LIST_LOONGSON
|
$ARCH_EXT_LIST_LOONGSON
|
||||||
@ -2642,6 +2648,8 @@ ppc4xx_deps="ppc"
|
|||||||
vsx_deps="altivec"
|
vsx_deps="altivec"
|
||||||
power8_deps="vsx"
|
power8_deps="vsx"
|
||||||
|
|
||||||
|
rvv_deps="riscv"
|
||||||
|
|
||||||
loongson2_deps="mips"
|
loongson2_deps="mips"
|
||||||
loongson3_deps="mips"
|
loongson3_deps="mips"
|
||||||
mmi_deps_any="loongson2 loongson3"
|
mmi_deps_any="loongson2 loongson3"
|
||||||
@ -6110,6 +6118,10 @@ elif enabled ppc; then
|
|||||||
check_cpp_condition power8 "altivec.h" "defined(_ARCH_PWR8)"
|
check_cpp_condition power8 "altivec.h" "defined(_ARCH_PWR8)"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
elif enabled riscv; then
|
||||||
|
|
||||||
|
enabled rvv && check_inline_asm rvv '".option arch, +v\nvsetivli zero, 0, e8, m1, ta, ma"'
|
||||||
|
|
||||||
elif enabled x86; then
|
elif enabled x86; then
|
||||||
|
|
||||||
check_builtin rdtsc intrin.h "__rdtsc()"
|
check_builtin rdtsc intrin.h "__rdtsc()"
|
||||||
@ -7596,6 +7608,9 @@ if enabled loongarch; then
|
|||||||
echo "LSX enabled ${lsx-no}"
|
echo "LSX enabled ${lsx-no}"
|
||||||
echo "LASX enabled ${lasx-no}"
|
echo "LASX enabled ${lasx-no}"
|
||||||
fi
|
fi
|
||||||
|
if enabled riscv; then
|
||||||
|
echo "RISC-V Vector enabled ${rvv-no}"
|
||||||
|
fi
|
||||||
echo "debug symbols ${debug-no}"
|
echo "debug symbols ${debug-no}"
|
||||||
echo "strip symbols ${stripping-no}"
|
echo "strip symbols ${stripping-no}"
|
||||||
echo "optimize for size ${small-no}"
|
echo "optimize for size ${small-no}"
|
||||||
|
@ -15,5 +15,7 @@ OBJS-$(HAVE_LASX) += $(LASX-OBJS) $(LASX-OBJS-yes)
|
|||||||
OBJS-$(HAVE_ALTIVEC) += $(ALTIVEC-OBJS) $(ALTIVEC-OBJS-yes)
|
OBJS-$(HAVE_ALTIVEC) += $(ALTIVEC-OBJS) $(ALTIVEC-OBJS-yes)
|
||||||
OBJS-$(HAVE_VSX) += $(VSX-OBJS) $(VSX-OBJS-yes)
|
OBJS-$(HAVE_VSX) += $(VSX-OBJS) $(VSX-OBJS-yes)
|
||||||
|
|
||||||
|
OBJS-$(HAVE_RVV) += $(RVV-OBJS) $(RVV-OBJS-yes)
|
||||||
|
|
||||||
OBJS-$(HAVE_MMX) += $(MMX-OBJS) $(MMX-OBJS-yes)
|
OBJS-$(HAVE_MMX) += $(MMX-OBJS) $(MMX-OBJS-yes)
|
||||||
OBJS-$(HAVE_X86ASM) += $(X86ASM-OBJS) $(X86ASM-OBJS-yes)
|
OBJS-$(HAVE_X86ASM) += $(X86ASM-OBJS) $(X86ASM-OBJS-yes)
|
||||||
|
Loading…
Reference in New Issue
Block a user