主权项 |
1. A method, comprising:
recording, in a memory device prior to a debugging session, synchronization points including line numbers of the synchronization points and line contents corresponding to text located at stored line numbers in a program source code segment; generating, by the compiler, optimized program source code from the program source code segment; upon receiving, by a debugger, the optimized program source code from the compiler, providing a user with an option via a toolbar displayed on a display screen to step through the synchronization points in the optimized program source code while skipping remaining portions of the optimized program source code in a debug pane of the display screen; displaying, in the debug pane of the display screen, a first marking applied to the executable statements in the optimized program source code, the first marking configured to visually differentiate the executable statements from remaining portions of the optimized program source code in the debug pane, the displaying further including a second marking applied to the line contents in the optimized program source code that are associated with the synchronization points, the second marking applied based on the line numbers and results of the recording, the second marking configured to visually differentiate the synchronization points from the executable statements and the remaining portions of the optimized program source code, and the second marking providing an ordered indication as to which part of the completed statement executions have been optimized with respect to the program source code segment that is displayed on the display screen, wherein the indication of locations marked by the synchronization points as shown in the debug panel enables manual stepping, as a non-default manual stepping method, and enables corrective action to be determined; wherein a default non-manual stepping method is initiated at the start of the debugging session and executes a flow of statements using the first marking that is indicative of executed statements; and wherein, as indicated in real time, the recorded synchronization points represented as the second marking, and concurrent to the first marking that is different from the second marking, enable the user to elect a particular synchronization point among the program source code, such that upon selection, the debugger exits the default non-manual stepping method and executes debugged code from the point of the user's selection. |