HLASM Toolkit Feature User's Guide
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


Control Flow Graph window

HLASM Toolkit Feature User's Guide
GC26-8710-10

The Control Flow Graph window displays the control flow graph. The control flow graph is displayed in the control flow graph area, which is the white area in the center of the window. A vertical and a horizontal scroll bar provide a means of moving the control flow graph around in the control flow graph area. The zoom slider (if shown) above the control flow graph area provides a means of zooming the control flow graph. A menu and a toolbar are at the top of the window.

The control flow graph is a set of nodes and arcs.

A node is displayed as a rectangle. It corresponds to a contiguous group of lines of source code (see More about nodes for more information).

An arc connects two nodes. It leaves from a source node, and points to a target node.

Various controls at the edge of the window let you adjust the appearance of the control flow graph.

Nodes

Nodes can have different appearances and different colors.

The different appearances are two-dimensional nodes and three-dimensional nodes. Three-dimensional nodes have three faces. The front face is rectangular, and the three faces have different shadings, so that the node looks like a three-dimensional rectangular box. The two-dimensional nodes have only one face, a rectangle with rounded corners.

These nodes have this meaning:
Two-dimensional
The node cannot be expanded any more. If you collapse this node, it is replaced by a three-dimensional node, and some nodes and arcs disappear.
Three-dimensional
The node can be expanded. When it is expanded, the node is replaced by a group of nodes and arcs. Some of these nodes may in turn be three-dimensional, and so can be expanded. However, eventually, every node is two-dimensional, which means that the control flow graph cannot be expanded any more.
The different colors have these meanings:
Gray
An unresolved external call.
Cyan (light blue)
A program entry point
Magenta (pink)
A secondary entry point
Yellow
A marked node
Green
Any other node
Sometimes the name in a node has a prefix. The prefixes have these meanings:
>
Three-dimensional cyan or magenta node containing an entry
<
Three-dimensional cyan node containing a program
*
Two-dimensional cyan program entry
**
Two-dimensional magenta secondary entry

When the context is removed, nodes may have two lines of information. The first line is the name of the node. The second names the call to a node in the surrounding removed context. The prefix to the name provides further information.

The currently selected node is surrounded by a red highlight. The color of the node does not change.

If you mark a three-dimensional node, and then expand it, the nodes it expands into remain yellow, indicating that they are marked, and any arcs that link two marked nodes become pink.

If you mark a node, and then collapse that node in context, the resultant three-dimensional node remains yellow, indicating that it is marked. (However, if you now expand that node, only the node you have previously marked is shown as marked.)

If you open a new ADATA file which is able to resolve an external call, then, in the redrawn control flow graph, the node changes color, since the call becomes resolved.

In general, a node is connected to another node or nodes. However, if the node represents stand-alone code, then the node may be neither the target nor the source for an arc.

Arcs

Arcs connect nodes. An arc must go from one node (the source node), to another node (the target node).

Arcs have this appearance:
A long dash ( —— —— )
An internal or external call
A long dash followed by two short dashes ( —— - - —— - - )
A return from a called routine
A solid line ( ———— )
Everything else
Any arc joining two marked nodes is magenta. An arc selected by clicking it is red. Any other arc is black.

Controls

The zoom slider above the control flow graph area controls the level of zoom. Moving it to the left makes graph elements smaller (zoom out). When graph elements are at their smallest, the entire control flow graph fits into the control flow graph area. Moving it to the right makes graph elements larger (zoom in).

If the control flow graph does not fit completely into the graph area, you can use the horizontal and vertical scroll bars to move around the graph.

For information about what you can do on the Control Flow Graph window, see Working with the control flow graph.

For information about menu options and toolbar icons, see Control Flow Graph window menu options and toolbar icons.

See also ASMPUT windows and window areas

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014