about summary refs log tree commit diff
path: root/configure.in
diff options
context:
space:
mode:
Diffstat (limited to 'configure.in')
-rw-r--r--configure.in24
1 files changed, 22 insertions, 2 deletions
diff --git a/configure.in b/configure.in
index 5299146cdd..9c627c5611 100644
--- a/configure.in
+++ b/configure.in
@@ -1065,8 +1065,9 @@ EOF
   AC_CACHE_CHECK(for -z combreloc,
 		 libc_cv_z_combreloc, [dnl
   cat > conftest.c <<EOF
-extern int bar (void);
-int foo (void) { return bar (); }
+extern int bar (int);
+extern int mumble;
+int foo (void) { return bar (mumble); }
 EOF
   if AC_TRY_COMMAND([${CC-cc} -shared -o conftest.so conftest.c
 			-nostdlib -nostartfiles
@@ -1398,6 +1399,25 @@ if test "$libc_cv_gcc_builtin_expect" = yes; then
   AC_DEFINE(HAVE_BUILTIN_EXPECT)
 fi
 
+AC_CACHE_CHECK(for __builtin_memset, libc_cv_gcc_builtin_memset, [dnl
+cat > conftest.c <<\EOF
+void zero (void *x)
+{
+  __builtin_memset (x, 0, 4);
+}
+EOF
+dnl
+if AC_TRY_COMMAND([${CC-cc} -O3 -S conftest.c -o - | fgrep "memset" > /dev/null]);
+then
+  libc_cv_gcc_builtin_memset=no
+else
+  libc_cv_gcc_builtin_memset=yes
+fi
+rm -f conftest* ])
+if test "$libc_cv_gcc_builtin_memset" = yes ; then
+  AC_DEFINE(HAVE_BUILTIN_MEMSET)
+fi
+
 dnl Check whether the compiler supports subtraction of local labels.
 AC_CACHE_CHECK(for local label subtraction, libc_cv_gcc_subtract_local_labels,
 [cat > conftest.c <<EOF