mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-25 12:12:47 +01:00
Fix deprecated usage of mallinfo
glibc deprecates `mallinfo` in the latest version of 2.33. This patch replaces the usage of `mallinfo` with the new `mallinfo2` when it's available. Reviewed By: lattner Differential Revision: https://reviews.llvm.org/D96359
This commit is contained in:
parent
11a8dba5aa
commit
ca74e6236d
@ -232,6 +232,7 @@ check_symbol_exists(lseek64 "sys/types.h;unistd.h" HAVE_LSEEK64)
|
||||
set(CMAKE_REQUIRED_DEFINITIONS "")
|
||||
check_symbol_exists(mallctl malloc_np.h HAVE_MALLCTL)
|
||||
check_symbol_exists(mallinfo malloc.h HAVE_MALLINFO)
|
||||
check_symbol_exists(mallinfo2 malloc.h HAVE_MALLINFO2)
|
||||
check_symbol_exists(malloc_zone_statistics malloc/malloc.h
|
||||
HAVE_MALLOC_ZONE_STATISTICS)
|
||||
check_symbol_exists(getrlimit "sys/types.h;sys/time.h;sys/resource.h" HAVE_GETRLIMIT)
|
||||
|
@ -136,6 +136,9 @@
|
||||
/* Define to 1 if you have the `mallinfo' function. */
|
||||
#cmakedefine HAVE_MALLINFO ${HAVE_MALLINFO}
|
||||
|
||||
/* Define to 1 if you have the `mallinfo2' function. */
|
||||
#cmakedefine HAVE_MALLINFO2 ${HAVE_MALLINFO2}
|
||||
|
||||
/* Define to 1 if you have the <malloc/malloc.h> header file. */
|
||||
#cmakedefine HAVE_MALLOC_MALLOC_H ${HAVE_MALLOC_MALLOC_H}
|
||||
|
||||
|
@ -31,7 +31,7 @@
|
||||
#if HAVE_SIGNAL_H
|
||||
#include <signal.h>
|
||||
#endif
|
||||
#if defined(HAVE_MALLINFO)
|
||||
#if defined(HAVE_MALLINFO) || defined(HAVE_MALLINFO2)
|
||||
#include <malloc.h>
|
||||
#endif
|
||||
#if defined(HAVE_MALLCTL)
|
||||
@ -89,7 +89,11 @@ Expected<unsigned> Process::getPageSize() {
|
||||
}
|
||||
|
||||
size_t Process::GetMallocUsage() {
|
||||
#if defined(HAVE_MALLINFO)
|
||||
#if defined(HAVE_MALLINFO2)
|
||||
struct mallinfo2 mi;
|
||||
mi = ::mallinfo2();
|
||||
return mi.uordblks;
|
||||
#elif defined(HAVE_MALLINFO)
|
||||
struct mallinfo mi;
|
||||
mi = ::mallinfo();
|
||||
return mi.uordblks;
|
||||
|
Loading…
Reference in New Issue
Block a user