|
PAG/WWW displays the results of an analysis in two different ways:
- You get a text representation of the WHILE program you analyzed
complete with labels and annotated with the corresponding
entry and exit information for each statement.
- For every step in the analysis you also get a picture of the control flow graph.
Interpreting the text information
The textual representation of the program is divided into three columns.
The first column lists your WHILE program
annotated with labels for each statement.
The second column shows the entry information for that statement,
and the third column shows the exit information.
There are a couple of things you might need to know to understand all the information:
- At the top PAG/WWW displays the direction and the carrier type
you defined for your analysis.
Of course, the displayed entry and exit information have exactly this type.
The words ENTRY and EXIT are always meant in terms of the analysis,
so if you are running a backward analysis,
the ENTRY information is actually the information
that comes from the end of the statement into the statement.
The exit information for backward analyses is the information
that is passed from a statement to the statements above.
- To help you distinguish global from local variables,
the latter (i.e. the formal parameter of a procedure) are underlined.
- For CALL statements PAG/WWW will show you information
for both the CALL and the corresponding RETURN node.
- If you use PAG/WWWs expert features to provide different exit information
for different types of outgoing edges,
PAG/WWW will display separate information for each outgoing edge.
Interpreting the picture of a control flow graph
For each step of the analysis, PAG/WWW generates a picture of the control flow graph
annotated with the current analysis information.
Such a graph consists of nodes for the statements connected by edges
which display the flow of control from one statement to the next.
Each node is labeled with the corresponding WHILE statement,
and each edge is labeled with its type
(e.g. true and false edges for conditionals,
or call and local edges for procedure calls).
- PAG/WWW displays the exit information for each node beside its outgoing edges
(remember that you can specify different exit information for each edge type).
- The entry information for a node is not displayed.
- PAG/WWW uses colors to signal the state of the analysis.
Blue nodes are nodes in the worklist of the analyser,
i.e. they are known to need at least one further visit
which will happen sometime later in the analysis.
The red node signals the current node.
This node is just being worked on and recalculation of its exit information
will cause the succesor nodes to be put on the worklist.
With the PREVIOUS and NEXT buttons, you can step through the analysis.
Or you can jump to any specific step by selecting one of the small icons
on the very left of the window, or by selecting a number from the Step# popup menu
and then clicking GOTO.
The zoom factor allows you to view the graph at a custom size.
Click + to increase the size, and - to decrease the size.
You may also type in an arbitrary zoom factor and then click GOTO to activate it.
The large pictures are generated as you request them,
so you may need to wait a few seconds for the next picture to appear.
If you are impatient and hit the STOP button,
be warned that the previously considered result page and some of its predecessors
cannot be recovered since they were dynamically created.
Clicking on the ANALYSIS RESULTS button at the top of the window
will take you back to the textual representation of your results.
Search
|