Comparing load modules

Load modules are, as members of libraries, sequential data sets, and can be compared by content like other data sets. A record-mode compare helps to check whether load modules are the same or not, but as the result contains differences between module texts, a further analysis is usually required.

However, in most cases, you are likely to want to see differences at a logical level, rather than at record level. You may want to know, for example, if both versions of a module were linked at the same time, and if CSECTs differ in size or were compiled using the same compiler versions.

A formatted comparison of load modules allows you to compare load modules at the logical level, with the ability to select properties to be compared and reported

Conceptually, you can see the process of a formatted comparison of two load modules in the following way:

  • You define information you want to compare, by selecting compare criteria at the load module level:
    • Load module size.
    • Load module entry point address.
    • Version of the linkage editor or binder used to prepare the load module.
    • Load module link date and time.
    • AMODE and RMODE of load module.
    • Load module authorization code (AC).
    • Load module link attributes.
    • Compile options
    • Program attributes

    And at the CSECT level (if you want CSECTs to be compared):

    • CSECT size.
    • CSECT address.
    • Version of a language compiler used to compile the CSECT.
    • CSECT compile date.
    • AMODE and RMODE of CSECT.
    • AMASPZAP IDR data.
    • Text - CSECT content (instructions and constants).
  • For each of the compared load modules, File Manager creates one or more logical records containing information extracted from load module. Load module properties, such as load module size, Entry Point Address, and load module link date, constitute fields of one logical record. Each CSECT has its own dedicated logical record containing CSECT properties, such as CSECT size, address, and compilation date. If additional CSECT information, ZAP IDR or CSECT text, need to be compared, the logical record is split into a number of physical records, with the layout appropriate to the information they hold.
  • There is a natural mapping determined by the layouts of the records and the compare criteria you selected. It defines the compare process as a formatted comparison. The record representing information at the load module level is compared with the corresponding record representing the second module. Corresponding records (records of the same CSECT name) representing CSECTs are also compared. The comparison report shows differences in a similar way to any other type of formatted comparison. Indentation shows the hierarchy of information: load module ► CSECT ► CSECT text and ZAP IDR data.

You can perform load module comparison using either the Compare Utility (3.11, or DSM in batch) or the Load Module Compare Utility (3.10.2, or CLM in batch). They share the same ISPF variables and, in batch, have the same syntax.

To perform a formatted comparison of load modules:

  1. From the Primary Options menu, select Compare Utility (option 3.11).

    File Manager displays the Compare Utility - "Old" Data Set Entry panel.

  2. Specify the "Old" load module information.
  3. Press Enter.

    File Manager displays the Compare Utility - "New" Data Set Entry panel.

  4. Specify the "New" load module information.
  5. Press Enter.

    File Manager identifies the load module on both "Old" and "New" sides and assumes that you want to perform a load module formatted comparison. Accordingly, File Manager displays the Compare Load Module Options panel, instead of the Compare Options panel.

  6. Specify:
    • Comparison type: "Formatted", unless you want the content of the load modules to be compared in record mode.
    • Compare level: "Module" level is more general than the "CSECT" level.
    • Load module criteria: specify the load module properties you want to compare. If no criteria is selected, then only a comparison of the load module name is performed.
    • CSECT criteria: specify the CSECT properties you want to compare (only applicable if Compare level is CSECT).
    • Processing Options: specify as required.
    • Listing Options: specify as required.
  7. Press Enter to perform the compare.
  8. When you have finished viewing the report or editing the batch JCL, press the Exit function key (F3) to return to the "Old" data panel.

Related topics