Fix gold to use mallinfo2 if available instead of deprecated mallinfo.
gold/ PR gold/26585 * configure.ac: Add check for mallinfo2. * configure: Regenerate. * main.cc (main): Use mallinfo2 if available.
This commit is contained in:
parent
5cde809b7b
commit
4ee6049505
@ -1,3 +1,10 @@
|
|||||||
|
2021-03-19 Duncan Simpson <dr.duncan.p.simpson@gmail.com>
|
||||||
|
|
||||||
|
PR gold/26585
|
||||||
|
* configure.ac: Add check for mallinfo2.
|
||||||
|
* configure: Regenerate.
|
||||||
|
* main.cc (main): Use mallinfo2 if available.
|
||||||
|
|
||||||
2021-03-19 Cary Coutant <ccoutant@gmail.com>
|
2021-03-19 Cary Coutant <ccoutant@gmail.com>
|
||||||
|
|
||||||
PR gold/27246
|
PR gold/27246
|
||||||
|
2
gold/configure
vendored
2
gold/configure
vendored
@ -9967,7 +9967,7 @@ case "$ac_cv_search_dlopen" in
|
|||||||
esac
|
esac
|
||||||
|
|
||||||
|
|
||||||
for ac_func in mallinfo posix_fallocate fallocate readv sysconf times mkdtemp
|
for ac_func in mallinfo mallinfo2 posix_fallocate fallocate readv sysconf times mkdtemp
|
||||||
do :
|
do :
|
||||||
as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
|
as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
|
||||||
ac_fn_cxx_check_func "$LINENO" "$ac_func" "$as_ac_var"
|
ac_fn_cxx_check_func "$LINENO" "$ac_func" "$as_ac_var"
|
||||||
|
@ -636,7 +636,7 @@ case "$ac_cv_search_dlopen" in
|
|||||||
esac
|
esac
|
||||||
AC_SUBST(DLOPEN_LIBS)
|
AC_SUBST(DLOPEN_LIBS)
|
||||||
|
|
||||||
AC_CHECK_FUNCS(mallinfo posix_fallocate fallocate readv sysconf times mkdtemp)
|
AC_CHECK_FUNCS(mallinfo mallinfo2 posix_fallocate fallocate readv sysconf times mkdtemp)
|
||||||
AC_CHECK_DECLS([basename, ffs, asprintf, vasprintf, snprintf, vsnprintf, strverscmp, strndup, memmem])
|
AC_CHECK_DECLS([basename, ffs, asprintf, vasprintf, snprintf, vsnprintf, strverscmp, strndup, memmem])
|
||||||
|
|
||||||
# Use of ::std::tr1::unordered_map::rehash causes undefined symbols
|
# Use of ::std::tr1::unordered_map::rehash causes undefined symbols
|
||||||
|
@ -25,7 +25,7 @@
|
|||||||
#include <cstdio>
|
#include <cstdio>
|
||||||
#include <cstring>
|
#include <cstring>
|
||||||
|
|
||||||
#ifdef HAVE_MALLINFO
|
#if defined(HAVE_MALLINFO) || defined(HAVE_MALLINFO2)
|
||||||
#include <malloc.h>
|
#include <malloc.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -290,11 +290,16 @@ main(int argc, char** argv)
|
|||||||
elapsed.sys / 1000, (elapsed.sys % 1000) * 1000,
|
elapsed.sys / 1000, (elapsed.sys % 1000) * 1000,
|
||||||
elapsed.wall / 1000, (elapsed.wall % 1000) * 1000);
|
elapsed.wall / 1000, (elapsed.wall % 1000) * 1000);
|
||||||
|
|
||||||
#ifdef HAVE_MALLINFO
|
#if defined(HAVE_MALLINFO2)
|
||||||
|
struct mallinfo m = mallinfo2();
|
||||||
|
fprintf(stderr, _("%s: total space allocated by malloc: %lld bytes\n"),
|
||||||
|
program_name, static_cast<long long>(m.arena));
|
||||||
|
#elif defined(HAVE_MALLINFO)
|
||||||
struct mallinfo m = mallinfo();
|
struct mallinfo m = mallinfo();
|
||||||
fprintf(stderr, _("%s: total space allocated by malloc: %lld bytes\n"),
|
fprintf(stderr, _("%s: total space allocated by malloc: %lld bytes\n"),
|
||||||
program_name, static_cast<long long>(m.arena));
|
program_name, static_cast<long long>(m.arena));
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
File_read::print_stats();
|
File_read::print_stats();
|
||||||
Archive::print_stats();
|
Archive::print_stats();
|
||||||
Lib_group::print_stats();
|
Lib_group::print_stats();
|
||||||
|
Loading…
Reference in New Issue
Block a user