Finding information in PL/I for MVS & VM listings

Figure 1 shows an example PL/I for MVS™ & VM routine that was compiled with LIST and MAP.

Figure 1. PL/I for MVS & VM routine compiled with LIST and MAP
*PROCESS SOURCE, LIST, MAP;

                   SOURCE LISTING

   STMT

      1  |EXAMPLE: PROC OPTIONS(MAIN);
      2  |           DCL EXTR ENTRY EXTERNAL;
      3  |           DCL A FIXED BIN(31);
      4  |           DCL B(2,2)  FIXED BIN(31) STATIC EXTERNAL INIT((4)0);
      5  |           DCL C CHAR(20) STATIC INIT('SAMPLE CONSTANT');
      6  |           DCL D FIXED BIN(31) STATIC;
      7  |           DCL E FIXED BIN(31);
      8  |           FETCH EXTR;
      9  |           CALL EXTR(A,B,C,D,E);
     10  |           DISPLAY(C);
     11  |        END;

Figure 2 shows the output generated by the LIST and MAP options for this routine, including the static storage map, variable storage map, and the object code listing. The sections following this example describe the contents of each type of listing.

Figure 2. Compiler-generated listings from example PL/I for MVS & VM routine
                          STATIC INTERNAL STORAGE MAP

000000  E00000E8              PROGRAM ADCON
000004  00000008              PROGRAM ADCON
000008  00000096              PROGRAM ADCON
00000C  00000096              PROGRAM ADCON
000010  00000096              PROGRAM ADCON
000014  00000000              A..IBMSJDSA
000018  00000000              A..IBMSPFRA
00001C  00000000              A..STATIC
000020  0000000000000044      LOCATOR..B
000028  0000008800140000      LOCATOR..C
000030  91E091E0              CONSTANT
000034  0A000000C5E7E3D9      FECB..EXTR
        40404040
000040  80000034              A..FECB..EXTR
000044  0000000C00000008      DESCRIPTOR
        0000000200000001
        0000000400000002
        00000001
000060  80000034              A..FECB..EXTR
000064  00000000              A..B
000068  00000000              A..A
00006C  00000020              A..LOCATOR
000070  00000028              A..LOCATOR
000074  000000A0              A..D
000078  80000000              A..E
00007C  00000000              A..ENTRY EXTR
000080  80000028              A..LOCATOR
000084
000088  E2C1D4D7D3C540C3      INITIAL VALUE..C
        D6D5E2E3C1D5E340
        40404040

                          STATIC EXTERNAL CSECTS

000000  0000000000000000      CSECT FOR EXTERNAL VARIABLE
        0000000000000000
  ⋮
                                  VARIABLE STORAGE MAP

IDENTIFIER                        LEVEL         OFFSET       (HEX)   CLASS     BLOCK

E                                     1            184          B8   AUTO      EXAMPLE
D                                     1            160          A0   STATIC    EXAMPLE
C                                     1            136          88   STATIC    EXAMPLE
A                                     1            188          BC   AUTO      EXAMPLE
  ⋮
  OBJECT LISTING
                                                            000096  58 B0 C 004               L     11,4(0,12)
                                                            00009A  58 FB 0 000               L     15,PR..EXTR
* STATEMENT NUMBER  1                                       00009E  59 F0 C 064               C     15,100(0,12)
000000                            DC    C'EXAMPLE'          0000A2  47 70 2 01E               BNE   CL.5
000007                            DC    AL1(7)              0000A6  41 10 3 040               LA    1,64(0,3)
                                                            0000AA  58 F0 3 018               L     15,A..IBMSPFRA
* PROCEDURE                             EXAMPLE             0000AE  05 EF                     BALR  14,15
                                                            0000B0  58 FB 0 000               L     15,PR..EXTR
* REAL ENTRY                                                0000B4                    CL.5    EQU   *
000008  90 EC D 00C               STM   14,12,12(13)
00000C  47 F0 F 04C               B     *+72
000010  00000000                  DC    A(STMT. NO. TABLE)  * STATEMENT NUMBER  9
000014  000000D8                  DC    F'216'              0000B4  D2 13 D 0C0 3 068         MVC   192(20,13),104(3)
000018  00000000                  DC    A(STATIC CSECT)     0000BA  41 70 D 0BC               LA    7,A
00001C  00000000                  DC    A(SYMTAB VECTOR)    0000BE  50 70 D 0C0               ST    7,192(0,13)
000020  00000000                  DC    A(COMPILATION INFO) 0000C2  41 70 D 0B8               LA    7,E
000024  A8000000                  DC    X'A8000000'         0000C6  50 70 D 0D0               ST    7,208(0,13)
000028  00010100                  DC    X'00010100'         0000CA  96 80 D 0D0               OI    208(13),X'80'
00002C  00000000                  DC    X'00000000'         0000CE  58 FB 0 000               L     15,PR..EXTR
000030  00000000                  DC    X'00000000'         0000D2  59 F0 C 064               C     15,100(0,12)
000034  00000000                  DC    A(ENTRY LIST VECTOR)0000D6  47 70 2 052               BNE   CL.6
Figure 3. Compiler-generated listings from example PL/I for MVS & VM routine (continued)
000038  00000000                  DC    X'00000000'         0000DA  41 10 3 060               LA    1,96(0,3)
00003C  01008000                  DC    X'01008000'         0000DE  58 F0 3 018               L     15,A..IBMSPFRA
000040  00000000                  DC    A(REGION TABLE)     0000E2  05 EF                     BALR  14,15
000044  00000002                  DC    X'00000002'         0000E4  58 FB 0 000               L     15,PR..EXTR
000048  00000000                  DC    A(PRIMARY ENTRY)    0000E8                    CL.6    EQU   *
00004C  00000000                  DC    X'00000000'         0000E8  1B 55                     SR    5,5
000050  00000000                  DC    X'00000000'         0000EA  41 10 D 0C0               LA    1,192(0,13)
000054  58 30 F 010               L     3,16(0,15)          0000EE  05 EF                     BALR  14,15
000058  58 10 D 04C               L     1,76(0,13)
00005C  58 00 F 00C               L     0,12(0,15)
000060  1E 01                     ALR   0,1                 * STATEMENT NUMBER  10
000062  55 00 C 00C               CL    0,12(0,12)          0000F0  41 10 3 080               LA    1,128(0,3)
000066  47 D0 F 068               BNH   *+10                0000F4  58 F0 3 014               L     15,A..IBMSJDSA
00006A  58 F0 C 074               L     15,116(0,12)        0000F8  05 EF                     BALR  14,15
00006E  05 EF                     BALR  14,15
000070  58 E0 D 048               L     14,72(0,13)
000074  18 F0                     LR    15,0                * STATEMENT NUMBER  11
000076  90 E0 1 048               STM   14,0,72(1)          0000FA  18 0D                     LR    0,13
00007A  50 D0 1 004               ST    13,4(0,1)           0000FC  58 D0 D 004               L     13,4(0,13)
00007E  92 80 1 000               MVI   0(1),X'80'          000100  58 E0 D 00C               L     14,12(0,13)
000082  92 25 1 001               MVI   1(1),X'25'          000104  98 2C D 01C               LM    2,12,28(13)
000086  92 02 1 076               MVI   118(1),X'02'        000108  05 1E                     BALR  1,14
00008A  41 D1 0 000               LA    13,0(1,0)
00008E  D2 03 D 054 3 030         MVC   84(4,13),48(3)      * END PROCEDURE
000094  05 20                     BALR  2,0                 00010A  07 07                     NOPR  7

* PROCEDURE BASE                                            * END PROGRAM