1.1 --- a/src/share/vm/prims/jvmtiManageCapabilities.cpp Mon Apr 26 11:27:21 2010 -0700 1.2 +++ b/src/share/vm/prims/jvmtiManageCapabilities.cpp Mon Apr 26 23:59:45 2010 -0700 1.3 @@ -332,16 +332,6 @@ 1.4 } 1.5 1.6 JvmtiExport::set_can_get_source_debug_extension(avail.can_get_source_debug_extension); 1.7 - JvmtiExport::set_can_examine_or_deopt_anywhere( 1.8 - avail.can_generate_breakpoint_events || 1.9 - interp_events || 1.10 - avail.can_redefine_classes || 1.11 - avail.can_retransform_classes || 1.12 - avail.can_access_local_variables || 1.13 - avail.can_get_owned_monitor_info || 1.14 - avail.can_get_current_contended_monitor || 1.15 - avail.can_get_monitor_info || 1.16 - avail.can_get_owned_monitor_stack_depth_info); 1.17 JvmtiExport::set_can_maintain_original_method_order(avail.can_maintain_original_method_order); 1.18 JvmtiExport::set_can_post_interpreter_events(interp_events); 1.19 JvmtiExport::set_can_hotswap_or_post_breakpoint( 1.20 @@ -353,10 +343,13 @@ 1.21 avail.can_generate_all_class_hook_events); 1.22 JvmtiExport::set_can_walk_any_space( 1.23 avail.can_tag_objects); // disable sharing in onload phase 1.24 + // This controls whether the compilers keep extra locals live to 1.25 + // improve the debugging experience so only set them if the selected 1.26 + // capabilities look like a debugger. 1.27 JvmtiExport::set_can_access_local_variables( 1.28 - avail.can_access_local_variables || 1.29 - avail.can_redefine_classes || 1.30 - avail.can_retransform_classes); 1.31 + avail.can_access_local_variables || 1.32 + avail.can_generate_breakpoint_events || 1.33 + avail.can_generate_frame_pop_events); 1.34 JvmtiExport::set_can_post_on_exceptions( 1.35 avail.can_generate_exception_events || 1.36 avail.can_generate_frame_pop_events ||