Provide a getrusage based implementation of GetTotalMemoryUsage and use
the ru_maxrss field as an approximation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19072 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/System/Unix/Process.inc b/lib/System/Unix/Process.inc
index c9507cb..eef6535 100644
--- a/lib/System/Unix/Process.inc
+++ b/lib/System/Unix/Process.inc
@@ -74,6 +74,10 @@
#if defined(HAVE_MALLINFO)
struct mallinfo mi = ::mallinfo();
return mi.uordblks + mi.hblkhd;
+#elif defined(HAVE_GETRUSAGE)
+ struct rusage usage;
+ ::getrusage(RUSAGE_SELF, &usage);
+ return usage.ru_maxrss;
#else
#warning Cannot get total memory size on this platform
return 0;