All the major data structures and intermediate program states can be
viewed graphically using
The following screen dumps are intended to represent the range of
possibilities. Graphical tools like these are an indispensible
debugging aid. Each of the dumps below were taken when generating
code for the mandelbrot on the HPPA
architecture. It will be necessary to make netscape fill the size of
the screen to view these easily. Even though some of these graphs
look quite complex, daVinci has several navigational modes
that allow walking to successors, or predecessors, or navigating
through a scaled down map of the graph. The navigational view is
shown as another window, and the view into the graph that is being
displayed is usually outlined in blue.
- Control Flowgraph after Optimization:
- Each basic block is shown with its dynamic profile and
code before and after a specific optimization. This view
saves having to pour through pages of assembly code listings --
a tedious and frustrating activity.
- SSA form:
The generated flow graph is converted to SSA form which
makes many code improvement optimizations easy and efficient.
- Data Dependency Graph
A graphical view of the data dependency graph and the various
kinds of dependencies decorating the edges, provides a useful clue to
why instructions got rearranged the way they did. The navigational
view helps to control the complexity in the display.
Last modified: Thu Jan 9 19:38:15 EST 2003 by leunga@slinky