about summary refs log tree commit diff
path: root/elf
diff options
context:
space:
mode:
authorAndreas Schwab <schwab@linux-m68k.org>2011-11-01 18:05:31 +0100
committerAndreas Schwab <schwab@linux-m68k.org>2011-11-01 18:29:34 +0100
commit647776f663e8bb9ee365e0dbabd3702b8cb80bc3 (patch)
tree77affe2269ba680a6239396a9cb589283963fc71 /elf
parentd91a8b93aaa8a3d2d9b5fd64e111c5a4eb24d2b9 (diff)
downloadglibc-647776f663e8bb9ee365e0dbabd3702b8cb80bc3.tar.gz
glibc-647776f663e8bb9ee365e0dbabd3702b8cb80bc3.tar.xz
glibc-647776f663e8bb9ee365e0dbabd3702b8cb80bc3.zip
Account for alloca size rounding in extend_alloca
Diffstat (limited to 'elf')
-rw-r--r--elf/dl-deps.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/elf/dl-deps.c b/elf/dl-deps.c
index a1ba3d1d32..565a339331 100644
--- a/elf/dl-deps.c
+++ b/elf/dl-deps.c
@@ -221,15 +221,11 @@ _dl_map_object_deps (struct link_map *map,
       if (l->l_searchlist.r_list == NULL && l->l_initfini == NULL
 	  && l != map && l->l_ldnum > 0)
 	{
-	  /* 16-align so extend_alloca has a chance to re-use the space.
-	     Note that extend_alloca is broken for recent versions of GCC
-	     on x86: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50938  */
-	  size_t new_size
-            = (l->l_ldnum * sizeof (struct link_map *) + 15) & ~15;
+	  size_t new_size = l->l_ldnum * sizeof (struct link_map *);
 
 	  if (new_size > needed_space_bytes)
 	    needed_space
-              = extend_alloca (needed_space, needed_space_bytes, new_size);
+	      = extend_alloca (needed_space, needed_space_bytes, new_size);
 
 	  needed = needed_space;
 	}