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);