summaryrefslogtreecommitdiff
path: root/configure.in
diff options
context:
space:
mode:
authorPaul Eggert <eggert@cs.ucla.edu>2011-01-17 20:54:23 -0800
committerPaul Eggert <eggert@cs.ucla.edu>2011-01-17 20:54:23 -0800
commit7cae64b4eed192a49ea258089639ec44da6095e2 (patch)
treeb985de2a995674ad01ead7920526e80b9b4798b6 /configure.in
parent9cc3a0c79c5a6af2691b2b566f8e3eb3654b806f (diff)
downloademacs-7cae64b4eed192a49ea258089639ec44da6095e2.tar.gz
Improve performance on non-GCC hosts with __aligned__.
Diffstat (limited to 'configure.in')
-rw-r--r--configure.in14
1 files changed, 13 insertions, 1 deletions
diff --git a/configure.in b/configure.in
index 2cac4f3e7d0..c338ff37a60 100644
--- a/configure.in
+++ b/configure.in
@@ -1323,6 +1323,19 @@ AH_TEMPLATE(POINTER_TYPE,
dnl Check for endianess
AC_C_BIGENDIAN
+AC_CACHE_CHECK([for __attribute__ ((__aligned__ (expr)))],
+ [emacs_cv_attribute_aligned],
+ [AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[char __attribute__ ((__aligned__ (1 << 3))) c;]],
+ [[]])],
+ [emacs_cv_attribute_aligned=yes],
+ [emacs_cv_attribute_aligned=no])])
+if test $emacs_cv_attribute_aligned = yes; then
+ AC_DEFINE([HAVE_ATTRIBUTE_ALIGNED], 1,
+ [Define to 1 if GCC-style __attribute__ ((__aligned__ (expr))) works.])
+fi
+
dnl check for Make feature
AC_PROG_MAKE_SET
@@ -3734,4 +3747,3 @@ if test ! -f src/.gdbinit && test -f $srcdir/src/.gdbinit; then
fi
], [GCC="$GCC" NON_GNU_CPP="$NON_GNU_CPP" CPP="$CPP" CPPFLAGS="$CPPFLAGS"])
-