400 pcds_in_method = (nm->scopes_pcs_end() - nm->scopes_pcs_begin()); |
400 pcds_in_method = (nm->scopes_pcs_end() - nm->scopes_pcs_begin()); |
401 map = NEW_C_HEAP_ARRAY(jvmtiAddrLocationMap, pcds_in_method); |
401 map = NEW_C_HEAP_ARRAY(jvmtiAddrLocationMap, pcds_in_method); |
402 |
402 |
403 address scopes_data = nm->scopes_data_begin(); |
403 address scopes_data = nm->scopes_data_begin(); |
404 for( pcd = nm->scopes_pcs_begin(); pcd < nm->scopes_pcs_end(); ++pcd ) { |
404 for( pcd = nm->scopes_pcs_begin(); pcd < nm->scopes_pcs_end(); ++pcd ) { |
405 ScopeDesc sc0(nm, pcd->scope_decode_offset(), pcd->should_reexecute()); |
405 ScopeDesc sc0(nm, pcd->scope_decode_offset(), pcd->should_reexecute(), pcd->return_oop()); |
406 ScopeDesc *sd = &sc0; |
406 ScopeDesc *sd = &sc0; |
407 while( !sd->is_top() ) { sd = sd->sender(); } |
407 while( !sd->is_top() ) { sd = sd->sender(); } |
408 int bci = sd->bci(); |
408 int bci = sd->bci(); |
409 if (bci != InvocationEntryBci) { |
409 if (bci != InvocationEntryBci) { |
410 assert(map_length < pcds_in_method, "checking"); |
410 assert(map_length < pcds_in_method, "checking"); |