diff --git a/ChangeLog b/ChangeLog index b2a3f61586..056d3c4a43 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2018-06-27 Florian Weimer + + [BZ #18023] + * include/alloca.h (stackinfo_alloca_round, extend_alloca) + (extend_alloca_account): Remove. + * manual/stdio.texi (Variable Arguments Output): Update comment. + 2018-06-27 Joseph Myers * nptl/sockperf.c: Remove file. diff --git a/include/alloca.h b/include/alloca.h index fd90664f0a..c0b8395443 100644 --- a/include/alloca.h +++ b/include/alloca.h @@ -23,57 +23,17 @@ libc_hidden_proto (__libc_alloca_cutoff) #include -#ifndef stackinfo_alloca_round -# define stackinfo_alloca_round(l) (((l) + 15) & -16) -#endif - -#if _STACK_GROWS_DOWN -# define extend_alloca(buf, len, newlen) \ - (__typeof (buf)) ({ size_t __newlen = stackinfo_alloca_round (newlen); \ - char *__newbuf = __alloca (__newlen); \ - if (__newbuf + __newlen == (char *) (buf)) \ - len += __newlen; \ - else \ - len = __newlen; \ - __newbuf; }) -#elif _STACK_GROWS_UP -# define extend_alloca(buf, len, newlen) \ - (__typeof (buf)) ({ size_t __newlen = stackinfo_alloca_round (newlen); \ - char *__newbuf = __alloca (__newlen); \ - char *__buf = (char *) (buf); \ - if (__buf + len == __newbuf) \ - { \ - len += __newlen; \ - __newbuf = __buf; \ - } \ - else \ - len = __newlen; \ - __newbuf; }) -#else -# define extend_alloca(buf, len, newlen) \ - __alloca (((len) = (newlen))) -#endif - #if defined stackinfo_get_sp && defined stackinfo_sub_sp # define alloca_account(size, avar) \ ({ void *old__ = stackinfo_get_sp (); \ void *m__ = __alloca (size); \ avar += stackinfo_sub_sp (old__); \ m__; }) -# define extend_alloca_account(buf, len, newlen, avar) \ - ({ void *old__ = stackinfo_get_sp (); \ - void *m__ = extend_alloca (buf, len, newlen); \ - avar += stackinfo_sub_sp (old__); \ - m__; }) #else # define alloca_account(size, avar) \ ({ size_t s__ = (size); \ avar += s__; \ __alloca (s__); }) -# define extend_alloca_account(buf, len, newlen, avar) \ - ({ size_t s__ = (newlen); \ - avar += s__; \ - extend_alloca (buf, len, s__); }) #endif # endif /* !_ISOMAC */ diff --git a/manual/stdio.texi b/manual/stdio.texi index 38be236991..379f003b3f 100644 --- a/manual/stdio.texi +++ b/manual/stdio.texi @@ -2622,7 +2622,6 @@ pointer @var{ap}. @c __libc_use_alloca @c process_arg @c process_string_arg -@c extend_alloca @c __parse_one_spec(wc|mb) @c *__printf_arginfo_table unguarded @c __printf_va_arg_table-> unguarded