Fix build on PowerPC SPE systems
SPE systems don't support AltiVec instructions. Fixes #172
This commit is contained in:
31
acinclude.m4
31
acinclude.m4
@@ -252,3 +252,34 @@ AC_DEFUN([AC_CHECK_COMPATIBLE_ARM64_ASSEMBLER_IFELSE],[
|
|||||||
$2
|
$2
|
||||||
fi
|
fi
|
||||||
])
|
])
|
||||||
|
|
||||||
|
# AC_CHECK_ALTIVEC
|
||||||
|
# ----------------
|
||||||
|
# Test whether AltiVec intrinsics are supported
|
||||||
|
AC_DEFUN([AC_CHECK_ALTIVEC],[
|
||||||
|
ac_save_CFLAGS="$CFLAGS"
|
||||||
|
CFLAGS="$CFLAGS -maltivec"
|
||||||
|
AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
|
||||||
|
#include <altivec.h>
|
||||||
|
int main(void) {
|
||||||
|
__vector int vi = { 0, 0, 0, 0 };
|
||||||
|
return vi[0];
|
||||||
|
}]])], ac_has_altivec=yes)
|
||||||
|
CFLAGS="$ac_save_CFLAGS"
|
||||||
|
if test "x$ac_has_altivec" = "xyes" ; then
|
||||||
|
$1
|
||||||
|
else
|
||||||
|
$2
|
||||||
|
fi
|
||||||
|
])
|
||||||
|
|
||||||
|
AC_DEFUN([AC_NO_SIMD],[
|
||||||
|
AC_MSG_RESULT([no ("$1")])
|
||||||
|
with_simd=no;
|
||||||
|
if test "x${require_simd}" = "xyes"; then
|
||||||
|
AC_MSG_ERROR([SIMD support not available for this CPU.])
|
||||||
|
else
|
||||||
|
AC_MSG_WARN([SIMD support not available for this CPU. Performance will\
|
||||||
|
suffer.])
|
||||||
|
fi
|
||||||
|
])
|
||||||
|
|||||||
14
configure.ac
14
configure.ac
@@ -517,17 +517,13 @@ if test "x${with_simd}" != "xno"; then
|
|||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
powerpc*)
|
powerpc*)
|
||||||
AC_MSG_RESULT([yes (powerpc)])
|
AC_CHECK_ALTIVEC(
|
||||||
simd_arch=powerpc
|
[AC_MSG_RESULT([yes (powerpc)])
|
||||||
|
simd_arch=powerpc],
|
||||||
|
[AC_NO_SIMD(PowerPC SPE)])
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
AC_MSG_RESULT([no ("$host_cpu")])
|
AC_NO_SIMD($host_cpu)
|
||||||
with_simd=no;
|
|
||||||
if test "x${require_simd}" = "xyes"; then
|
|
||||||
AC_MSG_ERROR([SIMD support not available for this CPU.])
|
|
||||||
else
|
|
||||||
AC_MSG_WARN([SIMD support not available for this CPU. Performance will suffer.])
|
|
||||||
fi
|
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user