From: Alan Modra Date: Mon, 9 Nov 2015 04:47:05 +0000 (+1030) Subject: Configury changes for obstack optimization X-Git-Tag: users/ARM/embedded-binutils-2_26-branch-2016q1~152 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=c20a0642333655311b1f5b6f78adfeb8ec9fe1d4;p=platform%2Fupstream%2Fbinutils.git Configury changes for obstack optimization Provides defines used to determine whether glibc obstacks are compatible. Generally speaking, 32-bit targets won't need to use obstack.o from libiberty if glibc is used, while 64-bit targets will, until glibc gets the new obstack code. libiberty/ * configure.ac: Get size of size_t. * config.in: Regenerate. * configure: Regenerate. --- diff --git a/libiberty/ChangeLog b/libiberty/ChangeLog index 6d3b295..3b360a5 100644 --- a/libiberty/ChangeLog +++ b/libiberty/ChangeLog @@ -1,5 +1,11 @@ 2015-11-09 Alan Modra + * configure.ac: Check size of size_t. + * configure: Regenerate. + * config.in: Regenerate. + +2015-11-09 Alan Modra + * obstack.c (_obstack_newchunk): Silence -Wc++compat warning. (_obstack_begin_worker): Likewise. Move assignment to h->chunk after alloc failure check. diff --git a/libiberty/config.in b/libiberty/config.in index 0dedbf0..1ff50c6 100644 --- a/libiberty/config.in +++ b/libiberty/config.in @@ -470,6 +470,9 @@ /* The size of `long long', as computed by sizeof. */ #undef SIZEOF_LONG_LONG +/* The size of `size_t', as computed by sizeof. */ +#undef SIZEOF_SIZE_T + /* Define if you know the direction of stack growth for your system; otherwise it will be automatically deduced at run-time. STACK_DIRECTION > 0 => grows toward higher addresses STACK_DIRECTION < 0 => grows toward lower addresses diff --git a/libiberty/configure b/libiberty/configure index 720dc5e..bde78ff 100755 --- a/libiberty/configure +++ b/libiberty/configure @@ -5405,6 +5405,40 @@ cat >>confdefs.h <<_ACEOF _ACEOF +# The cast to long int works around a bug in the HP C Compiler +# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects +# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. +# This bug is HP SR number 8606223364. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of size_t" >&5 +$as_echo_n "checking size of size_t... " >&6; } +if test "${ac_cv_sizeof_size_t+set}" = set; then : + $as_echo_n "(cached) " >&6 +else + if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (size_t))" "ac_cv_sizeof_size_t" "$ac_includes_default"; then : + +else + if test "$ac_cv_type_size_t" = yes; then + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +{ as_fn_set_status 77 +as_fn_error "cannot compute sizeof (size_t) +See \`config.log' for more details." "$LINENO" 5; }; } + else + ac_cv_sizeof_size_t=0 + fi +fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_size_t" >&5 +$as_echo "$ac_cv_sizeof_size_t" >&6; } + + + +cat >>confdefs.h <<_ACEOF +#define SIZEOF_SIZE_T $ac_cv_sizeof_size_t +_ACEOF + + # Check for presense of long long ac_fn_c_check_type "$LINENO" "long long" "ac_cv_type_long_long" "$ac_includes_default" diff --git a/libiberty/configure.ac b/libiberty/configure.ac index e21e3aa..9d3f298 100644 --- a/libiberty/configure.ac +++ b/libiberty/configure.ac @@ -276,6 +276,7 @@ libiberty_AC_DECLARE_ERRNO # Determine sizes of some types. AC_CHECK_SIZEOF([int]) AC_CHECK_SIZEOF([long]) +AC_CHECK_SIZEOF([size_t]) # Check for presense of long long AC_CHECK_TYPE([long long],