2394 come up (instead of a new one) |
2394 come up (instead of a new one) |
2395 - must flush caches since optimized methods not always |
2395 - must flush caches since optimized methods not always |
2396 look for pending interrupts |
2396 look for pending interrupts |
2397 " |
2397 " |
2398 |
2398 |
2399 "/ |
|
2400 "/ also must care for stepping into a return |
|
2401 "/ |
|
2402 steppedContext notNil ifTrue:[ |
|
2403 Processor activeProcess forceInterruptOnReturnOf:steppedContext. |
|
2404 ]. |
|
2405 |
|
2406 OpenDebuggers isNil ifTrue:[ |
2399 OpenDebuggers isNil ifTrue:[ |
2407 OpenDebuggers := WeakIdentitySet new. |
2400 OpenDebuggers := WeakIdentitySet new. |
2408 ]. |
2401 ]. |
2409 OpenDebuggers add:self. |
2402 OpenDebuggers add:self. |
2410 |
2403 |
2411 self label:'single stepping - please wait ...'. |
2404 self label:'single stepping - please wait ...'. |
2412 stepping := true. |
2405 stepping := true. |
2413 |
2406 |
2414 (self redefinedEnableStepInterruptForReentry:aContext) ifFalse:[ |
2407 (self redefinedEnableStepInterruptForReentry:aContext) ifFalse:[ |
|
2408 "/ |
|
2409 "/ also must care for stepping into a return |
|
2410 "/ |
|
2411 steppedContext notNil ifTrue:[ |
|
2412 Processor activeProcess forceInterruptOnReturnOf:steppedContext. |
|
2413 ]. |
|
2414 |
2415 ObjectMemory stepInterruptHandler:self. |
2415 ObjectMemory stepInterruptHandler:self. |
2416 Processor activeProcess stepInterruptHandler:self. |
2416 Processor activeProcess stepInterruptHandler:self. |
2417 ObjectMemory flushCaches. |
2417 ObjectMemory flushCaches. |
2418 |
2418 |
2419 Context singleStepInterruptRequest isHandled ifTrue:[ |
2419 Context singleStepInterruptRequest isHandled ifTrue:[ |
2477 |
2477 |
2478 "Created: / 30-10-1997 / 21:08:18 / cg" |
2478 "Created: / 30-10-1997 / 21:08:18 / cg" |
2479 "Modified: / 13-10-1998 / 19:56:59 / ps" |
2479 "Modified: / 13-10-1998 / 19:56:59 / ps" |
2480 "Modified: / 27-07-2012 / 17:35:56 / cg" |
2480 "Modified: / 27-07-2012 / 17:35:56 / cg" |
2481 "Modified: / 01-02-2018 / 10:08:28 / stefan" |
2481 "Modified: / 01-02-2018 / 10:08:28 / stefan" |
2482 "Modified: / 28-01-2019 / 11:50:39 / Claus Gittinger" |
2482 "Modified: / 28-01-2019 / 13:22:57 / Claus Gittinger" |
2483 ! |
2483 ! |
2484 |
2484 |
2485 exit_abort |
2485 exit_abort |
2486 "/ cannot simply raise an abort here, because if there is an abortHandler somewhere, |
2486 "/ cannot simply raise an abort here, because if there is an abortHandler somewhere, |
2487 "/ that one would run on top of this context. |
2487 "/ that one would run on top of this context. |