hotspot/src/share/vm/runtime/vframe_hp.cpp
changeset 13195 be27e1b6a4b9
parent 7444 be338e543a57
child 13728 882756847a04
equal deleted inserted replaced
13099:64752e56d721 13195:be27e1b6a4b9
   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);