[PATCH] Sanitizers: Implement `GetRSS` on Mac OS X
Ismail Pazarbasi
ismail.pazarbasi at gmail.com
Mon May 11 13:30:35 PDT 2015
Addressed comments.
http://reviews.llvm.org/D9636
Files:
lib/sanitizer_common/sanitizer_mac.cc
Index: lib/sanitizer_common/sanitizer_mac.cc
===================================================================
--- lib/sanitizer_common/sanitizer_mac.cc
+++ lib/sanitizer_common/sanitizer_mac.cc
@@ -44,6 +44,7 @@
#include <unistd.h>
#include <libkern/OSAtomic.h>
#include <errno.h>
+#include <mach/mach.h>
namespace __sanitizer {
@@ -333,7 +334,16 @@
}
uptr GetRSS() {
- return 0;
+ struct task_basic_info info;
+ unsigned count = TASK_BASIC_INFO_COUNT;
+ kern_return_t result =
+ task_info(mach_task_self(), TASK_BASIC_INFO, (task_info_t)&info, &count);
+ if (UNLIKELY(result != KERN_SUCCESS)) {
+ Report("Cannot get task info. Error: %d\n", result);
+ Die();
+ }
+
+ return info.resident_size;
}
void *internal_start_thread(void (*func)(void *arg), void *arg) { return 0; }
EMAIL PREFERENCES
http://reviews.llvm.org/settings/panel/emailpreferences/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D9636.25502.patch
Type: text/x-patch
Size: 812 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150511/32429905/attachment.bin>
More information about the llvm-commits
mailing list