comparison src/share/vm/prims/jvmtiThreadState.cpp @ 4970:33df1aeaebbf

Merge with http://hg.openjdk.java.net/hsx/hsx24/hotspot/
author Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
date Mon, 27 Feb 2012 13:10:13 +0100
parents af739d5ab23c
children da91efe96a93
comparison
equal deleted inserted replaced
4703:2cfb7fb2dce7 4970:33df1aeaebbf
317 } 317 }
318 318
319 // clearing the flag indicates we are done with the PopFrame() dance 319 // clearing the flag indicates we are done with the PopFrame() dance
320 clr_pending_step_for_popframe(); 320 clr_pending_step_for_popframe();
321 321
322 // If exception was thrown in this frame, need to reset jvmti thread state.
323 // Single stepping may not get enabled correctly by the agent since
324 // exception state is passed in MethodExit event which may be sent at some
325 // time in the future. JDWP agent ignores MethodExit events if caused by
326 // an exception.
327 //
328 if (is_exception_detected()) {
329 clear_exception_detected();
330 }
322 // If step is pending for popframe then it may not be 331 // If step is pending for popframe then it may not be
323 // a repeat step. The new_bci and method_id is same as current_bci 332 // a repeat step. The new_bci and method_id is same as current_bci
324 // and current method_id after pop and step for recursive calls. 333 // and current method_id after pop and step for recursive calls.
325 // Force the step by clearing the last location. 334 // Force the step by clearing the last location.
326 JvmtiEnvThreadStateIterator it(this); 335 JvmtiEnvThreadStateIterator it(this);
383 392
384 // clearing the flag indicates we are done with 393 // clearing the flag indicates we are done with
385 // the ForceEarlyReturn() dance 394 // the ForceEarlyReturn() dance
386 clr_pending_step_for_earlyret(); 395 clr_pending_step_for_earlyret();
387 396
397 // If exception was thrown in this frame, need to reset jvmti thread state.
398 // Single stepping may not get enabled correctly by the agent since
399 // exception state is passed in MethodExit event which may be sent at some
400 // time in the future. JDWP agent ignores MethodExit events if caused by
401 // an exception.
402 //
403 if (is_exception_detected()) {
404 clear_exception_detected();
405 }
388 // If step is pending for earlyret then it may not be a repeat step. 406 // If step is pending for earlyret then it may not be a repeat step.
389 // The new_bci and method_id is same as current_bci and current 407 // The new_bci and method_id is same as current_bci and current
390 // method_id after earlyret and step for recursive calls. 408 // method_id after earlyret and step for recursive calls.
391 // Force the step by clearing the last location. 409 // Force the step by clearing the last location.
392 JvmtiEnvThreadStateIterator it(this); 410 JvmtiEnvThreadStateIterator it(this);