137 */
138 enum MemoryType {
139 // Memory type by sub systems. It occupies lower byte.
140 mtJavaHeap = 0x00, // Java heap
141 mtClass = 0x01, // memory class for Java classes
142 mtThread = 0x02, // memory for thread objects
143 mtThreadStack = 0x03,
144 mtCode = 0x04, // memory for generated code
145 mtGC = 0x05, // memory for GC
146 mtCompiler = 0x06, // memory for compiler
147 mtInternal = 0x07, // memory used by VM, but does not belong to
148 // any of above categories, and not used for
149 // native memory tracking
150 mtOther = 0x08, // memory not used by VM
151 mtSymbol = 0x09, // symbol
152 mtNMT = 0x0A, // memory used by native memory tracking
153 mtClassShared = 0x0B, // class data sharing
154 mtChunk = 0x0C, // chunk that holds content of arenas
155 mtTest = 0x0D, // Test type for verifying NMT
156 mtTracing = 0x0E, // memory used for Tracing
157 mtNone = 0x0F, // undefined
158 mt_number_of_types = 0x10 // number of memory types (mtDontTrack
159 // is not included as validate type)
160 };
161
162 typedef MemoryType MEMFLAGS;
163
164
165 #if INCLUDE_NMT
166
167 extern bool NMT_track_callsite;
168
169 #else
170
171 const bool NMT_track_callsite = false;
172
173 #endif // INCLUDE_NMT
174
175 class NativeCallStack;
176
177
178 template <MEMFLAGS F> class CHeapObj ALLOCATION_SUPER_CLASS_SPEC {
|
137 */
138 enum MemoryType {
139 // Memory type by sub systems. It occupies lower byte.
140 mtJavaHeap = 0x00, // Java heap
141 mtClass = 0x01, // memory class for Java classes
142 mtThread = 0x02, // memory for thread objects
143 mtThreadStack = 0x03,
144 mtCode = 0x04, // memory for generated code
145 mtGC = 0x05, // memory for GC
146 mtCompiler = 0x06, // memory for compiler
147 mtInternal = 0x07, // memory used by VM, but does not belong to
148 // any of above categories, and not used for
149 // native memory tracking
150 mtOther = 0x08, // memory not used by VM
151 mtSymbol = 0x09, // symbol
152 mtNMT = 0x0A, // memory used by native memory tracking
153 mtClassShared = 0x0B, // class data sharing
154 mtChunk = 0x0C, // chunk that holds content of arenas
155 mtTest = 0x0D, // Test type for verifying NMT
156 mtTracing = 0x0E, // memory used for Tracing
157 mtLogging = 0x0F, // memory for logging
158 mtNone = 0x10, // undefined
159 mt_number_of_types = 0x11 // number of memory types (mtDontTrack
160 // is not included as validate type)
161 };
162
163 typedef MemoryType MEMFLAGS;
164
165
166 #if INCLUDE_NMT
167
168 extern bool NMT_track_callsite;
169
170 #else
171
172 const bool NMT_track_callsite = false;
173
174 #endif // INCLUDE_NMT
175
176 class NativeCallStack;
177
178
179 template <MEMFLAGS F> class CHeapObj ALLOCATION_SUPER_CLASS_SPEC {
|