summaryrefslogtreecommitdiffstats
path: root/compiler-rt/lib/tsan/rtl/tsan_flags.cc
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2013-10-03 17:14:35 +0000
committerDmitry Vyukov <dvyukov@google.com>2013-10-03 17:14:35 +0000
commit302ec7b9bc49c4c88fd7c9e579de897005bff45e (patch)
tree10b6c3ee296fe16a96e51b19c989040c4afac91b /compiler-rt/lib/tsan/rtl/tsan_flags.cc
parent72f55d46c8873a76d9070ca200eeede6aca64d7c (diff)
downloadbcm5719-llvm-302ec7b9bc49c4c88fd7c9e579de897005bff45e.tar.gz
bcm5719-llvm-302ec7b9bc49c4c88fd7c9e579de897005bff45e.zip
tsan: add memory_limit_mb flag
The flag allows to bound maximum process memory consumption (best effort). If RSS reaches memory_limit_mb, tsan flushes all shadow memory. llvm-svn: 191913
Diffstat (limited to 'compiler-rt/lib/tsan/rtl/tsan_flags.cc')
-rw-r--r--compiler-rt/lib/tsan/rtl/tsan_flags.cc2
1 files changed, 2 insertions, 0 deletions
diff --git a/compiler-rt/lib/tsan/rtl/tsan_flags.cc b/compiler-rt/lib/tsan/rtl/tsan_flags.cc
index a1f82004074..acf787d56ce 100644
--- a/compiler-rt/lib/tsan/rtl/tsan_flags.cc
+++ b/compiler-rt/lib/tsan/rtl/tsan_flags.cc
@@ -59,6 +59,7 @@ void InitializeFlags(Flags *f, const char *env) {
f->profile_memory = "";
f->flush_memory_ms = 0;
f->flush_symbolizer_ms = 5000;
+ f->memory_limit_mb = 0;
f->stop_on_start = false;
f->running_on_valgrind = false;
f->external_symbolizer_path = "";
@@ -92,6 +93,7 @@ void InitializeFlags(Flags *f, const char *env) {
ParseFlag(env, &f->profile_memory, "profile_memory");
ParseFlag(env, &f->flush_memory_ms, "flush_memory_ms");
ParseFlag(env, &f->flush_symbolizer_ms, "flush_symbolizer_ms");
+ ParseFlag(env, &f->memory_limit_mb, "memory_limit_mb");
ParseFlag(env, &f->stop_on_start, "stop_on_start");
ParseFlag(env, &f->external_symbolizer_path, "external_symbolizer_path");
ParseFlag(env, &f->history_size, "history_size");
OpenPOWER on IntegriCloud