From: Luca Barbato <[email protected]> POWER 7 and POWER 8 support VSX and ldbrx.
POWER 8 supports additional extended VSX instructions introduced with ISA 2.07. (cherry picked from commit f22ebd2555d15b59e109a5b630dd71374b076d0b) Signed-off-by: Diego Biurrun <[email protected]> --- configure | 28 +++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/configure b/configure index d5629fe..e70b67e 100755 --- a/configure +++ b/configure @@ -267,6 +267,8 @@ Advanced options (experts only): Optimization options (experts only): --disable-asm disable all assembly optimizations --disable-altivec disable AltiVec optimizations + --disable-vsx disable VSX optimizations + --disable-power8 disable POWER8 optimizations --disable-amd3dnow disable 3DNow! optimizations --disable-amd3dnowext disable 3DNow! extended optimizations --disable-mmx disable MMX optimizations @@ -1317,7 +1319,9 @@ ARCH_EXT_LIST_PPC=" altivec dcbzl ldbrx + power8 ppc4xx + vsx " ARCH_EXT_LIST_X86=" @@ -1679,6 +1683,8 @@ map 'eval ${v}_inline_deps=inline_asm' $ARCH_EXT_LIST_ARM altivec_deps="ppc" ppc4xx_deps="ppc" +vsx_deps="altivec" +power8_deps="vsx" cpunop_deps="i686" x86_64_select="i686" @@ -3247,19 +3253,28 @@ elif enabled ppc; then ;; g4|745*|ppc745*|powerpc745*) cpuflags="-mcpu=7450" + disable vsx ;; 74*|ppc74*|powerpc74*) cpuflags="-mcpu=7400" + disable vsx ;; g5|970|ppc970|powerpc970) cpuflags="-mcpu=970" + disable vsx ;; - power[3-7]*) + power[3-6]*) cpuflags="-mcpu=$cpu" + disable vsx + ;; + power[7-8]*) + cpuflags="-mcpu=$cpu" + enable ldbrx ;; cell) cpuflags="-mcpu=cell" enable ldbrx + disable vsx ;; e500mc) cpuflags="-mcpu=e500mc" @@ -3949,6 +3964,15 @@ EOF enabled altivec || warn "Altivec disabled, possibly missing --cpu flag" fi + if enabled vsx; then + check_cflags -mvsx && + check_builtin vec_vsx_ld "altivec.h" "__builtin_vec_vsx_ld" || disable vsx + fi + + if enabled power8; then + check_cpp_condition "altivec.h" "defined(_ARCH_PWR8)" || disable power8 + fi + elif enabled x86; then check_builtin rdtsc intrin.h "__rdtsc()" @@ -4584,6 +4608,8 @@ if enabled arm; then fi if enabled ppc; then echo "AltiVec enabled ${altivec-no}" + echo "VSX enabled ${vsx-no}" + echo "POWER8 enabled ${power8-no}" echo "PPC 4xx optimizations ${ppc4xx-no}" echo "dcbzl available ${dcbzl-no}" fi -- 2.7.3 _______________________________________________ libav-devel mailing list [email protected] https://lists.libav.org/mailman/listinfo/libav-devel
