Mercurial > hg > graal-jvmci-8
comparison src/share/vm/services/memTracker.cpp @ 20364:c6211b707068
8055007: NMT2: emptyStack missing in minimal build
Summary: Refactored emptyStack to a static member of NativeCallStack, which is accessible in minimal build.
Reviewed-by: coleenp, dholmes
author | zgu |
---|---|
date | Tue, 19 Aug 2014 08:34:25 -0400 |
parents | 36c9011aaead |
children | 417e3b8d04c5 |
comparison
equal
deleted
inserted
replaced
20363:36c9011aaead | 20364:c6211b707068 |
---|---|
36 volatile bool NMT_stack_walkable = true; | 36 volatile bool NMT_stack_walkable = true; |
37 #endif | 37 #endif |
38 | 38 |
39 volatile NMT_TrackingLevel MemTracker::_tracking_level = NMT_unknown; | 39 volatile NMT_TrackingLevel MemTracker::_tracking_level = NMT_unknown; |
40 NMT_TrackingLevel MemTracker::_cmdline_tracking_level = NMT_unknown; | 40 NMT_TrackingLevel MemTracker::_cmdline_tracking_level = NMT_unknown; |
41 | |
42 NativeCallStack emptyStack(0, false); | |
43 | 41 |
44 MemBaseline MemTracker::_baseline; | 42 MemBaseline MemTracker::_baseline; |
45 Mutex* MemTracker::_query_lock = NULL; | 43 Mutex* MemTracker::_query_lock = NULL; |
46 bool MemTracker::_is_nmt_env_valid = true; | 44 bool MemTracker::_is_nmt_env_valid = true; |
47 | 45 |
67 | 65 |
68 // Remove the environment variable to avoid leaking to child processes | 66 // Remove the environment variable to avoid leaking to child processes |
69 os::unsetenv(buf); | 67 os::unsetenv(buf); |
70 } | 68 } |
71 | 69 |
70 // Construct NativeCallStack::EMPTY_STACK. It may get constructed twice, | |
71 // but it is benign, the results are the same. | |
72 ::new ((void*)&NativeCallStack::EMPTY_STACK) NativeCallStack(0, false); | |
73 | |
72 if (!MallocTracker::initialize(level) || | 74 if (!MallocTracker::initialize(level) || |
73 !VirtualMemoryTracker::initialize(level)) { | 75 !VirtualMemoryTracker::initialize(level)) { |
74 level = NMT_off; | 76 level = NMT_off; |
75 } | 77 } |
76 return level; | 78 return level; |