mirror of https://git.ffmpeg.org/ffmpeg.git
configure: Add check_x86asm() helper function to simplify some expressions
This commit is contained in:
parent
17ee5b0c13
commit
8c7554e6a9
|
@ -808,6 +808,18 @@ test_as(){
|
||||||
test_cmd $as $CPPFLAGS $ASFLAGS "$@" $AS_C $(as_o $TMPO) $TMPS
|
test_cmd $as $CPPFLAGS $ASFLAGS "$@" $AS_C $(as_o $TMPO) $TMPS
|
||||||
}
|
}
|
||||||
|
|
||||||
|
x86asm_o(){
|
||||||
|
eval printf '%s\\n' $X86ASM_O
|
||||||
|
}
|
||||||
|
|
||||||
|
test_x86asm(){
|
||||||
|
log test_x86asm "$@"
|
||||||
|
echo "$1" > $TMPASM
|
||||||
|
log_file $TMPASM
|
||||||
|
shift
|
||||||
|
test_cmd $x86asmexe $X86ASMFLAGS "$@" $(x86asm_o $TMPO) $TMPASM
|
||||||
|
}
|
||||||
|
|
||||||
check_cmd(){
|
check_cmd(){
|
||||||
log check_cmd "$@"
|
log check_cmd "$@"
|
||||||
cmd=$1
|
cmd=$1
|
||||||
|
@ -844,16 +856,12 @@ check_insn(){
|
||||||
check_as ${1}_external "$2"
|
check_as ${1}_external "$2"
|
||||||
}
|
}
|
||||||
|
|
||||||
x86asm_o(){
|
check_x86asm(){
|
||||||
eval printf '%s\\n' $X86ASM_O
|
log check_x86asm "$@"
|
||||||
}
|
name=$1
|
||||||
|
shift
|
||||||
test_x86asm(){
|
disable $name
|
||||||
log test_x86asm "$@"
|
test_x86asm "$@" && enable $name
|
||||||
echo "$1" > $TMPASM
|
|
||||||
log_file $TMPASM
|
|
||||||
shift 1
|
|
||||||
test_cmd $x86asmexe $X86ASMFLAGS "$@" $(x86asm_o $TMPO) $TMPASM
|
|
||||||
}
|
}
|
||||||
|
|
||||||
ld_o(){
|
ld_o(){
|
||||||
|
@ -4425,7 +4433,7 @@ EOF
|
||||||
X86ASMDEP='$(DEPX86ASM) $(X86ASMFLAGS) -M $(X86ASM_O) $< > $(@:.o=.d)'
|
X86ASMDEP='$(DEPX86ASM) $(X86ASMFLAGS) -M $(X86ASM_O) $< > $(@:.o=.d)'
|
||||||
X86ASM_DEPFLAGS=
|
X86ASM_DEPFLAGS=
|
||||||
fi
|
fi
|
||||||
test_x86asm "movbe ecx, [5]" && enable x86asm
|
check_x86asm x86asm "movbe ecx, [5]"
|
||||||
}
|
}
|
||||||
|
|
||||||
if ! disabled_any asm mmx x86asm; then
|
if ! disabled_any asm mmx x86asm; then
|
||||||
|
@ -4441,11 +4449,11 @@ EOF
|
||||||
elf*) enabled debug && append X86ASMFLAGS $x86asm_debug ;;
|
elf*) enabled debug && append X86ASMFLAGS $x86asm_debug ;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
test_x86asm "vextracti128 xmm0, ymm0, 0" || disable avx2_external
|
check_x86asm avx2_external "vextracti128 xmm0, ymm0, 0"
|
||||||
test_x86asm "vpmacsdd xmm0, xmm1, xmm2, xmm3" || disable xop_external
|
check_x86asm xop_external "vpmacsdd xmm0, xmm1, xmm2, xmm3"
|
||||||
test_x86asm "vfmadd132ps ymm0, ymm1, ymm2" || disable fma3_external
|
check_x86asm fma3_external "vfmadd132ps ymm0, ymm1, ymm2"
|
||||||
test_x86asm "vfmaddps ymm0, ymm1, ymm2, ymm3" || disable fma4_external
|
check_x86asm fma4_external "vfmaddps ymm0, ymm1, ymm2, ymm3"
|
||||||
test_x86asm "CPU amdnop" || disable cpunop
|
check_x86asm cpunop "CPU amdnop"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
case "$cpu" in
|
case "$cpu" in
|
||||||
|
|
Loading…
Reference in New Issue