Annotated listing format
There are three formats of annotated listings:
- Observation viewer
- The View table entry command builds an annotated listing in a temporary data set and internally issues the view command against that data set. The data set is deleted when view exits. Unlike the annotated listings described below, a viewed annotated listing is not subject to selection criteria. This means that the only annotation performed is marking the statements as executed or unexecuted. In other words, there are no included or excluded statements to annotate. Also because of this, the statistics in the viewed annotated listing lack the granularity of the statistics provided in the other annotated listings.
- XML Report
- This creates an annotated listing with additional annotation (markers)
for included and excluded lines. Each line in the source
listing is encapsulated in
<STMT>and</STMT>XML tags. The selection criteria source markers and statistics are encapsulated in their own XML tags as is the observation data and SYSDEBUG compile date and time. - Presentation Report
- The presentation format annotated listing is more viewer friendly and is nearly identical to an XML format report without the XML tags. The selection criteria source markers, the statistics, and the observation data are included in the tables that follow the annotated listing. The report also indicates whether the SYSDEBUG compile date and time does not match the compile date and time that is recorded in the observation.
The annotated listing begins with a table of information about the observations that is similar to an entry in the Viewer. After that, the source listing is displayed with annotation showing which executable lines were executed or not executed. XML and presentation reports also contain additional annotation for included and excluded lines (as indicated by the source markers in the Selection file). The result is written to the specified output data set. If option 3 was requested, the output data set is browsed via ISPF but not deleted upon exit.
Below is a sample of a presentation format annotated listing report for a COBOL program. There are 8 header lines including 2 blank ones, the rollup history, a number of source lines, the selection criteria source markers, and the statistics. The header lines indicates the observation for which the report is generated. The rollup history indicates the origin of the observation.
1Rpt Date : 2013/05/11 Rpt Time: 10:32:45
Run Date : 2013/05/10 Run Time: 09:22:49
Group ID 1: COST Group ID 2: BENEFIT User ID: USER1
Load Name: COB01 Prog Name: COB01A
Comp Date: 2013/05/07 Comp Time: 15:53:00 Debug override: N
Tot Stmts: 17 Exec Stmts: 15 Percent: 88.23%
Rollup History:
Observation is not part of rollup.
----+-*A-1-B--+----2----+----3----+----4----+----5----+----6----+----7-|--+----8
1 * COB01A - COBOL EXAMPLE FOR DTCU
2
3 IDENTIFICATION DIVISION.
4 PROGRAM-ID. COB01A.
5 ******************************************************************
6 * Licensed Materials - Property of IBM *
7 * *
8 * 5655-M18: Debug Tool for z/OS *
9 * 5655-M19: Debug Tool Utilities and Advanced Functions *
10 * (C) Copyright IBM Corp. 1997, 2004 All Rights Reserved *
11 * *
12 * US Government Users Restricted Rights - Use, duplication or *
13 * disclosure restricted by GSA ADP Schedule Contract with IBM *
14 * Corp. *
15 * *
16 ******************************************************************
17
18
19 ENVIRONMENT DIVISION.
20
21 DATA DIVISION.
22
23 WORKING-STORAGE SECTION.
24 01 TAPARM1 PIC 99 VALUE 5.
25 01 TAPARM2 PIC 99 VALUE 2.
26 01 COB01B PIC X(6) VALUE 'COB01B'.
27 01 P1PARM1 PIC 99 VALUE 0.
28
29 01 TASTRUCT.
30 05 LOC-ID.
31 10 STATE PIC X(2).
32 10 CITY PIC X(3).
33 05 OP-SYS PIC X(3).
34
35 PROCEDURE DIVISION.
36
37 * THE FOLLOWING ALWAYS PERFORMED
38
39 * Defect456Begin
40
41 PROG. PMR11112
42 * ACCESS BY TOP LEVEL QUALIFIER PMR11112
43 I> MOVE 'ILCHIMVS' TO TASTRUCT PMR11112
44
45 * ACCESS BY MID LEVEL QUALIFIERS PMR11113
46 I> MOVE 'ILSPR' TO LOC-ID PMR11113
47 I> MOVE 'AIX' TO OP-SYS PMR11113
48
49 * ACCESS BY LOW LEVEL QUALIFIERS PMR11114
50 B> MOVE 'KY' TO STATE PMR11114
51 B> MOVE 'LEX' TO CITY PMR11114
52 B> MOVE 'VM ' TO OP-SYS PMR11114
53 . PMR11114
54
55 PROGA.
56 > PERFORM LOOP1 UNTIL TAPARM1 = 0
57
58 > IF TAPARM2 = 0 THEN
59 * PROCA NOT EXECUTED PMR12345
60 I< PERFORM PROCA. PMR12345
61
62
63 I> PERFORM LOOP2 UNTIL TAPARM2 = 0 PMR12345
64 .
65 > STOP RUN
66 .
67
68 PROCA.
69 * PROCA NOT EXECUTED PMR12345
70 I< MOVE 10 TO P1PARM1 PMR12345
71 . PMR12345
72 LOOP1.
73 > IF TAPARM1 > 0 THEN
74 > SUBTRACT 1 FROM TAPARM1.
75 > CALL 'COB01B'
76 .
77 LOOP2. PMR12345
78 I> IF TAPARM2 > 0 THEN PMR12345
79 I> SUBTRACT 1 FROM TAPARM2. PMR12345
80
81 * Defect456End
Start End
Marker type Selection Column Column String
------------- --------- ------ ------ ------------------------------
SINGLE INCLUDE 73 75 PMR
SINGLE EXCLUDE 73 80 PMR11114
SECTIONBEGIN INCLUDE 7 80 DEFECT123BEGIN
SECTIONEND INCLUDE 7 80 DEFECT123END
Statements Executed Percentage
---------- -------- ----------
Total 17 15 88.23
Included 8 6 75.00
Excluded 0 0 0.00
Incl/Excl 3 3 100.00
Below is a sample of a presentation format annotated listing report for a PL/I program. The format is similar to other supported languages.
1Rpt Date : 2013/09/10 Rpt Time: 11:53:14
Run Date : 2013/09/02 Run Time: 12:31:30
Group ID 1: * Group ID 2: BENEFIT User ID: USER1
Load Name: PLI01 Prog Name: PLI01A
Comp Date: 2013/09/02 Comp Time: 12:14:00 Debug override: N
Tot Stmts: 14 Exec Stmts: 11 Percent: 78.57%
Rollup History:
Group ID 1 Group ID 2 Load Name Prog Name
--------------- --------------- --------------- ---------------
COST BENEFIT PLI01 PLI01A
COST BENEFIT PLI01 PLI01A
----+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----8
1 PLI01A:PROC OPTIONS(MAIN); /* PL/I DTCU TESTCASE */
2 /********************************************************************/
3 /* Licensed Materials - Property of IBM */
4 /* */
5 /* 5655-P14: Debug Tool for z/OS */
6 /* 5655-P15: Debug Tool Utilities and Advanced Functions */
7 /* (C) Copyright IBM Corp. 1997, 2005 All Rights Reserved */
8 /* */
9 /* US Government Users Restricted Rights - Use, duplication or */
10 /* disclosure restricted by GSA ADP Schedule Contract with IBM Corp.*/
11 /* */
12 /********************************************************************/
13
14 DCL EXPARM1 FIXED BIN(31) INIT(5);
15 DCL EXPARM2 FIXED BIN(31) INIT(2);
16 DCL PARM2 FIXED BIN(31) INIT(2);
17 DCL PLI01B EXTERNAL ENTRY; /* */
18 > DO WHILE (EXPARM1 > 0); /* THIS DO LOOP EXECUTED 5 TIMES*/
19 > EXPARM1 = EXPARM1 -1; /* */
20 B> CALL PLI01B(PARM2); /* PLI01B CALLED 5 TIMES */
21 > END;
22 > IF (EXPARM2 = 0) THEN /* THIS BRANCH ALWAYS TAKEN */
23 < CALL PROC2A(EXPARM2); /* PROC2A NEVER CALLED */
24 > DO WHILE (EXPARM2 > 0); /* DO LOOP EXECUTED TWICE */
25 > EXPARM2 = EXPARM2 - 1;
26 > END;
27 > RETURN;
28
29 < PROC2A: PROCEDURE(P1PARM1); /* THIS PROCEDURE NEVER EXECUTED */
30 DCL P1PARM1 FIXED BIN(31);
31 < P1PARM1 = 10;
32 < END PROC2A;
33 I> END PLI01A;
Start End
Marker type Selection Column Column String
------------- --------- ------ ------ ------------------------------
SINGLE INCLUDE 2 80 PLI01
SINGLE EXCLUDE 2 80 PLI01B
Statements Executed Percentage
---------- -------- ----------
Total 14 11 78.57
Included 1 1 100.00
Excluded 0 0 0.00
Incl/Excl 1 1 100.00
Below is a sample of a presentation format annotated listing report for a C program. The format is similar to the other supported languages.
1Rpt Date : 2013/10/31 Rpt Time: 08:07:42
Run Date : 2013/10/16 Run Time: 13:33:07
Group ID 1: COST Group ID 2: BENEFIT User ID: USERIBM
Load Name: C01 Prog Name: C01A
Comp Date: 2013/05/07 Comp Time: 15:53:00 Debug override: N
Tot Stmts: 12 Exec Stmts: 8 Percent: 66.66%
Rollup History:
Observation is not part of rollup
*...+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8
1 main()
2 /********************************************************************/
3 /* Licensed Materials - Property of IBM */
4 /* */
5 /* 5655-W70: Debug Tool for z/OS */
6 /* Copyright IBM Corp. 1997, 2012 All Rights Reserved */
7 /* */
8 /* US Government Users Restricted Rights - Use, duplication or */
9 /* disclosure restricted by GSA ADP Schedule Contract with IBM Corp.*/
10 /* */
11 /********************************************************************/
12
13 { /* DEFECT456BEGIN */
14 I> int EXPARM1 = 5; PMR13579
15 I> int EXPARM2 = 2; PMR13579
16 extern void C01B(void);
17 I< void PROCA(int); /* function not called */
18 B> while (EXPARM1 > 0) /* execute loop 5 times */ PMR12345
19 {
20 I> EXPARM1 = EXPARM1 -1;
21 I> C01B(); /* call C01B 5 times */
22 }
23 I> if (EXPARM2 == 0) /* branch taken DEFECT456END */
24 < PROCA(EXPARM2); /* not executed */
25 I> while (EXPARM2 > 0) /* loop execute 2 times */ PMR1
26 > EXPARM2 = EXPARM2 - 1; /* executed twice */
27 }
28 < void PROCA(int P1PARM1) /* function not called */
29 {
30 < P1PARM1 = 10; /* not executed */
31 }
Start End
Marker type Selection Column Column String
------------- --------- ------ ------ ------------------------------
SINGLE INCLUDE 73 76 PMR1
SINGLE EXCLUDE 73 80 PMR12345
SECTIONBEGIN INCLUDE 8 72 DEFECT456BEGIN
SECTIONEND INCLUDE 8 72 DEFECT456END
Statements Executed Percentage
---------- -------- ----------
Total 12 8 66.66
Included 7 6 85.71
Excluded 0 0 0.00
Incl/Excl 1 1 100.00
The following table shows the column layout for the source lines:
| Columns | Contents |
|---|---|
| 1 | Blank. |
| 2 through 7 | 6 digit listing line number, right justified, leading zeros suppressed. |
| 9 | If executable and not using E.1 (V)iew then:
|
| 10 through 15 | 1 column per statement on this line. For example, col 10 represents the 1st statement, column 11 represents the 2nd statement. These columns indicate whether the statement was executed (>), unexecuted (<), unspecified ( ) or specified multiple times (M, which indicates that multiple disjoint sections of assembler code were generated for this statement). Column 15 may contain a plus sign (+) if an executed or unexecuted tag value indicates a statement number that exceeds 6 for this line. |
| 17 through 96 | Source columns 1 - 80 |