Browse Prior Art Database

Return Function for Navigation in a Source-Level Debugger

IP.com Disclosure Number: IPCOM000113420D
Original Publication Date: 1994-Aug-01
Included in the Prior Art Database: 2005-Mar-27
Document File: 2 page(s) / 56K

Publishing Venue

IBM

Related People

Carley, SC: AUTHOR [+4]

Abstract

Among the functions provided by a typical source-level debugger is the ability to navigate through the program being tested. That is, to control the execution of the program. Examples of this type of navigational function are run, single step, and stop. In addition to these typical functions, debuggers typically provide the ability to manually reposition the statement pointer and continue execution from a point in the program chosen explicitly by the user. Another function provided by debuggers is the ability to set points in the logic at which execution will be suspended, often referred to as stop points or break points. By using repositioning and setting break points, the user of the tool can jump around the logic of the program to execute obscure paths, bypass specific statements, and so on.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 53% of the total text.

Return Function for Navigation in a Source-Level Debugger

      Among the functions provided by a typical source-level debugger
is the ability to navigate through the program being tested.  That
is, to control the execution of the program.  Examples of this type
of navigational function are run, single step, and stop.  In addition
to these typical functions, debuggers typically provide the ability
to manually reposition the statement pointer and continue execution
from a point in the program chosen explicitly by the user.  Another
function provided by debuggers is the ability to set points in the
logic at which execution will be suspended, often referred to as stop
points or break points.  By using repositioning and setting break
points, the user of the tool can jump around the logic of the program
to execute obscure paths, bypass specific statements, and so on.

      One desirable navigational function is the ability to return
from a call to a subroutine and pass control back to the statement
after the call.  This can be done (as stated) by manually setting a
break point on the statement following the call statement and running
the application until the break point is encountered.  This involves
several steps, especially if there happen to be breakpoints set in
the current subroutine or any called subroutines.  A technique is
needed to supply this return function directly which allows the
subroutine and any logic invoked by the subroutine to be executed,
a...