summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--configure.ac20
-rw-r--r--pixman/pixman.h3
2 files changed, 17 insertions, 6 deletions
diff --git a/configure.ac b/configure.ac
index dcfbfa9a..fed97b18 100644
--- a/configure.ac
+++ b/configure.ac
@@ -363,18 +363,28 @@ AM_CONDITIONAL(USE_VMX, test $have_vmx_intrinsics = yes)
dnl ===========================================================================
dnl Check for ARM SIMD instructions
-ARM_SIMD_CFLAGS="-mcpu=arm1136j-s"
+ARM_SIMD_CFLAGS=""
have_arm_simd=no
AC_MSG_CHECKING(whether to use ARM SIMD assembler)
-xserver_save_CFLAGS=$CFLAGS
-CFLAGS="$ARM_SIMD_CFLAGS $CFLAGS"
+# check with default CFLAGS in case the toolchain turns on a sufficiently recent -mcpu=
AC_COMPILE_IFELSE([
int main () {
asm("uqadd8 r1, r1, r2");
return 0;
-}], have_arm_simd=yes)
-CFLAGS=$xserver_save_CFLAGS
+}], have_arm_simd=yes,
+ # check again with an explicit -mcpu= in case the toolchain defaults to an
+ # older one; note that uqadd8 isn't available in Thumb mode on arm1136j-s
+ # so we force ARM mode
+ ARM_SIMD_CFLAGS="-mcpu=arm1136j-s -marm"
+ xserver_save_CFLAGS=$CFLAGS
+ CFLAGS="$ARM_SIMD_CFLAGS $CFLAGS"
+ AC_COMPILE_IFELSE([
+ int main () {
+ asm("uqadd8 r1, r1, r2");
+ return 0;
+ }], have_arm_simd=yes)
+ CFLAGS=$xserver_save_CFLAGS)
AC_ARG_ENABLE(arm-simd,
[AC_HELP_STRING([--disable-arm-simd],
diff --git a/pixman/pixman.h b/pixman/pixman.h
index 69af0f90..23feb2f1 100644
--- a/pixman/pixman.h
+++ b/pixman/pixman.h
@@ -343,9 +343,10 @@ typedef enum
PIXMAN_OP_HSL_HUE = 0x3b,
PIXMAN_OP_HSL_SATURATION = 0x3c,
PIXMAN_OP_HSL_COLOR = 0x3d,
- PIXMAN_OP_HSL_LUMINOSITY = 0x3e,
+ PIXMAN_OP_HSL_LUMINOSITY = 0x3e
#ifdef PIXMAN_USE_INTERNAL_API
+ ,
PIXMAN_N_OPERATORS,
PIXMAN_OP_NONE = PIXMAN_N_OPERATORS
#endif