Example #1
0
oop vframeMap::mirror_parent(oop obj) {
  TEST;
  abstract_vframe* parent = vfo->as_vframe()->parent();
  if (!parent) return ErrorCodes::vmString_prim_error(NOPARENTERROR);
  assert(vfo->process() == vmProcess || !parent->is_first_self_vframe(),
         "doIt of a process cannot have blocks!");
  vframeOop nvfo = new_vframeOop(vfo->process(), parent);
  return nvfo->as_mirror();
}
Example #2
0
oop processOopClass::ActivationAt_prim(smi index, void *FH) {
  ResourceMark rm;
  Process* p;
  frame* last;
 abstract_vframe* vf = vframe_at(index, FH, p, last);
  if (!vf) return NULL; 
  oop vfo = new_vframeOop(p, vf)->as_mirror();
  if (p == currentProcess) p->killVFrameOopsAndSetWatermark(last);
  return vfo;
}