Mercurial > hg > graal-compiler
comparison src/share/vm/runtime/vframe_hp.cpp @ 6197:d2a62e0f25eb
6995781: Native Memory Tracking (Phase 1)
7151532: DCmd for hotspot native memory tracking
Summary: Implementation of native memory tracking phase 1, which tracks VM native memory usage, and related DCmd
Reviewed-by: acorn, coleenp, fparain
author | zgu |
---|---|
date | Thu, 28 Jun 2012 17:03:16 -0400 |
parents | 09b4dd4f152b |
children | 957c266d8bc5 da91efe96a93 |
comparison
equal
deleted
inserted
replaced
6174:74533f63b116 | 6197:d2a62e0f25eb |
---|---|
152 } | 152 } |
153 // No matching vframe must push a new vframe | 153 // No matching vframe must push a new vframe |
154 } else { | 154 } else { |
155 // No deferred updates pending for this thread. | 155 // No deferred updates pending for this thread. |
156 // allocate in C heap | 156 // allocate in C heap |
157 deferred = new(ResourceObj::C_HEAP) GrowableArray<jvmtiDeferredLocalVariableSet*> (1, true); | 157 deferred = new(ResourceObj::C_HEAP, mtCompiler) GrowableArray<jvmtiDeferredLocalVariableSet*> (1, true); |
158 thread()->set_deferred_locals(deferred); | 158 thread()->set_deferred_locals(deferred); |
159 } | 159 } |
160 deferred->push(new jvmtiDeferredLocalVariableSet(method(), bci(), fr().id())); | 160 deferred->push(new jvmtiDeferredLocalVariableSet(method(), bci(), fr().id())); |
161 assert(deferred->top()->id() == fr().id(), "Huh? Must match"); | 161 assert(deferred->top()->id() == fr().id(), "Huh? Must match"); |
162 deferred->top()->set_local_at(index, type, value); | 162 deferred->top()->set_local_at(index, type, value); |
321 jvmtiDeferredLocalVariableSet::jvmtiDeferredLocalVariableSet(methodOop method, int bci, intptr_t* id) { | 321 jvmtiDeferredLocalVariableSet::jvmtiDeferredLocalVariableSet(methodOop method, int bci, intptr_t* id) { |
322 _method = method; | 322 _method = method; |
323 _bci = bci; | 323 _bci = bci; |
324 _id = id; | 324 _id = id; |
325 // Alway will need at least one, must be on C heap | 325 // Alway will need at least one, must be on C heap |
326 _locals = new(ResourceObj::C_HEAP) GrowableArray<jvmtiDeferredLocalVariable*> (1, true); | 326 _locals = new(ResourceObj::C_HEAP, mtCompiler) GrowableArray<jvmtiDeferredLocalVariable*> (1, true); |
327 } | 327 } |
328 | 328 |
329 jvmtiDeferredLocalVariableSet::~jvmtiDeferredLocalVariableSet() { | 329 jvmtiDeferredLocalVariableSet::~jvmtiDeferredLocalVariableSet() { |
330 for (int i = 0; i < _locals->length() ; i++ ) { | 330 for (int i = 0; i < _locals->length() ; i++ ) { |
331 delete _locals->at(i); | 331 delete _locals->at(i); |