void findNMethodsFor(oop b) { // for debugging if (!b->is_block()) { lprintf("(warning: not a block)\n"); } map_to_find = b->map()->enclosing_mapOop(); Memory->code->nmethods_do(findBlkFn); }
void map_enumeration::add_obj(oop obj) { assert(graph_maps->member(obj->map()->enclosing_mapOop()), "map should be known"); if (!graph_maps->find(obj->map()->enclosing_mapOop())) { if (obj->is_block()) { // TO BE FIXED WHEN THE SIC IS BETTER TO KILL BLOCK OOPS WHEN // A SCOPE TREMINATE. 3/31/93 LB. // Clone and kill the copy to avoid the problem. obj = obj->clone(); blockOop(obj)->kill_block(); } graph_maps->update(obj->map()->enclosing_mapOop(), obj); } }
oop catch_interprocess_returns(oop blk) { // for debugging: catch nlrs to blocks in other processes // (if CatchInterprocessReturns is on) // lprintf("blk 0x%x, scope 0x%x, scopeID 0x%x\n", // blk, scope, scopeID); if (!blk->is_block()) return blk; blockOop b = blockOop(blk); if (!b->is_live()) return b; frame* myScope = b->scope(true); if (myScope == NULL) return b; if (!currentProcess->contains(myScope)) { b->kill(); } return b; }