ca optimizer /ii optimizer ii r8 5-enu/bookshelf... · user guide r8.5 ca optimizer®/ii . ... 180...

352
User Guide r8.5 CA Optimizer ® /II

Upload: duongkhue

Post on 18-Apr-2018

236 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

User Guide

r8.5

CA Optimizer®/II

Page 2: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

This documentation and any related computer software help programs (hereinafter referred to as the

"Documentation") are for your informational purposes only and are subject to change or withdrawal by CA at any time.

This Documentation may not be copied, transferred, reproduced, disclosed, modified or duplicated, in whole or in part,

without the prior written consent of CA. This Documentation is confidential and proprietary information of CA and may

not be used or disclosed by you except as may be permitted in a separate confidentiality agreement between you and

CA.

Notwithstanding the foregoing, if you are a licensed user of the software product(s) addressed in the Documentation,

you may print a reasonable number of copies of the Documentation for internal use by you and your employees in

connection with that software, provided that all CA copyright notices and legends are affixed to each reproduced copy.

The right to print copies of the Documentation is limited to the period during which the applicable license for such

software remains in full force and effect. Should the license terminate for any reason, it is your responsibility to certify

in writing to CA that all copies and partial copies of the Documentation have been returned to CA or destroyed.

TO THE EXTENT PERMITTED BY APPLICABLE LAW, CA PROVIDES THIS DOCUMENTATION "AS IS" WITHOUT

WARRANTY OF ANY KIND, INCLUDING WITHOUT LIMITATION, ANY IMPLIED WARRANTIES OF MERCHANTABILITY,

FITNESS FOR A PARTICULAR PURPOSE, OR NONINFRINGEMENT. IN NO EVENT WILL CA BE LIABLE TO THE END USER

OR ANY THIRD PARTY FOR ANY LOSS OR DAMAGE, DIRECT OR INDIRECT, FROM THE USE OF THIS DOCUMENTATION,

INCLUDING WITHOUT LIMITATION, LOST PROFITS, LOST INVESTMENT, BUSINESS INTERRUPTION, GOODWILL, OR

LOST DATA, EVEN IF CA IS EXPRESSLY ADVISED IN ADVANCE OF THE POSSIBILITY OF SUCH LOSS OR DAMAGE.

The use of any software product referenced in the Documentation is governed by the applicable license agreement and

is not modified in any way by the terms of this notice.

The manufacturer of this Documentation is CA.

Provided with "Restricted Rights." Use, duplication or disclosure by the United States Government is subject to the

restrictions set forth in FAR Sections 12.212, 52.227-14, and 52.227-19(c)(1) - (2) and DFARS Section

252.227-7014(b)(3), as applicable, or their successors.

Copyright © 2010 CA. All rights reserved. All trademarks, trade names, service marks, and logos referenced herein

belong to their respective companies.

Page 3: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

CA Product References

This document references the following CA products:

■ CA IDMS®/DB Database

■ CA Roscoe® Interactive Environment

■ CA InterTest® Batch

■ CA InterTest® for CICS

■ CA Librarian®

■ CA Panexec®

■ CA Panvalet®

■ CA SymDump® Batch

■ CA Endevor® Software Change Manager

■ CA Common Services for z/OS

■ CA CICSORT™

■ Unicenter® Network and Systems Management

Page 4: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Contact CA

Contact Technical Support

For your convenience, CA provides one site where you can access the

information you need for your Home Office, Small Business, and Enterprise CA

products. At http://ca.com/support, you can access the following:

■ Online and telephone contact information for technical assistance and

customer services

■ Information about user communities and forums

■ Product and documentation downloads

■ CA Support policies and guidelines

■ Other helpful resources appropriate for your product

Provide Feedback

If you have comments or questions about CA product documentation, you can

send a message to [email protected].

If you would like to provide feedback about CA product documentation, complete

our short customer survey, which is also available on the CA Support website,

found at http://ca.com/docs.

Page 5: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Contents 5

Contents

Chapter 1: Introduction 13

Components ........................................................................... 13

Benefits ............................................................................... 14

Chapter 2: Using Optimizer 17

Optimizer Options ...................................................................... 18 Compile-time Options................................................................ 18

Commonly Used Optimizer Options .................................................... 19

JCL ................................................................................... 20 Usage Considerations ................................................................... 21

SYM Option Considerations ........................................................... 22

Integrated CICS Translator Considerations.............................................. 23 Optimizer Reports ...................................................................... 23

Options Page ....................................................................... 24

Merged Cross-Reference (MXREF) ..................................................... 26 Merged Data Map (MMAP) ............................................................ 31

Merged OFFSET (MOFFSET) .......................................................... 35

Optimizer Condensed Cross-Reference Dictionary (CXREF) ................................ 37 Program Global Table Memory Map (PGT) .............................................. 38

Program Global Table (PGT) .......................................................... 39

Task Global Table Memory Map (TGT) .................................................. 40 Dynamic Save Area Memory Map (DSA) ................................................ 41

PERFORM Range Table and ALTERed GO TO Table ....................................... 42

Special Usage Note for CICS Programs ................................................. 47 COBOL Diagnostic Messages and Compiler Statistics Report ............................... 49

Statistics Report .................................................................... 50

SYM Report ........................................................................ 52 Compiler Source Listing .............................................................. 52

Merged Data Map (MMAP) ............................................................ 53

Compiler Data Map (MAP) ............................................................ 53 Condensed Listing of the Optimized Object Code (OFFSET) ................................ 54

Optimizer Procedure Map Object Listing (LIST) .......................................... 55

Optimizer Selected Procedure Map (SELECT) ............................................ 57

Chapter 3: Using Detector 59

Symbolic Support ...................................................................... 59

Page 6: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

6 User Guide

Detector Options ....................................................................... 60

JCL ................................................................................... 63 Compile-time ....................................................................... 63

Execution-time ..................................................................... 64

Detector Reports ....................................................................... 66 Abend Report .......................................................................... 68

The Offending Instruction ............................................................ 71

Module Call Sequence ............................................................... 72 COBOL Reports ..................................................................... 73

PL/I Reports........................................................................ 83

Assembler Reports .................................................................. 89 LE Heap Storage Report.............................................................. 95

Open Files Report ................................................................... 96

Save Area Trace Report .............................................................. 97 IMS Report......................................................................... 99

DB2 Reports ......................................................................107

CA IDMS/DB Report ................................................................115 Intercepts Report......................................................................121

Snap Report ..........................................................................124

CAIOPTS File Processing Report .........................................................125 Execution Monitor Summary ............................................................126

Detector Facilities .....................................................................128

Merged Versus Dumped Data Displays ................................................128 Production-time Enabling of Debugging Facilities (DBGSLEEP/DBGAWAKE) .................134

Subscript Range Checking (SUBRNGCK) ...............................................135

Detection of Uninitialized Working-Storage (WSINIT) ....................................136 Detection of Invalid Record Area References (FDCHECK) .................................136

Parameter List Validity Checking (PARMCHK)...........................................137

Paragraph Flow Analysis (PFLOW) ....................................................138 SNAP.............................................................................138

INTERCEPTS ......................................................................139

Usage Considerations ..................................................................139 Detector with IMS ..................................................................139

Dynamic Allocation .................................................................139

Hierarchy of Information ............................................................141 Restrictions .......................................................................142

Chapter 4: Using Extended Detector 143

Extended Detector Options .............................................................143

JCL Requirements .....................................................................145 Suppressing Extended Detector Reports ..................................................146

Extended Detector Reports .............................................................146

Page 7: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Contents 7

Hierarchy of Information ...............................................................148

Extended Detector with Language Environment (LE) ........................................148 Usage Considerations/Restrictions .......................................................149

Chapter 5: Using the CAIPRINT Repository Viewer 151

Start the Viewer.......................................................................151

The Report Index ......................................................................152 Select a Repository.................................................................153

Report Index Fields.................................................................153

Primary Commands ................................................................155 Line Commands ...................................................................156

Delete a Report ....................................................................157

Locking and Unlocking Reports .......................................................158 Use the Electronic Notepad ..........................................................158

Modify Formatting Options ..........................................................158

Print a Report .....................................................................162 Select a Report for Viewing ..........................................................164

The Report Tree .......................................................................164

Report Tree Fields..................................................................165 Primary Commands ................................................................166

Line Commands ...................................................................167

Expand and Collapse the Tree View ...................................................167 View a Report .........................................................................168

Report View Fields .................................................................169

Primary Commands ................................................................169 Advanced Techniques ..................................................................170

Set PF Keys .......................................................................170

Use the Keep Window ..............................................................172 Use the Electronic Notepad ..........................................................173

Use TAG and LOCATE ...............................................................175

Symbolic Utilities ......................................................................177 List the Contents of a Symbolic File ...................................................178

Delete a Member from a Symbolic File ................................................180

Print a Program Listing from a Symbolic File ...........................................181 View a Program Listing from a Symbolic File ...........................................183

Add a Listing to a PROTSYM File ......................................................184

List Globally Defined Symbolic Files ...................................................187 List Supplemental Symbolic Files .....................................................187

Repository Viewer Commands ...........................................................188

FIND .............................................................................189 HELP .............................................................................190

KEEP .............................................................................191

Page 8: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

8 User Guide

LOCATE ..........................................................................192

NOTES ...........................................................................192 OPTIONS .........................................................................193

PRINT ............................................................................194

PROFILE ..........................................................................196 REFRESH .........................................................................197

RFIND ............................................................................198

SETINDEX ........................................................................198 SORT.............................................................................199

SYM..............................................................................200

TAG ..............................................................................201 VIEW.............................................................................202

Chapter 6: Using Analyzer 203

Overview .............................................................................203

Counts ...............................................................................205 Timings ..............................................................................205

Analyzer Options ......................................................................206

Report-time Considerations..........................................................207 JCL ..............................................................................208

Compile-time ......................................................................208

Execution-time ....................................................................209 Analyzer Reporter Job Step ..........................................................210

Example ..........................................................................211

Analyzer Reports ......................................................................211 CAIOPTS File Processing Report ......................................................212

Execution Monitor Summary Report...................................................212

Run Summary Report...............................................................215 Module Summary Report ............................................................217

Source Listing Count and Timing Report (SOURCEMAP) ..................................220

Change Summary Report ...........................................................222 Report of Unexecuted Paragraphs ....................................................224

Paragraph Execution-time Summary ..................................................225

Execution Count Cross-Reference Report (CNTXREF) ....................................226 Instruction Detail Report (INSTRMAP) .................................................228

Usage Considerations ..................................................................231

Analyzer with IMS ..................................................................231 Analysis of Counts Results...........................................................231

Interpretation of Timings ............................................................232

Automatic Invocation of Analyzer Reporter.............................................234 The Relationship Between XTIME and DBGSLEEP/DBGAWAKE ............................235

Place tag on a Source Statement for the Change Summary Report ........................235

Page 9: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Contents 9

Restrictions .......................................................................236

Chapter 7: Using Extended Optimization Support for CICS 237

EOS Execution-time Options ............................................................237 JCL Requirements .....................................................................237

Execution-time Messages ...............................................................238

Execution-time Abends .................................................................239 Usage Considerations ..................................................................240

Inter-language Communication Between COBOL and C ..................................240

Mixing of EOS and Non-EOS COBOL Programs ..........................................240 EOS in CICS Region ................................................................241

System Requirements ..................................................................241

Chapter 8: TSO Support and Help Facilities 243

TSO Support ..........................................................................243 Primary Option Menu ..................................................................243

Invocation Panel ...................................................................245

Output File Information Panel ........................................................246 Defaulted Options Panel.............................................................247

Browse CA-Optimizer/II Output Panel .................................................248

Browse CA-Optimizer/II Errors Panel..................................................249 Print CA-Optimizer/II Listing Panel ...................................................250

Delete CA-Optimizer/II Listing Data Sets Panel .........................................251

Execute Optimized Program Panel ....................................................252 Invoke Management Reporting System Panel ..........................................253

Product HELP Facility ...............................................................253

COBOL Language HELP .............................................................256 Repository Viewer ..................................................................260

Chapter 9: Utilities 261

Management Reporting System (MRS)....................................................262

JCL ..............................................................................262 Reports ...........................................................................262

Usage Considerations ...............................................................266

Statistics Report.......................................................................267 JCL ..............................................................................268

Report............................................................................269

Initialization Summary Report ...........................................................270 JCL ..............................................................................271

Report............................................................................272

Options Summary Report ...............................................................273

Page 10: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

10 User Guide

JCL ..............................................................................273

Report............................................................................274 CSL Summary Report ..................................................................275

JCL ..............................................................................275

Report............................................................................276 CAIPRINT Repository Utility .............................................................277

JCL ..............................................................................277

Commands........................................................................278 Usage Considerations ...............................................................281

Chapter 10: Dynamic Symbolic Support 283

Activate Dynamic Symbolic Support ......................................................283

Dynamic Symbolic Support Return Codes ..............................................284 C1DEFLTS Consideration ............................................................284

Chapter 11: Using Options 285

Compile-time .........................................................................285

Coding Options ....................................................................286 Using Synonyms and Abbreviations ...................................................286

Overriding Defaults.................................................................287

Order of Precedence in Establishing Option Values ......................................287 Usage Considerations ...............................................................288

Execution, Report, and View-time ........................................................289

Coding Options ....................................................................289 Overriding Defaults.................................................................289

Optimizer Options ..................................................................290

Execution Time Options .............................................................290 Detector Options ......................................................................291

Specifying Detector Compile-time Options .............................................292

Indicating Detector Execution-time and View-time Options ...............................292 Extended Detector Options .............................................................292

Specifying Extended Detector Compile-time Options ....................................293

Indicating Extended Detector Execution-time and View-time Options ......................294 Analyzer Options ......................................................................294

Compile-time Options...............................................................294

Execution-time Options .............................................................295 Report-time Options ................................................................295

Options Listing ........................................................................297

Appendix A: Data Sets and Block Sizes 317

Compile-time DDs .....................................................................317

Page 11: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Contents 11

Execution-time DD ....................................................................317

Appendix B: Troubleshooting 319

Collect Diagnostic Data .................................................................319 All Problems (except EOS)...........................................................319

Compile-/Optimize- time problems ...................................................320

EOS Problems .....................................................................320 Execution-time problems (excluding EOS) .............................................321

Formatting problems ...............................................................321

Symbolic Postprocessors ............................................................322 Interpret Diagnostic Data ...............................................................322

Print a Symbolic File Member for Diagnostic Purposes .......................................323

Use the Viewer ....................................................................323 Use the Batch Utilities ..............................................................323

Copy Repository Data for Diagnostic Purposes .............................................323

Create a Temporary VSAM Repository .................................................324 Copy a Report to a Temporary VSAM Repository ........................................324

Create a Sequential Data Set from a VSAM Repository...................................324

Print the TIMSV File for Diagnostic Purposes ...............................................325

Glossary 327

Index 333

Page 12: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel
Page 13: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Chapter 1: Introduction 13

Chapter 1: Introduction

CA Optimizer/II is a programmer productivity product for the z/OS environment.

CA Optimizer/II automatically optimizes COBOL programs and assists

programmers in creating, testing, debugging, fine-tuning, and maintaining their

applications.

This section contains the following topics:

Components (see page 13)

Benefits (see page 14)

Components

CA Optimizer/II consists of the following components:

Optimizer

Increases program efficiency by optimizing COBOL object code and

enhances the COBOL source listing to simplify debugging and testing.

Analyzer

Assists in quality assurance and fine-tuning for COBOL programs by

identifying unexecuted paragraphs, untested statements, and performance

bottlenecks.

Detector

Provides abend reporting for test environments, and assists in the debugging

of COBOL programs by providing paragraph flow analysis, parameter

validation, subscript range checking, and much more.

Extended Detector

Provides automatic abend reporting for production and test environments,

with symbolic support for COBOL, PL/I, and Assembler programs.

CAIPRINT Repository Viewer

Allows programmers to view, print, customize, and maintain their abend

reports in a central VSAM repository.

COBOL Language and Product Help

Assists you in finding quick answers to questions about the COBOL language,

product features and options.

Page 14: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Benefits

14 User Guide

Utilities

Allow programmers to:

■ Generate load library analysis reports which identify and describe

COBOL programs in detail.

■ Generate reports detailing optimization results.

■ List, print, or maintain the contents of symbolic files.

■ List, print, or maintain the contents of the CAIPRINT Repository.

■ Generate reports detailing installation defaults.

The use of each of these utilities is discussed later in this guide.

Important! Throughout this publication, the term CA Optimizer/II refers to

the entire product including all of its components, while the term Optimizer

refers only to the COBOL optimization component.

Benefits

To maximize programming productivity, CA Optimizer/II:

■ Expands programming capacity

CA Optimizer/II assists in the development and maintenance of more

efficient and reliable programs so that programmers can concentrate on

programming.

■ Reduces program development time

CA Optimizer/II eliminates the guess work in programming by helping

programmers create or modify programs, and by showing them exactly what

their programs do (or do not do) right on the program source listing.

■ Speeds program debugging

CA Optimizer/II provides COBOL oriented diagnostic information that helps

programmers resolve problems quickly.

To provide better programming techniques, CA Optimizer/II:

■ Teaches programmers better programming practices

CA Optimizer/II helps programmers minimize time-consuming,

nonprogramming procedures by providing a thorough debugging and testing

facility enabling them to easily identify programming errors. Thus, the

opportunity to concentrate on developing better techniques, such as

structured and team programming, is provided.

■ Improves program efficiency

CA Optimizer/II checks subscript calculations, data conversion, register

usage, redundant instructions, verb usage, data addresses, and PERFORM

ranges.

Page 15: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Benefits

Chapter 1: Introduction 15

To improve program reliability, CA Optimizer/II:

■ Ensures adequate testing

CA Optimizer/II reports provide clear documentation of what has been

tested and pinpoints each unexecuted verb to aid programmers in

determining what additional test data is needed.

■ Highlights hidden logic problems

CA Optimizer/II reports show overall logic flow, help spot hidden

performance problems, and pinpoint untested logic.

■ Reduces production errors and missed production schedules

With CA Optimizer/II, programmers get more production runs with fewer

failures, scheduling problems, and reruns. Thus, programmers can use

system time, otherwise lost due to failures or reruns, more productively.

To enhance program performance, CA Optimizer/II:

■ Identifies performance bottlenecks

CA Optimizer/II improves COBOL program performance by identifying

time-consuming statements and eliminating bottlenecks before the program

goes into production.

■ Reduces test time

The analytical capabilities of CA Optimizer/II help programmers get the most

from each compile and test run by allowing them to locate multiple logic and

performance problems in a single compile or execution.

Page 16: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel
Page 17: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Chapter 2: Using Optimizer 17

Chapter 2: Using Optimizer

Optimizer works on the compiler-produced source listing and object code of a

program. It greatly enhances the source listing while reducing the

execution-time. This is accomplished by optimizing the object code. Optimizer

often eliminates 30% or more of the machine instructions. In addition, Optimizer

optionally "instruments" the object code in a variety of ways. Thus, you are

provided with, not only testing and quality assurance tools, but production time

diagnostic facilities as well.

Optimizer does not change the processing performed by the program or alter

user-defined data areas. An optimized program does the same job, but does it

faster. However, an optimized program may require additional CA Optimizer/II

modules at execution-time, depending upon the options selected at

compile/optimize time. The following is a partial list of the object code

optimization techniques:

■ Optimizing

– Register usage

– Addressing for Data and Procedure Division references

– Subscript and index calculations

■ Eliminating

– Redundant instructions

– Repetitive calculations

■ Consolidating

– MOVEs whenever possible

– Repeated logic with global analysis

■ Removing unreferenced code

■ Reducing PERFORM linkage to as little as one instruction

■ Taking code out of loops

■ Simplifying IF logic

The following is a partial list of the enhanced source listing report features:

■ Full merged cross-reference (MXREF)

■ Merged data map (MMAP)

■ Merged condensed procedure listing (MOFFSET)

■ Summary of unconditionally true or false code and nonexecutable code

Page 18: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Optimizer Options

18 User Guide

■ PERFORM Range Summary with identification of PERFORM ranges violating

structured programming techniques

■ Compiler error messages "folded" for viewing on an 80-character width

screen

■ Complete Memory Map display (TGT/PGT) with one line for each possible

area (for example, BLFs), even if the area is of zero length in the program

■ An optimization results report which includes object code optimization

results

This section contains the following topics:

Optimizer Options (see page 18)

JCL (see page 20)

Usage Considerations (see page 21)

Optimizer Reports (see page 23)

Optimizer Options

Using Optimizer together with the COBOL compiler is similar to using the

compiler alone. The compiler and optimizer are executed in a single job step

using a control routine, Director, which links first to the compiler and then to the

Optimizer component. The option defaults are set up so that your program is

always optimized. Specify the NOCOPT option at compile-time when you do not

want optimization to take place.

Compile-time Options

The following table is a summary of all CA Optimizer/II options available to you

at compile/optimize time.

Compile-time Options

To invoke Optimizer: COPT

Environmental options: CICS IDMSDC TPMON ICICS

Output producing

options:

CXREF

DCRDISP

LIST

MAP

MMAP

MOFFSET

MXREF

OFFSET

PRTCOPY

SELECT

SOURCE

TITLE

XMMAP

XREF

Analyzer features: XCOUNT XTIME

Page 19: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Optimizer Options

Chapter 2: Using Optimizer 19

Compile-time Options

Detector features: DBGSLEEP

DTECT

FDCHECK

PARMCHK

PFLOW

SUBRNGCK

WSINIT

Other options: COBCC

DECK

EXIT

INTERTST

LINECOUNT

LOWER

OBJECT

OPTRC

SPM

STATS

SYM

XDATA

You should be aware that some options, when included in your PARM statement,

have the ability to turn ON or OFF CA Optimizer/II components and other

options. The "Using Options" chapter provides a comprehensive description of all

CA Optimizer/II options (including any other options or facilities that they

affect), listed in alphabetical order. You should also familiarize yourself with Of

Precedence In Establishing Option Values, which contains information

concerning the sequence of option processing, and options that are either forced

ON or OFF by other options that are encountered during processing. The

compile-time features listed on the previous table for the Detector and Analyzer

facilities of CA Optimizer/II are also discussed in their respective chapters of this

guide.

Commonly Used Optimizer Options

The following table illustrates usage of the most frequently specified Optimizer

compile-time options. These options allow you to control the Optimizer source

listing and object code output.

To Specify

Determine

■ If any statements have been flagged as

nonexecutable or unconditional (provides the

Optimizer return code)

OPTRC=rc

Produce

■ Compiler data map

■ Compiler data map merged with source

■ Relative decimal byte displacement (on the data

map or merged data map listing)

■ An optimized program for execution under CICS

■ Condensed procedure map

■ Condensed procedure map merged with source

MAP or DMAP*

MMAP or MDMAP*

DCRDISP

CICS

OFFSET or CLIST*

MOFFSET or MLIST*

LIST or PMAP*

Page 20: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

JCL

20 User Guide

To Specify

■ Object code for entire program

■ Object code for specified statements

SELECT

Produce a cross-reference

■ Not condensed

■ Condensed

■ Merged onto your source listing for both the Data

and Procedure Divisions

XREF

CXREF

MXREF

Produce

■ The optimized object module on SYSPUNCH

■ The object text written to SYSLIN

DECK

OBJECT

Suppress

■ Optimizer

■ Source listings

NOCOPT

NOSOURCE

Note: The options marked with an asterisk (*) are upwardly compatible with

CA Optimizer for the OS/VS COBOL compiler. Only options listed without an

asterisk are referred to in the rest of this manual.

JCL

To execute the Optimizer component, refer to a copy of your installation's

cataloged procedures for a compile/optimize and link (or compile/optimize, link,

and go).

The standard CA procedure is a compile/optimize and link and is called CAIOPTII.

This is an example of how to invoke the procedure and specify Optimizer

component options:

//STEP1 EXEC CAIOPTII,

// COBOPT='MOFFSET,MMAP,MXREF'

where COBOPT is a symbolic option defined in the CAIOPTII procedure.

Note: You can combine Optimizer options with compiler options in any order. If

the procedure at your installation does not have a symbolic option for the PARM

options, you can pass Optimizer options the same way you specify compiler

options:

//STEP1 EXEC CAIOPTII,

// PARM.COB='MXREF,MOFFSET,MMAP'

Page 21: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Usage Considerations

Chapter 2: Using Optimizer 21

When your program is link-edited, an CA Optimizer/II program initialization

module is automatically linked with your program. The routine is reentrant so

there is never more than one copy in a load module. With one exception*, no

other CA Optimizer/II runtime modules are linked with your program. Additional

CA Optimizer/II runtime modules are dynamically loaded, as needed, dependent

upon the Detector or Analyzer facilities requested at compile-time.

* If you have inserted a CALL in a program to the SNAP routine (CAODSNAP),

and NODYN was specified at compile/optimize time, CAODSNAP is link-edited

with the program.

Usage Considerations

CA Optimizer/II optimizes programs that have up to 2048 reference segments.

There is a segment for each: 4 KB of record description in each FD, 4 KB of

Working-Storage, 4 KB of Local Storage, 4 KB of Linkage Section, and 8 KB to 12

KB of Procedure Division code. Only the segments whose base locators are

actually used are counted as referenced. For example, a 16 MB table that is

addressed only by non-literal subscripting or indexing has only one referenced

segment in an optimized program. Therefore, although CA Optimizer/II can

optimize a program containing 2048 reference segments of 4 KB each, it is

unlikely that all of these segments are referenced. This increases the effective

upper limit on the size of an optimized program to greater than 8 MB (2048 times

4 KB). The theoretical maximum is 32767 segments with no more than 2048 of

them being referenced; this gives CA Optimizer/II a theoretical maximum of

approximately 128 MB.

The following features are not supported by CA Optimizer/II:

■ Object oriented COBOL

■ Source language debugging and debugging declaratives

■ Control output listing (*CONTROL/*CBL)

■ RNDMP command

■ CMS

■ OPT option of COBOL

Page 22: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Usage Considerations

22 User Guide

Analyzer and Detector are not supported under CICS. CA InterTest supports

interactive debugging of COBOL programs under CICS.

The following COBOL options/facilities are also not supported:

■ COBTEST

■ FDUMP

■ LANGUAGE (JA)

■ SSRANGE

■ TEST

There are no other restrictions on COBOL source language use. Any valid COBOL

program can be optimized. You do not have to make any changes, additions, or

modifications to any COBOL program in order to use Optimizer.

SYM Option Considerations

When the SYM option is selected at compile time, the optimized listing is passed

directly to the COBOL listing postprocessor program IN25COB2 at the end of the

code generation phase of optimization. The postprocessor uses the information

in the optimized listing to update the PROTSYM file with symbolic information for

your program.

The postprocessor has a specific set of required report options that must be

provided to successfully update the PROTSYM file. These options, which include

XREF, MAP, and MOFFSET, are automatically passed to IN25COB2 even if you

have not requested them. The optimized listing written to SYSPRINT during

optimization always reflects the options that you have selected. However,

depending on which options you requested, it is possible that your optimized

listing will be stored in your PROTSYM file with slightly different reporting

options.

Page 23: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Optimizer Reports

Chapter 2: Using Optimizer 23

Integrated CICS Translator Considerations

The integrated CICS translator of Enterprise COBOL for z/OS allows programs

containing EXEC CICS statements to be compiled without needing a separate

precompile step. Usually, the integrated translator would be enabled using the

compiler's CICS option, as described in IBM's Enterprise COBOL for z/OS

Programming Guide. However, CA Optimizer/II already has a CICS option to

indicate that a program is being optimized to execute in a CICS environment. For

this reason, the ICICS option has been provided as a synonym to the compiler's

CICS option.

When the ICICS option is specified on the parameter list, CA Optimizer/II will

pass the equivalent CICS option to the COBOL compiler. As with the compiler's

CICS option, option overrides for the CICS translator may be passed as a

suboption string of the ICICS option. The suboption string must be delimited by

quotes or apostrophes.

The ICICS option should only be used with the Enterprise COBOL for z/OS

compiler to compile programs that contain EXEC CICS statements and which

have not been processed by a separate CICS translator step. If it is specified with

earlier versions of the COBOL compiler, it will produce a compiler error message

(RC=8). Additionally, ICICS may only be specified on the JCL parameter list and

will not be recognized if specified on the PROCESS(CBL) statement.

The ICICS option will force the CA Optimizer/II CICS option on.

Optimizer Reports

Optimizer provides an optimized object module which can be submitted directly

to the linkage editor. Optimizer also produces an Enhanced Source Listing with

an accompanying report that reflects the optimization results. The Enhanced

Source Listing with MMAP, MOFFSET, and MXREF contains the following reports.

They are listed in the order that Optimizer generates them.

Source listing control options permit you to exclude the Merged Data Map

(MMAP) or the Merged OFFSET (MOFFSET) and to print the Compilers Data Map

(MAP), Condensed Listing (OFFSET), and the Procedure Map (LIST). You can also

choose to print selected portions of the Procedure Map Object Listing by using

the SELECT option.

Page 24: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Optimizer Reports

24 User Guide

Options Page

This section shows the first page of the Optimizer Enhanced Source Listing.

Page 25: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Optimizer Reports

Chapter 2: Using Optimizer 25

CA CAO2DEMO Page

1

ACA Optimizer/II r8.5 1005AOX00 B PP 5655-G53 IBM Enterprise COBOL for z/OS 3.3.1 C 14 Jun,2005 13.18.42

Invocation parameters:

APOST,DYN,RENT

PROCESS(CBL) statements:

CBL NOCMPR2, DYN, RENT, APOST, NUMPROC(PFD), NONAME

*** COBOL FOR Z/OS OPTIONS *** *** OPTIMIZER/II OPTIONS ***

D NOADATA E NOCICS

ADV NOCXREF APOST NODBGSLEEP

ARITH(COMPAT) NODCRDISP

NOAWO NODECK BUFSIZE(27998) DTECT

CODEPAGE(1140) EXIT(NOPRTEXIT)

NOCOMPILE(S) FDCHECK NOCURRENCY NOICICS

DATA(31) NOIDMSDC

NODATEPROC NOLIST DBCS NOMAP

NODIAGTRUNC MMAP

NODLL MOFFSET NODUMP MXREF

DYNAM OBJECT

EXIT(NOLIBEXIT,NOINEXIT) NOOFFSET NOEXPORTALL OPTRC(0)

NOFASTSRT PARMCHK

FLAG(I,I) NOPFLOW

NOFLAGSTD PRTCOPY

INTDATE(ANSI) NOSELECT

LANGUAGE(EN) SLINBLK(11680)

NOLIB SOURCE

LINECOUNT(60) SPCHBLK(11680)

NONAME NOSPM

NSYMBOL(NATIONAL) SPRTBLK(11704)

NONUMBER STATS

NUMPROC(PFD) SUBRNGCK OUTDD(SYSOUT) SYM

PGMNAME(COMPAT) NOTPMON

RENT WSINIT RMODE(AUTO) XCOUNT

SEQUENCE NOXMMAP

SIZE(MAX) NOXREF SPACE(1) XTIME

NOSQL

NOTERM NOTHREAD

TRUNC(STD)

NOVBREF NOWORD

YEARWINDOW(1900)

ZWB

F Legend for merged cross reference (MXREF):

A letter preceding an entry in the merged cross reference indicates the context in which the procedure-name (pname) or data-name (dname) was used:

A = ALTER (pname) P = PERFORM (pname)

D = GO TO (pname) DEPENDING ON R = (dname) was referenced E = End of PERFORM range thru (pname) T = ALTER TO PROCEED TO (pname)

G = GO TO (pname) U = USE FOR DEBUGGING (pname)

M = (dname) was modified blank = (dname or pname) defined line number

G Data Definition Attribute codes (rightmost column) have the following meanings:

D = Object of OCCURS DEPENDING G = GLOBAL S = Spanned file

E = EXTERNAL O = Has OCCURS clause U = Undefined format file

F = Fixed-length file L = Group has own length definition V = Variable-length file

FB= Fixed-length blocked file R = REDEFINES VB= Variable-length blocked file

Page 26: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Optimizer Reports

26 User Guide

A

Shows the customer name and identifies the CA Optimizer/II version

number.

B

Identifies the compiler version and release.

C

Shows the compilation date and the time of optimization.

D

Lists the COBOL options in effect.

E

Lists the Optimizer options in effect.

F

Displays this legend when the MXREF option is specified. This legend may

appear on the next listing page if there is not enough room on this page.

G

Displays this legend when the MMAP option is specified. This legend may

appear on the next listing page if there is not enough room on this page.

Note: If an option is common to both COBOL and Optimizer, it is listed with the

Optimizer options in effect.

Merged Cross-Reference (MXREF)

The Merged Cross-Reference (MXREF) merges the compiler's cross-reference

onto the program's Data and Procedure Divisions' source statements. MXREF is

■ Compatible with both MMAP and MOFFSET

■ Allowed with either XREF or CXREF

Page 27: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Optimizer Reports

Chapter 2: Using Optimizer 27

Reading the MXREF

On a source statement line that defines a data or procedure name, MXREF lists

the source statement numbers where the data or procedure name is referenced.

On a source statement line where a data or procedure name is referenced,

MXREF lists the source statement number where the data or procedure name is

defined.

Source lines that have definitions and references have MXREF line numbers for

both; the references appear first. For example, the MXREF for the following

statement first lists all the references to PARA-A, then lists the line number on

which SUB-COUNTER is defined:

PARA-A. MOVE 1 TO SUB-COUNTER.

Identifying MXREF Line Numbers

Each MXREF line number is preceded by a one-character code or a blank. If

MXREF has been specified, the Options page will contain a legend defining the

MXREF codes. An MXREF number preceded by a blank denotes the line number

on which the referenced data or procedure name is defined. For easy reference,

here are the one-character codes of the MXREF legend:

A = ALTER (PNAME)

D = GO TO (PNAME) DEPENDING ON

E = END OF PERFORM RANGE THRU (PNAME)

G = GO TO (PNAME)

M = (DNAME) WAS MODIFIED

P = PERFORM (PNAME)

R = (DNAME) WAS REFERENCED

T = ALTER TO PROCEED TO (PNAME)

U = USE FOR DEBUGGING (PNAME)

BLANK = (DNAME OR PNAME) DEFINED LINE NUMBER

Page 28: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Optimizer Reports

28 User Guide

The MXREF line numbers for a source line start on that line, continuing to

additional lines when necessary. Read the numbers from left to right and top to

bottom.

MXREF line numbers, on a source statement that defines a data or procedure

name, are in ascending sequence. For example, if DNMA is referenced on lines

950, 1175, and 2247, the MXREF for the definition of DNMA will be:

77 DNMA PIC XX VALUE SPACES. R0950

M1175 R2247

MXREF line numbers, on a source statement that references multiple data and/or

procedure names, are in the same order as in the source statement. For

example, if DNMA is defined on line 1000, and DNMB is defined on line 500, the

MXREF in the following statement would be:

MOVE DNMA TO DNMB 1000 500

Page 29: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Optimizer Reports

Chapter 2: Using Optimizer 29

The following two samples display:

■ A MXREF for a Data Division that also has a MMAP.

■ A MXREF for a Procedure Division that also has a MOFFSET.

CA CAO2DEMO Page 6

CA Optimizer/II r8.5 1005AOX00 PP 5688-197 IBM COBOL for MVS & VM 1.2.2 02 Mar,2004 15.0r77 LineID PL SL ----+-*A-1-B--+----2----+----3----+----4----+----5----+----6----+----7--|

000118 DATA DIVISION. MXREF Base Displ Str Disp Definition

000119 ****************************************************************** 000120 ** D A T A D I V I S I O N **

000121 ******************************************************************

000122

000123 ******************************************************************

000124 FILE SECTION.

000125 FD REPORT-OUT R0115 000 QSAM FB

R0530 R1103

000126 BLOCK CONTAINS 1 RECORDS

000127 LABEL RECORDS ARE STANDARD

000128 DATA RECORD IS LINE-OUT.

000129 01 LINE-OUT. M1119 F=000 000000 0CL120

M1225 000130 03 FILLER PIC X(120). F=000 000000 000 000 120C

000131 01 LINE-OUT1 PIC X(120). M0590 F=000 000000 120C

000132 ****************************************************************** 000133

000134

000135 WORKING-STORAGE SECTION. 000136 77 FILLER PIC X(80) VALUE 'THIS PROGRAM IS PROPRIETARY PROPERTY W=000 000000 80C

000137 - 'OF CA INTERNATIONAL, INC.'.

000138 * 000139 77 FILLER PIC X(80) VALUE ' COPYRIGHT (C) 1986-1999 BY COMPUTER W=000 000050 80C

000140 - 'ASSOCIATES INTERNATIONAL, INC.'.

000141 * 000142 77 ERROR-FLAG PIC X(1) VALUE '0'. M0888 W=000 0000A0 1C

M0938 M0943 R0947 M1145 M1151

M1157 M1165 M1173 M1181 M1189 000143 77 DATA-PICX10 PIC X(10). M0591 W=000 0000A8 10C

000144 77 ROW-3D PIC 99 COMP VALUE 1. R0653 W=000 0000B8 2C

000145 77 COLUMN-3D PIC 99 COMP VALUE 1. R0653 W=000 0000C0 2C 000146 77 RANGE-3D PIC 99 COMP VALUE 1. R0653 W=000 0000C8 2C

000147 *

000148 01 PARAMETER-ONE. R0515 W=000 0000D0 0CL12

R0516

000149 03 FILLER PIC X(12) VALUE 'PARAMETERONE'. W=000 0000D0 000 000 12C

000150 *

000151 01 PARMCHK-DATA EXTERNAL. M0515 X=000 000000 0CL12 E

000152 03 FILLER PIC X(12). X=000 000000 000 000 12C E

000153 *

000154 01 PARM-PASSED-BY-JCL GLOBAL. W=000 0000E0 0CL19 G

000155 03 PARM-MSG PIC X(8). R0545 W=000 0000E0 000 000 8C G

M1448 M1454 M1460 M1466 M1472 M1478 M1483

000156 03 PARM-FLAG PIC X(8). R1104 W=000 0000E8 000 008 8C G

M1447 M1453 M1459 M1465 M1471 M1477 M1482

000157 03 PARM-MODE PIC X(3). R0514 W=000 0000F0 000 010 3C G

R0543 R1368 R1413 M1449 M1455

Page 30: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Optimizer Reports

30 User Guide

CA CAO2DEMO A Page 16

CA Optimizer/II r7 1005AOX00 PP 5688-197 IBM COBOL for MVS & VM 1.2.2 02 Mar,2004 15.0r77

LineID PL SL ----+-*A-1-B--+----2----+----3----+----4----+----5----+----6----+----7--|

MXREF MOFFSET

000477 PROCEDURE DIVISION USING PARMS. 0473 001438

000478 ******************************************************************

000479 ** P R O C E D U R E D I V I S I O N **

000480 ****************************************************************** 000481

000482 ******************************************************************

000483 MAIN-PROGRAM-LOGIC SECTION. 001640 000484

000485 PERFORM PRE-INIT. 0524 001646

000486 PERFORM INITIALIZE-DEMO. 0556 001654 000487

000488 MAIN-REPEAT-LOOP SECTION. G0510 00166C

000489 IF COUNT-TIMES LESS THAN 1 GO TO COMPLETE-DEMO. 0251 0512 00167A GO 001690

000490 SUBTRACT 1 FROM COUNT-TIMES. 0251 00169E

000491 000492 PERFORM SECTION-A. 0598 0016BA

000493 PERFORM SECTION-B. 0613 0016BE

000494 PERFORM SECTION-C. 0635 0016CC 000495 PERFORM SECTION-D. 0661 0016DA

000496 PERFORM SECTION-E. 0703 0016E8

000497 PERFORM SECTION-F. 0721 0016F6 000498 PERFORM SECTION-G. 0737 001704

000499 PERFORM SECTION-H. 0762 001712

000500 PERFORM SECTION-I. 0777 001720

000501 PERFORM SECTION-J. 0790 00172E

000502 PERFORM SECTION-K. 0799 00173C

000503 PERFORM SECTION-L. 0824 00174A

000504 PERFORM SECTION-M. 0845 001758

000505 PERFORM SECTION-N. 0855 001766

000506 PERFORM SECTION-O. 0870 001774

000507 PERFORM MAIN-MLT-PARAGRAPH 0958 001782

000508 THRU MAIN-MLT-PARAGRAPH-EXIT. 0966

000509 000510 GO TO MAIN-REPEAT-LOOP. 0488 001790

000511

000512 COMPLETE-DEMO. G0489 00179E 000513 PERFORM CHECK-RESULTS. 0883 0017B4

000514 IF PARM-MODE = 'DTE' 0157 0017D2

000515 1 MOVE PARAMETER-ONE TO PARMCHK-DATA 0148 0151 0017E6 000516 1 CALL 'CAO2PCHK' USING PARAMETER-ONE. 0148 0017F6

000517 PERFORM PERFORM-RANGE-TABLE. 1019 001834

000518 PERFORM PARAMETER-FORCED-ABEND. 1091 00185A 000519 DISPLAY ' CAO2DEMO EXECUTION END'. 00186C

000520 GOBACK. 001886

000521 ******************************************************************

A

If the first line on the report is part of a nested program, the nested program

name will appear within parenthesis next to the main program-ID,

CAO2DEMO.

Page 31: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Optimizer Reports

Chapter 2: Using Optimizer 31

Merged Data Map (MMAP)

The MMAP option that you specify at compile-time prints the data map

information produced by the compiler beside the Data Division on the source

listing. The first 88 print positions of the source statements appear just as the

compiler generates them. Optimizer uses print columns 89 through 132 to add

the data map information next to its associated source statements.

The listing for the merged data map is much shorter than the listings for the

combined source and MAP and contains the same information. The Detector

feature of CA Optimizer/II provides reports which match these same base and

displacement addresses.

Page 32: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Optimizer Reports

32 User Guide

The following is a partial source listing showing the MMAP option's output.

CA CAO2DEMO Page 6

CA Optimizer/II r7 1005AOX00 PP 5688-197 IBM COBOL for MVS & VM 1.2.2 02 Mar,2004 15.0r77

LineID PL SL ----+-*A-1-B--+----2----+----3----+----4----+----5----+----6----+----7--|

000118 DATA DIVISION. A MXREF Base Displ Str Disp Definition

000119 ******************************************************************** 000120 ** D A T A D I V I S I O N **

000121 ********************************************************************

000122 000123 ********************************************************************

000124 FILE SECTION. B C D E F

000125 FD REPORT-OUT R0115 000 QSAM FB R0530 R1103

000126 BLOCK CONTAINS 1 RECORDS

000127 LABEL RECORDS ARE STANDARD 000128 DATA RECORD IS LINE-OUT.

000129 01 LINE-OUT. M1119 F=000 000000 0CL 120

M1225 000130 03 FILLER PIC X(120). F=000 000000 000 000 120C

000131 01 LINE-OUT1 PIC X(120). M0590 F=000 000000 120C

000132 ******************************************************************** 000133

000134

000135 WORKING-STORAGE SECTION. 000136 77 FILLER PIC X(80) VALUE 'THIS PROGRAM IS PROPRIETARY PROPERTY W=000 000000 80C

000137 - 'OF COMPUTER ASSOCIATES INTERNATIONAL, INC.'.

000138 *

000139 77 FILLER PIC X(80) VALUE ' COPYRIGHT (C) 1986-1999 BY COMPUTER W=000 000050 80C

000140 - 'ASSOCIATES INTERNATIONAL, INC.'.

000141 *

000142 77 ERROR-FLAG PIC X(1) VALUE '0'. M0888 W=000 0000A0 1C

M0938 M0943 R0947 M1145 M1151

M1157 M1165 M1173 M1181 M1189

000143 77 DATA-PICX10 PIC X(10). M0591 W=000 0000A8 10C

000144 77 ROW-3D PIC 99 COMP VALUE 1. R0653 W=000 0000B8 2C

000145 77 COLUMN-3D PIC 99 COMP VALUE 1. R0653 W=000 0000C0 2C 000146 77 RANGE-3D PIC 99 COMP VALUE 1. R0653 W=000 0000C8 2C

000147 *

000148 01 PARAMETER-ONE. R0515 W=000 0000D0 0CL12 R0516

000149 03 FILLER PIC X(12) VALUE 'PARAMETERONE'. W=000 0000D0 000 000 12C

000150 * 000151 01 PARMCHK-DATA EXTERNAL. M0515 X=000 000000 0CL12 E

000152 03 FILLER PIC X(12). X=000 000000 000 000 12C E

000153 * 000154 01 PARM-PASSED-BY-JCL GLOBAL. W=000 0000E0 0CL19 G

000155 03 PARM-MSG PIC X(8). R0545 W=000 0000E0 000 000 8C G

M1448 M1454 M1460 M1466 M1472 M1478 M1483

000156 03 PARM-FLAG PIC X(8). R1104 W=000 0000E8 000 008 8C G

M1447 M1453 M1459 M1465 M1471 M1477 M1482

000157 03 PARM-MODE PIC X(3). R0514 W=000 0000F0 000 010 3C G

R0543 R1368 R1413 M1449 M1455

Page 33: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Optimizer Reports

Chapter 2: Using Optimizer 33

The contents of the Merged Data Map include:

A

The Data Division source line contains the column headers for the merged

data map.

B

The base locator numbers of the BLF, BLL, BLK, BLV, BLW and BLX cell in the

TGT, represented as F=, L=, K=, V=, W=, or X= for COBOL II and above,

contains the base address of the data field. As part of its optimization

scheme, Optimizer removes any unreferenced base locator cells. Therefore,

the existing base locators may cover areas in excess of 4 KB.

C

The displacement to be added and the base address for locating the data

item in a dump.

D

DCRDISP is optional. It provides the relative byte displacement in decimal of

the data field. IF NODCRDISP was specified, the field appears as a structure

displacement (STR DISP) in hexadecimal.

E

The definition field in terms of its length in bytes.

F

A usage code defining:

D

Object of OCCURS DEPENDING ON clauses

E

EXTERNAL

F

Format of the records of a file as FIXED LENGTH

FB

FIXED LENGTH BLOCKED FILE

Page 34: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Optimizer Reports

34 User Guide

G

GLOBAL

O

OCCURS clauses

OG

GROUP HAS OWN LENGTH DEFINITION

R

REDEFINES statements

S

SPANNED FILE

U

UNDEFINED FORMAT FILE

V

VARIABLE LENGTH FILE

VB

VARIABLE LENGTH BLOCKED FILE

Note: For examples of how to use the information contained on the Data Map,

see the chapter ―Using Detector.‖

If you use COPY with the SUPPRESS option, the data map information relating to

the suppressed data name will appear following the source listing. It is in the

same location and format as the original compiler data map. If the XMMAP option

is specified, any data names defined from a COPY ... SUPPRESS statement will

not appear.

Page 35: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Optimizer Reports

Chapter 2: Using Optimizer 35

Merged OFFSET (MOFFSET)

When you request a MOFFSET at compile-time, the address of each verb prints

alongside the Procedure Division statement on the source listing. An address

also prints for each referenced paragraph name.

CA CAO2DEMO Page 16 CA Optimizer/II r8.5 1005AOX00 PP 5688-197 IBM COBOL for MVS & VM 1.2.2 02 Mar,2004 15.0r77

LineID PL SL ----+-*A-1-B--+----2----+----3----+----4----+----5----+----6----+----7--| A

MXREF MOFFSET 000477 PROCEDURE DIVISION USING PARMS. 0473 001438

000478 ******************************************************************

000479 ** P R O C E D U R E D I V I S I O N ** 000480 ******************************************************************

000481

000482 ****************************************************************** 000745

000746 PARAGRAPH-4600. G0752 G0755 00275C

000747 COMPUTE RESULT-L-5 (SUB1) = RESULT-L-5 (SUB1) 0326 0246 0326 002766 5132

000748 + LIST-1 (SUB1) * (A + B) 0316 0246 0240

0241

000749 - LIST-1 (SUB2) * (A + B) 0316 0247 0240

0241

000750 + LIST-1 (SUB3) * (A + B). 0316 0248 0240

0241 B

000751 ADD 1 TO SUB3 IF SUB3 NOT GREATER THAN SUB-MAX 0248 0248 0250 002828

IF 002840 000752 1 GO TO PARAGRAPH-4600. 0746 002850

000753 MOVE 1 TO SUB3. 0248 00285E

000754 ADD 1 TO SUB2 IF SUB2 NOT GREATER THAN SUB-MAX 0247 0247 0250 002876 IF 00288A

000755 1 GO TO PARAGRAPH-4600. 0746 002896

000756 MOVE 1 TO SUB2. 0247 0028A4 000757 ADD 1 TO SUB1 IF SUB1 NOT GREATER THAN SUB-MAX 0246 0246 0250 0028B8

IFE 0028CC

000758 1 GO TO PARAGRAPH-4500. 0743 0028D8 ***EXIT FROM PERFORMED PARAGRAPH(S).D 002902

000759

000760 ****************************************************************** 000791 C

000792 IF VALUE2 NOT EQUAL 4 OR 6 GO TO SECTION-J-RETURN. 0237 0794-UNCOND

GO 002B28

The contents of the Merged OFFSET include:

A

Before the Procedure Division source line is the column header for the

merged OFFSET.

B

The Merged Condensed Procedure Division Listing corresponds to the verb or

procedure name mentioned on the source statement. This identifies the

hexadecimal location at which the statement begins.

Page 36: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Optimizer Reports

36 User Guide

C

When Optimizer detects statements that cannot be reached for execution, or

conditional statements that are unconditionally true or false, Optimizer

prints UNEXEC or UNCOND on the source listing in place of the hexadecimal

locations for any such verb, and also removes the object code for all or part

of those statements. Optimizer also flags as UNCOND, a compound

conditional where any one of the tests are found to be unconditional. The

appropriate warning messages print on the last page of the source listing

along with the statement numbers of the source lines that are UNEXEC or

UNCOND.

In conjunction with this report, the OPTRC option forces Optimizer to

generate a particular return code if it identifies UNEXEC or UNCOND

statements. Because of the way the compiler generates code for the WHEN

verb, Optimizer cannot identify where its code begins. Therefore, a MOFFSET

address of UNCOND or UNEXEC will never be given for a WHEN verb.

Instead, the verb prior to the WHEN shows the MOFFSET information for

both itself and the WHEN.

D

Optimizer flags any statement which represents a PERFORM range exit by

printing the message ***EXIT FROM PERFORMED PARAGRAPH(S) on the

Source Listing following the source statement. Use these messages with the

information in the PERFORM Range Table to verify that the PERFORM

statements were coded correctly.

E

If more than one verb appears on a source line, the subsequent verbs are

displayed to the right of the source. The MOFFSET of subsequent verbs is

also listed on the line.

If Optimizer detects nonexecutable or unconditional statements in the COBOL

program, the following message is printed at the end of the report:

WARNING:

THE FOLLOWING STATEMENTS IN THIS PROGRAM HAVE BEEN FLAGGED AS

UNEXECUTABLE. THEIR STATEMENT NUMBERS ARE: nnnnnn, etc.

Note: Under certain circumstances, the compiler generates code that tests the

same condition twice on some READ, WRITE and REWRITE verbs. When this

happens, Optimizer deletes the second test as it is redundant and marks the verb

as UNCOND.

Page 37: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Optimizer Reports

Chapter 2: Using Optimizer 37

Optimizer Condensed Cross-Reference Dictionary (CXREF)

The Condensed Cross-Reference (CXREF) is the standard compiler cross

reference, with all unreferenced data items removed. Unreferenced paragraph

names are not removed. You produce this report by specifying the CXREF option

at compile-time.

CA CAO2DEMO Page 49

CA Optimizer/II r8.5 1005AOX00 PP 5688-197 IBM COBOL for MVS & VM 1.2.2 02 Mar,2004 15.0r77

An "M" preceding a data-name reference indicates that the data-name is modified by this reference.

Defined Cross-reference of data names References

240 A. . . . . . . . . . . . . . . 619 620 709 710 711 713 728 729 730 731 748 749 750 923 925 927 1405 1406 1407

1408 1417

410 ACCTUAL-LT1-FIELD1 . . . . . . M976 399 ADDER. . . . . . . . . . . . . 630 631 632 M1044 M1057 1061 M1064 1065 M1069 M1075 M1081

455 ARY-CHECK-HDR. . . . . . . . . 1202

463 ARY-CHECK-LINE . . . . . . . . M1205 1219 231 ARY-CK . . . . . . . . . . . . M884 M1161 M1169 M1177 M1185 M1193 1201

461 ARY-CK-OUT . . . . . . . . . . M1201

229 ARY-COM. . . . . . . . . . . . M1208 M1209 M1210 M1211 M1212 M1213 M1214 1215 467 ARY-ELEM . . . . . . . . . . . M1215

457 ARY-LBL. . . . . . . . . . . . M1148 M1154 M1160 M1168 M1176 M1184 M1192

230 ARY-SUM. . . . . . . . . . . . M884 M1162 M1170 M1178 M1186 M1194 1200 459 ARY-SUM-OUT. . . . . . . . . . M1200

241 B. . . . . . . . . . . . . . . 619 620 709 710 711 713 728 729 730 731 748 749 750 923 925 927 1405 1406 1407

1408 254 BINARY-CNTR. . . . . . . . . . M1375

255 BINARY-CNTR-SAVE . . . . . . . M1404 1418

252 BINARY-1 . . . . . . . . . . . 551 552 M1370 1410 1417 253 BINARY-2 . . . . . . . . . . . M1372

242 C. . . . . . . . . . . . . . . 619 620 709 710 711 713 728 729 730 731 923 925 1408

307 CHECK1 . . . . . . . . . . . . 1416 311 CHECK5 . . . . . . . . . . . . 1416

145 COLUMN-3D. . . . . . . . . . . 653

251 COUNT-TIMES. . . . . . . . . . 489 M490 M548

249 C1 . . . . . . . . . . . . . . 620 710 711 729 730 922

CA CAO2DEMO Page 54 CA Optimizer/II r8.5 1005AOX00 PP 5688-197 IBM COBOL for MVS & VM 1.2.2 02 Mar,2004 15.0r77

Context usage is indicated by the letter preceding a procedure-name reference.

These letters and their meanings are: A = ALTER (procedure-name)

D = GO TO (procedure-name) DEPENDING ON

E = End of range of (PERFORM) through (procedure-name) G = GO TO (procedure-name)

P = PERFORM (procedure-name)

T = (ALTER) TO PROCEED TO (procedure-name) U = USE FOR DEBUGGING (procedure-name)

Defined Cross-reference of procedures References

1367 ABEND-PARAGRAPH. . . . . . . . P1364 883 CHECK-RESULTS. . . . . . . . . P513

887 CHECK-0. . . . . . . . . . . . G885

895 CHECK-1. . . . . . . . . . . . G886 899 CHECK-1-LOOP . . . . . . . . . G903

904 CHECK-2. . . . . . . . . . . . G896 G900

913 CHECK-2-LOOP . . . . . . . . . G920

921 CHECK-3. . . . . . . . . . . . G914

936 CHECK-4

941 CHECK-5

946 CHECK-6

512 COMPLETE-DEMO. . . . . . . . . G489

526 DEMO-BEGIN . . . . . . . . . . A538

529 DEMO-INIT. . . . . . . . . . . G527

537 DEMO-INIT-BYPASS

540 DEMO-START-IT. . . . . . . . . T538 1207 ELEM-LOOP. . . . . . . . . . . G1217

Page 38: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Optimizer Reports

38 User Guide

Program Global Table Memory Map (PGT)

This map contains descriptions of the different areas of the Program Global Table

(PGT). You should note that the PGT Memory Map is altered by Optimizer.

Produce this report by specifying any of these options at compile-time: SYM,

LIST, MOFFSET, OFFSET, SELECT.

CA CAO2DEMO Page 53

CA Optimizer/II r8.5 1005AOX00 PP 5688-197 IBM COBOL for MVS & VM 1.2.2 02 Mar,2004 15.0r77

A B C

PGMLOC PGTLOC PGT MEMORY MAP

00000168 00000000 SYSTEM LITERAL POOL

000001C0 00000058 BASE LOCATOR FOR PGT

000001C4 0000005C CONSTANT BASE LOCATORS 000001D8 00000070 PROCEDURE BASE LOCATORS

000001F0 00000088 VIRTUAL ADDRESS CELLS

000001F0 00000088 VN INITIALIZER CELLS 0000020C 000000A4 PROGRAM LITERAL POOL

00000A20 000008B8 OPTIMIZER DOUBLEWORD LITERALS

000010B8 00000F50 OPTIMIZER FULLWORD LITERALS 0000110C 00000FA4 OPTIMIZER HALFWORD LITERALS

0000110C 00000FA4 OPTIMIZER BYTE LITERALS

00001198 00001030 OPTIMIZER CHARACTER LITERAL POOL 00001230 000010C8 RESERVED FOR FUTURE USE

00001230 000010C8 SEGMENT TRANSLATE LITERAL POOL

00001250 000010E8 OPTIMIZER TRANSLATE TABLES 00001250 000010E8 FILE INFORMATION BLOCKS

000012F0 00001188 INITIAL XTAP

The contents of the PGT Memory Map include:

A

Indicates hexadecimal locations, relative to the start of the program for each

area.

B

Indicates locations relative to the start of the PGT.

C

Contains a description of each area.

Page 39: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Optimizer Reports

Chapter 2: Using Optimizer 39

Program Global Table (PGT)

The Program Global Table also contains the literals used within the program.

Produce this report by specifying any of these options at compile-time: LIST,

OFFSET, SELECT.

B C A 00000168 SYSLIT+0 05F5E100 3B9ACA00 000186A0 00002710 00000001 00000000 40404040 40404040 |.5÷.......fµ............ |

00000188 SYSLIT+32 40404040 40404040 40404040 40404040 40404040 40400000 00000000 00000000 | ..........|

000001A8 SYSLIT+64 00000000 000C0000 0000000C 0000000F F0F0F0F0 F0C04040 |................00000{ | 00000208 PGMLIT+0 FFFFFFFC 00001000 00000005 00000090 00000003 00004402 0000000A 00000019 |................................|

00000228 PGMLIT+32 00000457 00000054 00000057 00000008 0000003C 0000000F 00000004 00000002 |................................|

00000248 PGMLIT+64 00000001 00000000 0007000B 000C0010 00200012 00730488 00400D64 00960BB8 |.......................h. ...o..| 00000268 PGMLIT+96 FFF80006 00140037 000EE3C8 C9E240D7 D9D6C7D9 C1D440C9 E240D7D9 D6D7D9C9 |.8........THIS PROGRAM IS PROPRI|

00000288 PGMLIT+128 C5E3C1D9 E840D7D9 D6D7C5D9 E3E840D6 C640C3D6 D4D7E4E3 C5D940C1 E2E2D6C3 |ETARY PROPERTY OF COMPUTER ASSOC|

000002A8 PGMLIT+160 C9C1E3C5 E240C9D5 E3C5D9D5 C1E3C9D6 D5C1D36B 40C9D5C3 4BC3D6D7 E8D9C9C7 |IATES INTERNATIONAL, INC.COPYRIG| 000002C8 PGMLIT+192 C8E3404D C35D40F1 F9F8F66B 40F1F9F9 F340C2E8 40C3D6D4 D7E4E3C5 D940C1E2 |HT (C) 1986, 1993 BY COMPUTER AS|

000002E8 PGMLIT+224 E2D6C3C9 C1E3C5E2 40C9D5E3 C5D9D5C1 E3C9D6D5 C1D36B40 C9D5C34B 5C5C5C40 |SOCIATES INTERNATIONAL, INC.*** |

00000308 PGMLIT+256 C5D9D9D6 D9405C5C 5C40D3C5 D5C7E3C8 40D6C640 E5C1D9C9 C1C2D3C5 60D3C5D5 |ERROR *** LENGTH OF VARIABLE-LEN| 00000328 PGMLIT+288 C7E3C860 E3C1C2D3 C5407E40 40404040 40404040 40404040 40404040 4040C3C1 |GTH-TABLE = CA|

00000348 PGMLIT+320 D6F2C4C5 D4D640C5 E7C5C3E4 E3C9D6D5 40C2C5C7 C9D54040 40404040 40404040 |O2DEMO EXECUTION BEGIN |

00000368 PGMLIT+352 40404040 40404040 40C3C1D6 F2C4C5D4 D640C5E7 C5C3E4E3 C9D6D540 C5D5C4C4 | CAO2DEMO EXECUTION ENDD|

00000388 PGMLIT+384 C5D4D6D5 E2E3D9C1 E3C9D6D5 40D7D9D6 C7D9C1D4 60C5E7C5 C3E4E3C9 D6D540D9 |EMONSTRATION PROGRAM-EXECUTION R|

000003A8 PGMLIT+416 C5D7D6D9 E35C5C5C 40C5D9D9 D6D9405C 5C5C40E5 C5D9C9C6 E860C5D3 C5D4C5D5 |EPORT*** ERROR *** VERIFY-ELEMEN|

000003C8 PGMLIT+448 E340C1D3 D340C5E7 C5C3E4E3 C9D6D540 D9C5E2E4 D3E3E240 C3D6D9D9 C5C3E340 |T ALL EXECUTION RESULTS CORRECT |

000003E8 PGMLIT+480 D7C1D9D4 40E5C1D3 E4C5E240 E3C9D4C5 E2407E40 F5F54040 C9D5C9E3 C9C1D3C9 |PARM VALUES TIMES = 55 INITIALI|

00000408 PGMLIT+512 E9C560E2 D6D4C560 E3C1C2D3 C5E24040 404040C3 C160D6D7 E3C9D4C9 E9C5D961 |ZE-SOME-TABLES CA-OPTIMIZER/|

00000428 PGMLIT+544 C9C9C6D6 D9C3C9D5 C760E3C8 C560C1C2 C5D5C440 404040E2 E4C260D4 C1E7407E |IIFORCING-THE-ABEND SUB-MAX =| 00000448 PGMLIT+576 40F2F040 C4C1E3C1 60D5C1D4 C560D240 7E40F4C4 C1E3C160 D5C1D4C5 60D2407E | 20 DATA-NAME-K = 4DATA-NAME-K =|

00000468 PGMLIT+608 40F3C4C1 E3C160D5 C1D4C560 D2407E40 F2C4C1E3 C160D5C1 D4C560D2 407E40F1 | 3DATA-NAME-K = 2DATA-NAME-K = 1|

00000488 PGMLIT+640 C1C2C3C4 C5C6C7C8 C9D1D2D3 D4D5D6E5 C1D3E4C5 4040C9E2 40F94040 40E5C1D3 |ABCDEFGHIJKLMNOVALUE IS 9 VAL| 000004A8 PGMLIT+672 E4C54040 C9E240F7 404040E5 C1D3E4C5 4040C9E2 40F54040 40E5C1D3 E4C54040 |UE IS 7 VALUE IS 5 VALUE |

000004C8 PGMLIT+704 C9E240F1 40404040 E5C1D3E4 C54040D5 D6E340D6 C4C2C1C4 40E5C1D3 E4C56060 |IS 1 VALUE NOT ODBAD VALUE--|

000004E8 PGMLIT+736 E2D4D3C2 C1C440E5 C1D3E4C5 6060D3C7 C5E5C1D3 E4C54040 C9E240F3 404040D7 |SMLBAD VALUE--LGEVALUE IS 3 P| 00000508 PGMLIT+768 D9D6C3C5 E2E260D7 C1D9D4E2 C5C4E26B E2E4C2D9 D5C7C3D2 D3D6D6D7 60C3D6D4 |ROCESS-PARMSEDS,SUBRNGCKLOOP-COM|

00000528 PGMLIT+800 D7E4E3C5 E2C5C3E3 C9D6D560 C84040F2 E2C5C3E3 C9D6D560 C84040F1 D7C1D9C1 |PUTESECTION-H 2SECTION-H 1PARA|

00000548 PGMLIT+832 D4C5E3C5 D9D6D5C5 C5C4E26B C6C4C3C8 C5C3D240 D9C5E2E4 D3E360D3 60F540D9 |METERONEEDS,FDCHECK RESULT-L-5 R| 00000568 PGMLIT+864 C5E2E4D3 E360D360 F440D9C5 E2E4D3E3 60D360F3 40D9C5E2 E4D3E360 D360F240 |ESULT-L-4 RESULT-L-3 RESULT-L-2 |

00000588 PGMLIT+896 D9C5E2E4 D3E360D3 60F14040 4040D7C1 D9D4407E 40C5C4E2 6BE6E2C9 D5C9E3D7 |RESULT-L-1 PARM = EDS,WSINITP|

000005A8 PGMLIT+928 C360C3C8 C5C3D240 C3C1D6C4 E2D5C1D7 D5D6D5C5 40404040 E6E2C9D5 C9E34040 |C-CHECK CAODSNAPNONE WSINIT | 000005C8 PGMLIT+960 C6C4C3C8 C5C3D240 C3C1D6F2 D7C3C8D2 E2E8E2D6 E4E34040 C9C7E9E2 D9E3C3C4 |FDCHECK CAO2PCHKSYSOUT IGZSRTCD|

000005E8 PGMLIT+992 40D3C9E2 E360F340 D3C9E2E3 60F2C5C9 C7C8E340 E2C5E5C5 D540E2C9 E7404040 | LIST-3 LIST-2EIGHT SEVEN SIX |

00000608 PGMLIT+1024 C6C9E5C5 4040C6D6 E4D94040 E3E6D640 4040E3C8 D9C5C540 E6D9D6D5 C7D5D6E3 |FIVE FOUR TWO THREE WRONGNOT|

A

Provides a listing of the entire Literal Pool. It contains the various literals

(System, Program, Optimizer, and Character) used within the program.

B

Indicates the hexadecimal program location.

C

Provides the decimal location relative to the start of the program literal pool.

Page 40: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Optimizer Reports

40 User Guide

Task Global Table Memory Map (TGT)

The TGT contains program information needed by the COBOL program. It

provides both fixed and variable TGT Memory Maps.

CA CAO2DEMO Page 54

CA Optimizer/II r8.5 1005AOX00 PP 5688-197 IBM COBOL for MVS & VM 1.2.2 02 Mar,2004 15.0r77

C D A E C D B E

PGMLOC TGTLOC TGT ** FIXED ** MEMORY MAP PGMLOC TGTLOC TGT ** VARIABLE ** MEMORY MAP

00000000 RESERVED - 72 BYTES 00000120 BACKSTORE FOR SYMBOLIC REGISTERS

00000048 TGT IDENTIFIER 00000120 BACKSTORE FOR OPTIMIZER REGISTERS

0000004C RESERVED - 4 BYTES 00000120 TGT OVERFLOW CELLS

00000050 LEVEL NUMBER 00000120 BASE LOCATORS FOR SPECIAL REGISTERS

00000051 RESERVED 3X 00000128 BASE LOCATORS FOR WORKING-STORAGE

00000054 SWITCH 00000144 BASE LOCATORS FOR LINKAGE-SECTION 00000058 ADDRESS OF RUNCOM AL4 00000150 BASE LOCATORS FOR FILE SECTION

0000005C ADDRESS OF COBVEC 00000154 BASE LOCATORS FOR VARIABLY LOCATED DATA

00000060 POINTER TO PROGRAM DYNAMIC BLOCK TABLE 00000154 BASE LOCATORS FOR EXTERNAL DATA 00000064 NUMBER OF FCB CELLS 00000158 BASE LOCATORS FOR ALPHANUMERIC TEMPS

00000068 WORKING STORAGE LENGTH 00000158 CLLE ADDRESS CELLS FOR CALL

0000006C RESERVED - 4 BYTES 00000160 USE FOR DEBUGGING AREA 00000070 ADDRESS OF IGZESMG WORK 00000160 FDUMP-TEST INFORMATION AREA

00000074 ANCHOR FOR GETMAIN 00000160 VARIABLE NAME (VN) CELLS FOR PERFORM

00000078 RESERVED - 2 BYTES 00000160 PERFORM SAVE CELLS 0000007A RESERVED - 2 BYTES 00000160 VARIABLE NAME (VN) CELLS FOR ALTER

0000007C RESERVED - 2 BYTES 00000168 INDEX CELLS

0000007E MERGE FILE NUMBER 00000180 PERFORM SAVE CELLS 00000080 ADDRESS OF CEL COMMON ANCHOR AREA 00000180 PERFORM COUNTER CELLS

00000084 LENGTH OF TGT 00000180 VARIABLE LENGTH CELLS

00000088 RESERVED 1X 00000180 ODOSAVE CELLS 00000089 PROGRAM MASK FOR THIS PROGRAM 00000180 FCB ADDRESS CELLS

0000008A RESERVED 2X 00000184 LOCAL FCB CELLS FOR EXTERNAL FILES

0000008C NUMBER OF SECONDARY FCB CELLS 00000184 ALL PARAMETER BLOCK 00000090 LENGTH OF THE ALTER VN(VNI) VECTOR 00000184 INTERNAL PROGRAM CONTROL BLOCKS

00000094 COUNT OF NESTED PROGRAMS IN COMPILE UNI 000001E8 EVALUATE BOOLEAN VALUES

00000098 EBCDIC DDNAME FOR DISPLAY 000001E8 EVALUATE WHEN VALUES

000000A0 RESERVED - 8 BYTES 000001E8 TEMP STORAGE 1

000000A8 ADDRESS OF COM-REG SPECIAL REGISTER 000001E8 TEMP STORAGE 2

000000AC CALC ROUTINE SAVE AREA 000001E8 TEMP STORAGE 3

000000E0 ALTERNATE COLLATING SEQUENCE POINTER 000001E8 TEMP STORAGE 4

000000E4 ADDRESS OF SORT GN BLOCK 000001E8 TEMP STORAGE FOR OPT

000000E8 ADDRESS OF PGT 000001E8 TGT COMMON TRANSLATE TABLE

000000EC CURRENT INTERNAL PROGRAM NUMBER 000001E8 SUBROUTINE (NESTED PROGRAM) RETURN ADDR

000000F0 POINTER TO 1ST IPCB 000001F8 SUBSCRIPT LIMIT CELLS

000000F4 ADDRESS OF THE CLLE FOR THIS PROGRAM 00000330 OPTIMIZER XTAP 000000F8 ADDRESS OF ABEND INFORMATION TABLE 00000330 Q-ROUTINE TEMP STORAGE

000000FC ADDRESS OF TEST INFO FIELDS IN TGT 00000340 RESOURCE ALLOCATOR SAVE AREA

00000100 ADDRESS OF START OF PROGRAM 0000034C MVC SUBROUTINE AREA 00000104 ADDRESS OF 1ST ALTER VNI CELL IN CGT

00000108 ADDRESS OF 1ST ALTER VN CELL IN TGT

0000010C ADDRESS OF 1ST PBL CELL 00000110 ADDRESS OF 1ST FCB CELL

00000114 WORKING STORAGE ADDRESS

00000118 POINTER TO FIRST SECONDARY FCB CELL 0000011C POINTER TO STATIC CLASS INFO BLOCK

Page 41: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Optimizer Reports

Chapter 2: Using Optimizer 41

A

Contains the TGT Fixed Memory Map.

B

The TGT Variable Memory Map contains fields that are not always present

within a program. However, its entry in the TGT Memory Map is maintained

by Optimizer.

C

The first column of each map indicates the hexadecimal program location. If

the RENT option is in effect, this column is blank.

D

The second column of each map provides the hexadecimal location relative

to the start of the TGT.

E

Contains a description of the field.

Dynamic Save Area Memory Map (DSA)

The DSA contains information needed by IBM COBOL for MVS and VM, IBM

COBOL for OS/390 and VM, or Enterprise COBOL for z/OS and OS/390. It

provides both fixed and variable DSA Memory Maps.

CA CAO2DEMO Page 55

CA Optimizer/II r8.5 1005AOX00 PP 5688-197 IBM COBOL for MVS & VM 1.2.2 02 Mar,2004 15.0r77

C A D C B D DSALOC DSA ** FIXED ** MEMORY MAP DSALOC DSA ** VARIABLE ** MEMORY MAP

00000000 REGISTER SAVE AREA 00000084 BACKSTORE CELLS FOR SYMBOLIC REGISTERS

0000004C STACK NAB (NEXT AVAILABLE BYTE) 00000124 DSA OVERFLOW AREA ADCONS 00000058 ADDRESS OF INLINE-CODE PRIMARY DSA 00000124 BASE LOCATORS FOR OBJECT INSTANCE DATA

0000005C ADDRESS OF TGT 00000124 BASE LOCATORS FOR LOCAL-STORAGE SECTION

00000080 PROCEDURE DIVISION RETURNING VALUE 00000124 BASE LOCATORS FOR LINKAGE SECTION 00000124 BASE LOCATORS FOR SPECIAL REGISTERS

00000124 BASE LOCATORS FOR VARIABLY LOCATED DATA

00000124 VARIABLE LENGTH CELLS

0000012C ODOSAVE CELLS

00000130 VARIABLE NAME (VN) CELLS FOR PERFORM

00000144 INDEX CELLS FOR LOCAL-STORAGE SECTION

00000144 PERFORM SAVE CELLS

000001FC PERFORM COUNTER CELLS

00000208 EVALUATE BOOLEAN VALUES

00000208 EVALUATE WHEN VALUES

00000208 TEMPORARY STORAGE-1

00000320 TEMPORARY STORAGE-2 00000320 TEMPORARY STORAGE-3

00000328 TEMPORARY STORAGE-4

00000328 OPTIMIZER XTAP 0000046C SPECIAL REGISTER AREA

0000046C LOCAL-STORAGE SECTION

Page 42: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Optimizer Reports

42 User Guide

A

Contains the DSA Fixed Memory Map.

B

The DSA Variable Memory Map contains fields that are not always present

within a program. However, its entry in the DSA Memory Map is maintained

by Optimizer.

C

The first column of each map provides the hexadecimal location relative to

the start of the DSA.

D

Contains a description of the field.

PERFORM Range Table and ALTERed GO TO Table

Two tables which identify the PERFORM ranges and ALTERed GO TOs print on a

separate page preceding the COBOL Diagnostic Messages and Compiler

Statistics Report. If there are any PERFORM ranges or ALTERed GO TOs in the

program, the PERFORM range and ALTERed GO TO reports are automatically

generated at the end of the source listing.

Page 43: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Optimizer Reports

Chapter 2: Using Optimizer 43

The PERFORM Range report is extremely useful in assessing the quality of the

PERFORM ranges in the program. A glance at the summary line will tell you if any

of the PERFORM ranges do not conform to structured programming practices.

The information related to the location of each PERFORM range in the source and

object code, and the return cell associated with the PERFORM range is very

useful for debugging. A description of how the PERFORM Range Table is used

during debugging can be found in PERFORM Return Address Analysis.

CA CAO2DEMO Page 58

CA Optimizer/II r8.5 1005AOX00 PP 5688-197 IBM COBOL for MVS & VM 1.2.2 02 Mar,2004 15.0r77

Perform Range Table

Legend:A

Overlap - This perform range overlaps a preceding one. Fall Thru - This perform range exit may fall through to the next statement in

the program.

Branch Out - There is a branch in the perform range that branches out of the perform range to the address shown.

Recursive - There is a path from this perform range entrance, before reaching

the perform range exit, which leads to a PERFORM verb of the same perform range. The entry and exit addresses of the perform ranges

containing the recursive PERFORM verbs are shown.

No Exit - This perform range contains no path from the perform range

entrance to the perform range exit.

Null - This perform range contains no executable statements.

B C D E F G H I J

Source Address Return Over Fall Branch Recursive No Null

Entry - Exit Entry - Exit Cell -lap Thru Out To Call From Exit

Program-Id: CAO2DEMOK

001042-001044 003CB4-003D04 PSV=30

001046-001054 003D14-003D60 PVN=4 Yes

001052-001054 003D4C-003D60 PVN=4 Yes Yes 001049-001057 003D32-003DA0 PSV=29 Yes Yes

001059-001061 003DBC-003E0A PVN=3 Yes 003F14

001063-001065 003E24-003E7A PVN=2 Yes 003E94- 003EE0

001067-001069 003E94-003EE0 PVN=1 Yes 003E24-

003E7A 001071-001071 003EFA-003EFA YES

001074-001075 003F14-003F3C R15 Yes

001080-001082 003F68-003F92 YES 001034-001086 003C1E-003FA6 PVN=5 Yes Yes

Program-Id: LOOP-COMPUTE

001403-001419 004FBE-00528C PSV=8

Summary of Perform Ranges:L Yes YES YES YES YES YES

Altered VN Table

Statement Address Cell

Program-Id: CAO2DEMO

000527 000018A2 AVN 1

000559 00001A0E AVN 2

M N O

Page 44: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Optimizer Reports

44 User Guide

A

Legend for items E through J described below.

B

The source line numbers of the entrance and exit points for each PERFORM

range in the program. The table is sorted by the line number of the exit.

C

The hexadecimal addresses for each PERFORM range entrance and exit

point.

D

Includes a return cell for each range to provide, when possible, the address

of the location to which control returns following the PERFORM.

To determine the actual status of PERFORM exits, look at the contents of

their return cells in the TGT. With Detector, you will find actual PERFORM exit

settings very quickly. You will find information on the significance and use of

the VNs, PSVs, and R15 in PERFORM Return Address Analysis.

E

This column is used to inform you that a PERFORM range shares some code

with another range. The shared code may include the same entry or exit, be

a PERFORM range within a PERFORM range, or be overlapping.

If you specify MOFFSET, the message ***EXIT FROM PERFORMED

PARAGRAPH(S) prints on your program source listing to identify the exits for

each of the PERFORM ranges in this report.

In column E, Yes or blanks appear beside the PERFORM range.

F

The PERFORM EXIT FALL-THROUGH column indicates whether falling

through each PERFORM exit point is possible.

In analyzing each PERFORM range, Optimizer determines whether it is

logically possible to fall through the exit. In a structured PERFORM Range, it

should not be possible to fall through the exit point. However, if any of the

statements within a PERFORM range can be reached by a "fall-in" to the

entrance or a GO TO to any point within the range, it is possible for control to

fall through the PERFORM exit point.

Page 45: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Optimizer Reports

Chapter 2: Using Optimizer 45

While COBOL permits such FALL-THROUGHs, the program may be coded so

that it happens unintentionally; it is a hidden logic error and the cause may

be in another part of the program. The exit analysis in the PERFORM Range

Table helps you find and fix potential logic errors.

Note: There are a few rare conditions where an exit may be flagged as a

possible fall-through when it is not possible. For example, there may be an IF

statement, not in a PERFORM range, that immediately precedes a PERFORM

range entrance. If the true condition of the IF results in a GO TO while the

false condition results in NEXT SENTENCE there is a logical path falling into

the PERFORM range. In actual execution, however, the data may be such

that the false condition of the IF can never be taken.

In column F, Yes or blanks appear beside the PERFORM Range. Blanks

indicate that a fall-through is not possible.

G

The BRANCH OUT TO column identifies PERFORM ranges that have one or

more branches which branch out of the PERFORM range. In a structured

PERFORM range, all branching should be to locations contained within the

PERFORM range and the only branching out of the range should be at the

exit. For each "branch out" branch in each PERFORM range, the branch

destination is displayed as a hexadecimal address relative to the start of the

program. The faulty branch can be found by locating the paragraph whose

MOFFSET matches the hexadecimal address, and identifying the branch in

the PERFORM range that branches to that paragraph.

H

The RECURSIVE CALL FROM column identifies PERFORM ranges that are

called again while the PERFORM range is already active. For example,

PERFORM Range A calls B, which calls C, which calls A. While this can be done

in COBOL, if one is careful, it is generally not considered good programming

practice. For each recursive PERFORM range, each PERFORM range

containing a recursive call to this PERFORM range is listed by its entry and

exit addresses.

I

The NO EXIT column identifies PERFORM ranges where there is no path from

the entrance to the exit. Such PERFORM ranges are not well structured and

should be examined. A usual cause of this is a PERFORM range containing an

unconditional GOBACK. In column I, Yes or blanks appear beside the

PERFORM range.

Page 46: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Optimizer Reports

46 User Guide

J

The NULL column identifies PERFORM ranges which contain no code. This

may or may not indicate a problem. If the program is being implemented in

a top-down fashion, the code may be executable but not complete. In this

case, the null PERFORM range may be a stub not yet coded. On the other

hand, if the coding is complete, this represents either a forgotten stub that

needs to be coded or dead code which should be removed at the source level.

K

Program-ID identifies the main or nested program name in which the

PERFORM ranges are located.

L

Summary of PERFORM ranges. If this line says NO under each column, all

PERFORM ranges are well-structured.

The location of each ALTERed GO TO in the program is given by its:

M

Source line number.

N

Hexadecimal address.

O

The variable name (AVN) cell number also prints to help you find where the

ALTERed GO TO is currently pointing. This information is used in conjunction

with the Detector Report. See the discussion in PERFORM Return Address

Analysis.

Page 47: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Optimizer Reports

Chapter 2: Using Optimizer 47

Special Usage Note for CICS Programs

Optimizer identifies all flow-of-control paths in the program. For CICS programs,

this includes identifying implied branches from a CICS CALL to the GO TO

DEPENDING ON clause of a HANDLE command. Because of these implied

branches, there may be a number of recursive PERFORM ranges in the program

that Optimizer identifies. Optimizer defines a recursive PERFORM range in this

way:

1. A PERFORM statement transfers control to a specific range of paragraphs.

Call these paragraphs BLOCK A.

2. While performing BLOCK A, and before reaching BLOCK A's exit, a PERFORM

statement which transfers control to that same range of paragraphs (BLOCK

A) is executed.

This ensures that the entire PERFORM Range, BLOCK A, is recursive.

The following three examples show some types of recursion. Only the first two

examples are how Optimizer defines recursion.

Defined Recursion Examples

Example 1 Example 2

PN-BLOCK.

PERFORM SECTION-A. PERFORM SECTION-A.

. .

. .

. ─┐ ┌─ .

SECTION-A SECTION. │ │ SECTION-A SECTION.

. │ │ .

. │ │ ..... GO TO A1

. │entire │ .

A1. │ │ A1.

. │perform │ .

. │ │ ..... GO TO A2

. │range │ .

A2. │ │ A2.

. │ │ .

PERFORM SECTION-A. │ │ GO TO PN-BLOCK.

. ──┘ └── .

SECTION-B SECTION. SECTION-B SECTION.

. .

. .

. .

Page 48: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Optimizer Reports

48 User Guide

Nonrecursion Example

Example 3

PERFORM SECTION-A.

.

.

. ─┐

SECTION-A SECTION. │

. │

. │

. │ entire

A1. │

. │ perform

. │

. │ range

A2. │

. │

PERFORM A1. │

. ─┘

SECTION-B SECTION.

.

.

This last example, while demonstrating simple recursion, does not conform to

the Optimizer recursion definition. It does not perform the entire block of the

PERFORM range. Optimizer identifies it as an overlapping PERFORM range.

A special option is available from your CA customer support center for CICS

programs which exhibit recursive and/or fall-through PERFORM ranges and

which also do not have a path leading from the GO TO DEPENDING ON clause of

a HANDLE command to the entrance of an active PERFORM range. This special

APAR tells Optimizer to ignore the implied branches from the CICS calls in the

program to the GO TO DEPENDING ON statements of HANDLE commands.

WARNING! Use this special facility with extreme care. Unpredictable execution

results could occur if this special facility is used and there is a recursive path to

the PERFORM call by way of a HANDLE command.

Page 49: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Optimizer Reports

Chapter 2: Using Optimizer 49

COBOL Diagnostic Messages and Compiler Statistics Report

This report, specified at compile-time, provides direct compiler output. It

contains diagnostic messages regarding errors and warnings from the

compilation. The messages are not altered by Optimizer. However, they are

folded onto 80 columns for terminal viewing.

CA CAO2DEMO Page 57

CA Optimizer/II r8.5 1005AOX00 PP 5688-197 IBM COBOL for MVS & VM 1.2.2 02 Mar,2004 15.0r77

LineID Message code Message text

125 IGYGR1216-I A "RECORDING MODE" of "F" was assumed for file "REPORT-OUT".

1404 IGYPG3113-W Truncation of high-order digit positions may occur due to

precision of intermediate results exceeding 30

digits.

Messages Total Informational Warning Error Severe Terminating

Printed: 3 2 1 * Statistics for COBOL program CAO2DEMO:

* Source records = 1488

* Data Division statements = 307 * Procedure Division statements = 544

End of compilation 1, program CAO2DEMO, highest severity 4.

Return code 4

Page 50: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Optimizer Reports

50 User Guide

Statistics Report

The final page of the Optimizer Enhanced Source Listing is the Statistics Report.

The following is a sample report showing the information provided and the

format:

CA CAO2DEMO Page 60 CA Optimizer/II r8.5 1005AOX00 PP 5688-197 IBM COBOL for MVS & VM 1.2.2 02 Mar,2004 15.0r77

$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$

$ $ $ Optimizer/II - Optimization Results $

$ $

$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ $ A B C $

$ Program Procedure Instructions $

$ $ $ Original 18940 14036 3087 $

$ Optimized 24068 16486 3793 $

$ Difference 5128- 2450- 706- $ $ Percent 27- 17- 23- $

$ $

$ $

$ Approximate amounts $

$ involved for - $

$ $

$ DETECTOR features D $

$ Bytes-Insts 2576 2576 659 $

$ Percent 14 18 21 $ $ $

$ ANALYZER features D $

$ Bytes-Insts 4370 4370 898 $ $ Percent 23 31 29 $

$ $

$ $ $ Expected optimization $

$ results without $

$ DETECTOR and/or ANALYZER E $ $ features $

$ Bytes-Insts 17122 9432 2212 $

$ Percent 10 33 28 $ $ $

$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$

FCAPP780I 3072 bytes should be reserved during execution for count tables.

Page 51: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Optimizer Reports

Chapter 2: Using Optimizer 51

A

This column gives the total size of the program in bytes. The figures here do

not include load module subroutines or dynamically allocated space.

B

The procedure size is measured from the beginning of the Q-routines, the

beginning of the Declaratives, or START (whichever occurs first) to the

starting address of the TGT (or the DAB if a RENT program).

C

The instruction count includes all instructions in the Procedure Division.

Note: These totals and percentages compare the optimized program against

the same program compiled with NOOPT. Remember that many of the

CA Optimizer/II optimization algorithms trade space for speed, so these

results are not necessarily a good predictor of CPU execution-time

performance.

D

If any Detector or Analyzer feature was specified for the compile/optimize

step, that feature's impact on the optimization results is described here.

E

This set of totals and percentages is an estimation of the expected

optimization results that might be obtained if you had not specified any

Detector and/or Analyzer options.

F

Represents the number of bytes by which you must increase your region at

execution-time so that Analyzer can store the count data it accumulates.

This figure is different for each program. You should be concerned with the

figure only if you intend to compute the exact storage requirements as

outlined in the Installation Guide.

Page 52: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Optimizer Reports

52 User Guide

SYM Report

When the SYM option is selected at compile time, the optimized listing is passed

directly to the COBOL listing postprocessor program IN25COB2 at the end of the

code generation phase of optimization. The postprocessor uses the information

in the optimized listing to update the PROTSYM file with symbolic information for

your program.

Output messages from IN25COB2 are written at the end of the optimized listing,

starting on a new page following the optimization results report.

CA CAO2DEMO Page 61 CA Optimizer/II r7 1005AOX00 PP 5688-197 IBM COBOL for MVS & VM 1.2.2 02 Mar,2004 15.0r77

CAPP781I Symbolic post-processor output for program CAO2DEMO follows:

CAO2DEMO POST-PROCESSING ENDED, IN25COB2 RETURNED 00000000

IN25COB2 6.2 - 02/18/2004 10.25

SYM036 PASSED PARAMETER STATEMENTS

CAO2DEMO,LISTER=ALL,CUTPRINT=ALL

SYM010 PROCESSING HAS BEGUN FOR PROGRAM - CAO2DEMO

SYM006 LISTER=ALL REQUESTED

SYM007 CUTPRINT=ALL REQUESTED

NESTED PROGRAMS ID WS LS PD EP

------------------------------ ------ ------ ------ ------ ------

CAO2DEMO 000007 001132 000472 000477 001488

INITIALIZE-SOME-TABLES 001234 001244 000000 001273 001342

FORCING-THE-ABEND 001350 000000 000000 001361 001378

LOOP-COMPUTE 001385 000000 000000 001396 001421

PROCESS-PARMS 001429 000000 001439 001444 001487

SYM024 INPUT FILE PROCESSED

SYM020 SYMBOLIC FILE UPDATED SUCCESSFULLY

SYM021 71 SOURCE STATEMENTS SAVED

SYM022 90 TOTAL RECORDS INSERTED INTO SYMBOLIC FILE

SYM023 POST-PROCESSOR TERMINATED

Compiler Source Listing

The standard compiler source listing prints if you have not specified the Merged

Data Map (MMAP), the Merged OFFSET (MOFFSET), and the Merged

Cross-Reference (MXREF).

Page 53: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Optimizer Reports

Chapter 2: Using Optimizer 53

Merged Data Map (MMAP)

Because the Merged Data Map (MMAP) and MAP options are mutually exclusive,

you can only specify MAP if you have not specified MMAP. When you specify MAP,

the standard COBOL compiler data map prints.

Compiler Data Map (MAP)

CA CAO2DEMO Page 49

CA Optimizer/II r8.5 1005AOX00 PP 5688-197 IBM COBOL for MVS & VM 1.2.2 02 Mar,2004 15.0r77 Data Division Map

Data Definition Attribute codes (rightmost column) have the following meanings:

D = Object of OCCURS DEPENDING G = GLOBAL S = Spanned file E = EXTERNAL O = Has OCCURS clause U = Undefined format file

F = Fixed-length file OG= Group has own length definition V = Variable-length file

FB= Fixed-length blocked file R = REDEFINES VB= Variable-length blocked file Source Hierarchy and Base A Hex-Displacement Asmblr Data Data Def

LineID Data Name Locator Blk Structure Definition Data Type Attributes

7 PROGRAM-ID CAO2DEMO--------------------------------------------------------------------------------------------------*

125 FD REPORT-OUT. . . . . . . . . . . . . . . . . . QSAM FB

129 1 LINE-OUT. . . . . . . . . . . . . . . . . . . BLF=0000 000000 DS 0CL120 Group

130 2 FILLER. . . . . . . . . . . . . . . . . . . BLF=0000 000000 0 000 000 DS 120C Display

131 1 LINE-OUT1 . . . . . . . . . . . . . . . . . . BLF=0000 000000 DS 120C Display

136 77 FILLER. . . . . . . . . . . . . . . . . . . . BLW=0000 000000 DS 80C Display

139 77 FILLER. . . . . . . . . . . . . . . . . . . . BLW=0000 000050 DS 80C Display 142 77 ERROR-FLAG. . . . . . . . . . . . . . . . . . BLW=0000 0000A0 DS 1C Display

143 77 DATA-PICX10 . . . . . . . . . . . . . . . . . BLW=0000 0000A8 DS 10C Display

144 77 ROW-3D. . . . . . . . . . . . . . . . . . . . BLW=0000 0000B8 DS 2C Binary 145 77 COLUMN-3D . . . . . . . . . . . . . . . . . . BLW=0000 0000C0 DS 2C Binary

146 77 RANGE-3D. . . . . . . . . . . . . . . . . . . BLW=0000 0000C8 DS 2C Binary

148 1 PARAMETER-ONE . . . . . . . . . . . . . . . . BLW=0000 0000D0 DS 0CL12 Group 149 2 FILLER. . . . . . . . . . . . . . . . . . . BLW=0000 0000D0 0 000 000 DS 12C Display

151 1 PARMCHK-DATA. . . . . . . . . . . . . . . . . BLX=0000 000000 DS 0CL12 Group E

152 2 FILLER. . . . . . . . . . . . . . . . . . . BLX=0000 000000 0 000 000 DS 12C Display E 154 1 PARM-PASSED-BY-JCL. . . . . . . . . . . . . . BLW=0000 0000E0 DS 0CL19 Group G

155 2 PARM-MSG. . . . . . . . . . . . . . . . . . BLW=0000 0000E0 0 000 000 DS 8C Display G

156 2 PARM-FLAG . . . . . . . . . . . . . . . . . BLW=0000 0000E8 0 000 008 DS 8C Display G 157 2 PARM-MODE . . . . . . . . . . . . . . . . . BLW=0000 0000F0 0 000 010 DS 3C Display G

The Data Map appears as generated by the compiler with the following

exceptions:

■ If NODCRDISP is specified, the Dec-disp field is replaced by a field titled

Hex-Displacement.

■ Base Locators may cover more than 4 KB, because any base locators that are

not referenced are removed from your COBOL program.

Page 54: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Optimizer Reports

54 User Guide

Condensed Listing of the Optimized Object Code (OFFSET)

The Optimizer OFFSET that you specify at compile-time, is similar to the OFFSET

produced by the compiler. This is an example of an OFFSET specified at

compile-time:

CA CAO2DEMO Page 55 CA Optimizer/II r8.5 1005AOX00 PP 5688-197 IBM COBOL for MVS & VM 1.2.2 02 Mar,2004 15.0r77

A B C A B C A B C

STMTNO OFFSET VERB STMTNO OFFSET VERB STMTNO OFFSET VERB 000485 001618 PERFORM 000486 00161C PERFORM 000489 001624 IF

000489 00162C GO 000490 001630 SUBTRACT 000492 001642 PERFORM

000493 001646 PERFORM 000494 00164A PERFORM 000495 00164E PERFORM 000496 001652 PERFORM 000497 001656 PERFORM 000498 00165A PERFORM

000499 00165E PERFORM 000500 001662 PERFORM 000501 001666 PERFORM

000502 00166A PERFORM 000503 00166E PERFORM 000504 001672 PERFORM 000505 001676 PERFORM 000506 00167A PERFORM 000507 00167E PERFORM

000510 001682 GO 000513 00168E PERFORM 000514 00169E IF

000515 0016A8 MOVE 000516 0016AE CALL 000517 0016E6 PERFORM 000518 001702 PERFORM 000519 00170A DISPLAY 000520 001714 GOBACK

000527 001720 GO 000530 00172E OPEN 000531 00173E MOVE

000531 00174A PERFORM 000532 001752 CALL 000533 001774 CALL

000534 001780 CALL 000535 00178C CALL 000538 001798 ALTER

000541 0017A0 MOVE 000541 0017A6 PERFORM 000542 0017AA STRING

000548 0017BA MOVE 000549 0017C2 MOVE 000550 0017CA MOVE

000550 0017D0 PERFORM 000551 0017D4 MOVE 000552 0017DC MOVE

000559 0017F0 GO 000562 0017FA DISPLAY 000565 001804 ALTER

000568 00181C IF 000568 001824 GO 000569 001828 COMPUTE 000570 001838 ADD 000571 001848 MOVE 000572 00184C MOVE

000573 001850 MOVE 000574 001854 MOVE 000575 001858 MOVE

000576 001864 ADD 000576 001878 GO 000579 00187C MOVE 000582 001886 IF 000582 00188E GO 000583 001892 MOVE

000584 0018A2 ADD 000584 0018B6 GO 000587 0018BA MOVE

000590 0018D4 MOVE 000591 0018DA MOVE 000592 0018E0 INITIALIZE 000593 001900 INITIALIZE 000594 00195C INITIALIZE 000595 001962 INITIALIZE

000600 001A26 COMPUTE 000602 001A4E DIVIDE 000603 001A5C DIVIDE

000604 001A82 DIVIDE 000606 001AA2 SUBTRACT 000608 001AB8 MOVE

A

COBOL line number

B

Beginning location in the object module of the code of this verb

C

COBOL verb

Note: The merged OFFSET option, MOFFSET, is mutually exclusive of OFFSET

and always takes precedence over OFFSET. The OFFSET option suppresses the

LIST option. However, MOFFSET and LIST can both be specified.

Page 55: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Optimizer Reports

Chapter 2: Using Optimizer 55

Optimizer Procedure Map Object Listing (LIST)

The Optimizer LIST contains the same information as the compiler procedure

map, but it has additional refinements.

The object program is broken down into blocks of contiguous code. The

requirement that governs the formation of these blocks is that any branch that

goes to a point outside its own block must go to the beginning of the outside

block. The only way to get into a block from a location outside it is by branching

to its beginning.

The general registers used as base registers are assigned values, if necessary, at

the beginning of a block.

The most significant refinement is that the entire source statement, not just the

verb name, prints before the resulting object code. The procedure map and its

enhancements are described on the following page.

You produce the LIST by specifying the LIST option at compile-time.

CA CAO2DEMO Page 105

CA Optimizer/II r8.5 1005AOX00 PP 5688-197 IBM COBOL for MVS & VM 1.2.2 02 Mar,2004 15.0r77

* REF 72 A BLOCK NUMBER 74 TO HERE FROM 24

FROM HERE TO 75 75

B BASE REGISTERS 7=BLW3 11=BLW6 2=COBV 4=CBL1 5=PBL1 3=PBL3 8=PBL4 10=PBL5 000842

000843 ******************************************************************

000845 C SECTION-M SECTION. 002E8A PN=59 EQU *

002E8A GN=155 EQU *

002E8A 50 00 D 1D8 ST 0,1D8(0,13) PSV=38 002E8E GN=156 EQU *

002E8E 58 20 9 05C L 2,05C(0,9) COBVEC

002E92 58 40 C 05C L 4,05C(0,12) CBL=1

002E96 58 E0 D 36C L 14,36C(0,13) XTAP+68

002E9A 05 0E BALR 0,14 PFLOW

000846

000847 IF LARGE-NAME = 'ABCD' DISPLAY 'ABCD'.

D002E9C 58 10 D 358 L 1,358(0,13) XTAP+48

002EA0 05 E1 BALR 14,1 XCOUNT=225

002EA2 00000380 DC X'00000380'

002EA6 D5 0E 7 620 4 138 CLC 620(15,7),138(4) LARGE-NAME OLIT1+64

002EAC 47 70 3 626 BC 7,626(0,3) GN=157(002ECA) 000847 DISPLAY

002EB0 58 10 D 358 L 1,358(0,13) XTAP+48

002EB4 05 E1 BALR 14,1 XCOUNT=226 002EB6 00000384 DC X'00000384'

002EBA 05 F0 BALR 15,0

002EBC 50 F0 D 334 ST 15,334(0,13) XTAP+12 002EC0 58 F0 2 02C L 15,02C(0,2) V(IGZCDSP )

A

Block Cross-Reference Information

The block cross-reference information facilitates debugging and provides

additional documentation.

Page 56: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Optimizer Reports

56 User Guide

In this example, block number 74 has only one entrance point (block 24),

and two exit possibilities (both to block 75).

B

Base Register Assignments

Optimizer displays all the general registers that have assignments that must

be maintained throughout a block at the beginning of that block along with

their base locators.

In some cases, a base register assignment that appears at the beginning of

a block is not used at all in that block. The reason for this is that when

Optimizer analyzes the global logic of a COBOL program to develop the block

structure described above, it is able to set up base register assignments at

the beginning of a block with foresight regarding how they shall be used in

blocks further down the line.

Base registers are loaded at the beginning of the block only if these registers

do not already contain the needed values.

This information is important if you are planning to patch a program and are

looking for a register to use. You must not use any registers that are listed

at the beginning of the block you are working in even if they are not used

within that block. Optimizer requires that they remain as they have been

assigned.

A shorthand notation designates the base locators. PBL refers to the

Procedure Base Locator for a procedure segment. CBL refers to the Constant

Base Locator for constant literals (system literal, program literals, etc.). OFL

refers to the overflow cells needed to address the portion of the TGT which

goes beyond the first 4 KB bytes. BLF, BLL, BLV, and BLW refer to Base

Locators for the File Section, Linkage Section, variably located data names,

and Working-Storage section, respectively.

C

Source Code

Each source listing statement prints before the object code for that

statement.

D

Object Code

The optimized object format is similar to the compiler-generated object code

listing.

Note: For convenience in locating referenced symbols, PNs and GNs are

always defined in ascending order on the listing. Also, LIST suppresses

SELECT.

Page 57: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Optimizer Reports

Chapter 2: Using Optimizer 57

Optimizer Selected Procedure Map (SELECT)

Optimizer allows you to specify certain groups of statements for which you want

a procedure map. This is very useful when you want a procedure map for only

certain sections of a program.

Below is an example of a partial procedure map selected for statements 867

through 877.

CA CAO2DEMO Page 59

CA Optimizer/II r8.5 1005AOX00 PP 5688-197 IBM COBOL for MVS & VM 1.2.2 02 Mar,2004 15.0r77

SELECTED LISTING

BLOCK NUMBER 78 TO HERE FROM 26 FROM HERE TO 79

BASE REGISTERS 7=BLW3 10=COBV 11=CBL1 3=PBL3 8=PBL4

000867 000868 ******************************************************************

000870 SECTION-O SECTION.

00318C PN=61 EQU * 00318C GN=171 EQU *

00318C 50 00 D 1D0 ST 0,1D0(0,13) PSV=36

003190 GN=172 EQU * 003190 58 A0 9 05C L 10,05C(0,9) COBVEC

003194 58 B0 C 05C L 11,05C(0,12) CBL=1

003198 58 E0 D 36C L 14,36C(0,13) XTAP+68 00319C 05 0E BALR 0,14 PFLOW

000871

000872 MOVE 1 TO SUB. 00319E 58 10 D 358 L 1,358(0,13) XTAP+48

0031A2 05 E1 BALR 14,1 XCOUNT=241

0031A4 000003C0 DC X'000003C0' 0031A8 41 20 0 001 LA 2,001(0,0)

0031AC 40 20 7 6C8 STH 2,6C8(0,7) SUB

0031B0 58 10 D 358 L 1,358(0,13) XTAP+48

0031B4 05 E1 BALR 14,1 XCOUNT=242

0031B6 000003C4 DC X'000003C4'

000873

000874 PARAGRAPH-6000.

0031BA PN=62 EQU *

0031BA 58 E0 D 36C L 14,36C(0,13) XTAP+68

0031BE 05 0E BALR 0,14 PFLOW

000875 IF SUB GREATER THAN 5 GO TO PARAGRAPH-6100.

0031C0 58 10 D 358 L 1,358(0,13) XTAP+48 0031C4 05 E1 BALR 14,1 XCOUNT=243

0031C6 000003C8 DC X'000003C8'

0031CA 48 20 7 6C8 LH 2,6C8(0,7) SUB 0031CE 59 20 B 0E8 C 2,0E8(0,11) OLIT4+68

0031D2 47 D0 3 940 BC 13,940(0,3) GN=173(0031E4)

000875 GO 0031D6 58 10 D 358 L 1,358(0,13) XTAP+48

0031DA 05 E1 BALR 14,1 XCOUNT=244

0031DC 000003CC DC X'000003CC' 0031E0 47 F0 3 97E BC 15,97E(0,3) GN=174(003222)

0031E4 GN=173 EQU *

000876 INSPECT LIST-D (SUB) REPLACING ALL SPACES BY ZEROES. 0031E4 58 10 D 358 L 1,358(0,13) XTAP+48

0031E8 05 E1 BALR 14,1 XCOUNT=245

0031EA 000003D0 DC X'000003D0' 0031EE 8B 20 0 002 SLA 2,2

0031F2 1A 27 AR 2,7

0031F4 50 20 D 320 ST 2,320(0,13) TS3+0 0031F8 05 F0 BALR 15,0

0031FA 50 F0 D 334 ST 15,334(0,13) XTAP+12

0031FE 58 F0 A 044 L 15,044(0,10) V(IGZCIN1 )

003202 41 10 C 7C2 LA 1,7C2(0,12) PGMLIT+1822

003206 05 EF BALR 14,15

Page 58: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Optimizer Reports

58 User Guide

For each statement number, the entire Optimizer block that contains the number

is formatted in procedure map form. Multiple blocks are formatted if required.

Note: Optimizer ignores the SELECT option if you have also specified LIST. The

OFFSET and LIST options are mutually exclusive but, if you specify the SELECT

feature, you can specify both OFFSET and SELECT together and Optimizer

integrates their outputs. The selected procedure map statements override the

OFFSET. SELECT can also be specified with MOFFSET.

Page 59: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Chapter 3: Using Detector 59

Chapter 3: Using Detector

The Detector component of CA Optimizer/II is a programmer productivity tool

designed primarily for your test environment. It not only provides valuable

diagnostic information for abending applications, but also identifies problems

that might otherwise remain dormant until the application goes into production.

This chapter describes each of the debugging and diagnosis features of Detector

for your test environment. Extended Detector, which is described in the chapter

―Using Extended Detector,‖ provides diagnostic information and execution time

snapshots for applications executing in production. Together, these components

of CA Optimizer/II help to simplify diagnosis, reduce debugging time, and

improve the reliability of your applications.

Detector generates four types of reports:

■ The Abend report eliminates much of the searching and guess work involved

in problem diagnosis by providing key information in a clear and concise

format. Symbolic information, including the abending source statement and

formatted data values, is available for COBOL, PL/I, and Assembler

programs even if they have not been optimized.

■ The Intercepts report identifies data exceptions or decimal divide exceptions

in your optimized COBOL programs, allowing execution to continue after

Detector has reported the error and repaired the data.

■ The PARMCHK report identifies calls to optimized COBOL programs by callers

that have not provided the expected number of input parameters.

■ The Snap report provides a view of your program's data areas at any time

during execution by inserting a call to the snapshot program into your

application.

Symbolic Support

Detector reports can include symbolic information such as source statements

and variable names. Symbolic information is not required when using Detector

but can help to improve programmer productivity by reducing diagnosis time.

Symbolic information for your programs can be stored in two formats: PROTSYM

or CSL. If you have symbolic information in CSL format from an older version of

CA Optimizer/II, CA Optimizer, or CA SymDump Batch, this information can still

be used as input to Detector. However, CA Optimizer/II no longer writes

symbolic information to a CSL file. Instead, symbolic information is only stored in

PROTSYM format.

Page 60: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Detector Options

60 User Guide

To store symbolic information in your PROTSYM file during optimization, specify

SYM on the compile-time parameter list and include a PROTSYM DD statement

for your PROTSYM file. For non-optimized COBOL, Assembler or PL/I programs,

symbolic information can be stored in your PROTSYM file by executing one of the

listing postprocessors provided. For more information about storing symbolic

information in your PROTSYM file, see the Symbolic Guide.

If your symbolic (PROTSYM or CSL) file is defined in your installation defaults, it

is automatically searched by Detector for symbolic information without any

changes to your execution-time JCL. Otherwise, you must include a CAISYM DD

statement for your symbolic file or specify the SYMDSN option in CAIOPTS during

execution. Either of these methods cause Detector to search your symbolic file

for information.

Note: Your installation may have selected an alternate name for CAISYM, so

check with your system administrator before adding this DD name to your JCL.

Detector Options

When a COBOL program is optimized using the DTECT compile-time option,

Detector's abend monitoring feature is activated automatically whenever that

program is entered. Additional Detector features can also be activated for

individual programs using compile-time options. A variety of options are also

available to control the content, format, and destination of your Detector output

during execution.

The following table lists all the Detector options available to you at compile and

execution time:

Detector Options

Compile-time Execution-time View-time

DBGSLEEP

DTECT

FDCHECK

PARMCHK

PFLOW

SUBRNGCK

WSINIT

Standard Options

ACTONLY PGM

CEEDUMP PRTLIB

DBGAWAKE PRTREPT

DB2ACTIV REGMAX

DUMP SAVEHEAP

INTERCEPTS SNAP

PARMCHK SYMDSN

PFLOW

Formatting Options

ASMINST MRGDATA

BINFRMT MRGDSECT

FILES MRGFILES

FIRST128 MRGLINK

ASMINST

BINFRMT

FILES

FIRST128

GRPADDR

LINECNT

LINKAGE

LOCALSTOR

MEMMAP

MRGAUTO

MRGBASED

MRGCNTLD

MERGEDB

MRGDSECT

Page 61: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Detector Options

Chapter 3: Using Detector 61

Detector Options

Compile-time Execution-time View-time

GRPADDR MRGLOCAL

LINECNT MRGPARMS

LINKAGE MRGSTAT

LOCALSTOR MRGWORK

MEMMAP OCCURS

MRGAUTO SAVEAREA

MRGBASED SHOWHEAP

MRGCNTLD SHOWUNMRG

MERGEDB WORKSTOR

Data Management Control Blocks

BLOCKS IOB

DCB UCB

DEB

VSAM Control Blocks

ACB PLH

AMB RPL

AMBL VSAMIDX

MRGFILES

MRGLINK

MRGLOCAL

MRGPARMS

MRGSTAT

MRGWORK

OCCURS

SAVEAREA

SHOWHEAP

SHWUNMRG

WORKSTOR

Detector has facilities to do the following:

■ Enable and disable the XCOUNT, PFLOW, and SUBRNGCK options.

■ Detect invalid record area references.

■ Correct and intercept 0C7 and 0CB abends.

■ Parameter list validity checking.

■ Abend or SNAP paragraph flow analysis of the last ―n‖ paragraphs.

■ Generate reports at specified points in the program.

■ Report customization.

■ Subscript Range Checking.

■ Uninitialized Working Storage Detection.

DBGAWAKE and DBGSLEEP are the options used by the facility which enable and

disable the XCOUNT, PFLOW, and SUBRNGCK options. Used at compile-time,

DBGSLEEP will place the aforementioned options in a dormant state. At

execution-time, specify DBGAWAKE to have these options in effect.

The facility which detects invalid record area references is controlled by the

FDCHECK option. Specify FDCHECK at compile-time to turn on this facility.

Page 62: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Detector Options

62 User Guide

Specify INTERCEPTS at execution-time to have the 0C7 and 0CB abend

interception and correction facility in effect. This facility reports on any 0C7 and

0CB abends, temporarily corrects the problem, and allows execution to continue.

This lets programmers catch multiple problems with a single execution.

The parameter list validity checking facility can be used at compile or

execution-time by specifying the PARMCHK option in the JCL. Using this facility,

you are able to verify that the number of parameters passed to the application

program is correct.

The Abend or SNAP paragraph flow analysis facility can be used at compile or

execution-time. It checks the last ―n‖ paragraphs of the program. Specifying

PFLOW turns on this facility.

Using SNAP at execution-time allows you to analyze specific points in a program.

Specify the SUBRNGCK option during compile-time to use the subscript range

checking facility. This option ensures that subscript and index values are within

their specified range.

Use WSINIT at compile-time to detect uninitialized working storage.

Reports are customized by specifying a variety of options during execution.

FILES, FIRST128, LINECOUNT, LINKAGE, LOCALSTOR, MEMMAP, SAVEAREA,

and WORKSTOR plus all the VSAM control block and data management control

block options control report customization.

You can freely combine Detector compile-time options with COBOL II compiler

options and other CA Optimizer/II options. The preceding options have both

compile-time and execution-time uses. The execution-time applications are

discussed in the chapter ―Using Options‖ which contains a complete listing of all

CA Optimizer/II options, their defaults, usage, and special considerations.

The following table summarizes how you can use Detector's more commonly

used facilities:

Compile-time specify Execution-time specify Description

SUBRNGCK Report on subscript or index range

violations.

WSINIT Identify 0C7s and 0CBs that may have

been caused by an uninitialized

working storage item.

FDCHECK Identify references to record areas of

unopened files or at end-of-file.

PARMCHK Validity-check each option list passed

Page 63: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

JCL

Chapter 3: Using Detector 63

Compile-time specify Execution-time specify Description

to this optimized program.

A CALL to CAODSNAP at

each point where you want

a snapshot

SNAP nnnnn

where nnnnn is the maximum

number of snaps.

Collect snapshots of your program at

specific points during execution.

DTECT or any other

detector option

INTERCEPTS nnnnn

where nnnnn is the maximum

number of intercepts.

Intercept data exceptions and decimal

divide exceptions.

PFLOW List the names of the most recently

executed paragraphs at abend or

SNAP.

Any detector option MEMMAP OFF

PFLOW OFF

Suppress:

■ The display by Detector of the

Memory Map (TGT and PGT).

■ The display by Detector of the last

'n' paragraphs executed even if

PFLOW was specified at

compile-time.

JCL

To invoke Detector, you must first specify one or more Detector options in the

compile/optimize step. This section provides information and JCL examples on

compile-time and execution-time.

Compile-time

To execute the Optimizer component, refer to a copy of your installation's

cataloged procedures for a compile/optimize and link (or compile/optimize, link,

and go).

A standard procedure called CAIOPTII has been provided. The following example

shows how to invoke this procedure for subscript range checking and detection

of invalid record area references.

//STEP1 EXEC CAIOPTII,COBOPT='SUBRNGCK,FDCHECK'

Page 64: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

JCL

64 User Guide

In the previous example, COBOPT is a symbolic option defined in the CAIOPTII

procedure. If the procedure at your data center does not have a symbolic option

for the PARM options, you can pass Detector options in the same way you specify

compiler options.

//STEP1 EXEC CAIOPTII (or whatever your procedure name is)

// PARM.COB='SUBRNGCK,FDCHECK'

To write symbolic information for your program to a PROTSYM file, include the

SYM option on the parameter list and add a PROTSYM DD statement for your

PROTSYM file to your JCL for the compile step.

Execution-time

When the DTECT option is specified at compile-time, the Detector executables

must be available at execution-time. If CAI.CARXLOAD is in linklist, no changes

are required to your STEPLIB or JOBLIB DD statements. Otherwise, you must

add these libraries to STEPLIB or JOBLIB.

Detector can also be customized at execution time using any of the following

optional DD statements:

DD Statement Description

CAISYM DD Use this optional DD statement to identify a symbolic

(PROTSYM or CSL) file which has not been defined in your

installations defaults. Your installation may have selected an

alternate name for the CAISYM DD, so check with your

system administrator before updating your execution-time

JCL. You can alternatively specify the SYMDSN option in

CAIOPTS to dynamically allocate your symbolic file.

CAIPRTLB DD If your Detector output is being written to a CAIPRINT

repository, this DD statement can be used to override the

default dsname for your repository file. You can alternatively

specify the PRTLIB option in CAIOPTS to dynamically allocate

your repository or allow user exit CAOCUPRT to select the

appropriate repository for your application. Detector output

is only written to the repository when PRTREPT REPOS or

PRTREPT BOTH is specified.

CAIPRINT DD When PRTREPT PRTDD or PRTREPT BOTH is specified,

Detector writes its reports to the CAIPRINT DD. If this DD is

not present in your JCL, it dynamically allocates to SYSOUT.

Add this DD statement to your JCL only when you need to

direct Detector output to a different destination. You can

alternatively allow user exit CAOCUDSN to select the

appropriate CAIPRINT destination for your application.

Page 65: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

JCL

Chapter 3: Using Detector 65

DD Statement Description

CAIOPTS DD Use this optional DD statement to override your installation

defaults for Detector.

Page 66: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Detector Reports

66 User Guide

Detector Reports

Five reports are described in this section. Two of these reports, the CAIOPTS File

Processing report and the Execution Monitor Summary are produced by the

Execution Monitor. The Execution Monitor is the component of the

CA Optimizer/II runtime system that establishes the environment for Detector

and Analyzer. The CAIOPTS File Processing report displays the input options you

specified, if any, to control Detector and Analyzer execution. The Execution

Monitor report displays the options in effect during the execution of your

application under Detector and/or Analyzer. The other three reports, Abend,

Intercepts, and Snap are Detector reports; they are described below.

■ Detector Abend Report

Detector prints this report whenever an abend occurs during program

execution. This includes abends that were due to a subscript range violation

(SUBRNGCK) and detection of invalid record area reference (FDCHECK). The

report contains:

– Diagnostic information based on the type of abend.The actual source

statement on which the abend occurred, if symbolic information for the

abending program was available to Detector. Otherwise, only the

machine instruction and its operands display.

The names and values of the data items referenced by the abending

statement are also displayed if symbolic information is available from a

PROTSYM file, or from a CSL file for which MXREF was specified during

optimization.The machine instruction that caused the abend, and the

instruction operands (optional).

– Addresses and other specifics pertinent to the aben

– The module call sequence showing the hierarchy of programs which

invoked the abending program.

– Compile information, such as the compile date/time, the compiler

version, and compile options.

Optimization information, if the program was optimized, such as the CA

Optimizer or CA Optimizer/II version and optimization options.

Symbolic information, if available, such as the names of the symbolic file

and member, the compile date and time of the member, and the type of

symbolic file (PROTSYM or CSL).

Link information, such as the link date/time, the library that the program

was loaded from, the load module length, and the link options.

– The contents of the abending program's registers at abend.

– An automatic interpretation and optional display of the following data

management control blocks: DCB, DEB, UCB, IOB, ACB, AMBL, AMB,

RPL, and PLH.

Page 67: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Detector Reports

Chapter 3: Using Detector 67

– Displays of the current record areas of all open files (optionally displays

only the first 128 bytes), Working-Storage Section, Local-Storage

Section, and Linkage Section, if there is one.

– An optional display of the memory map (TGT, PGT, DSA).

– The contents of the PSV and VN cells and Register 15, which are referred

to in the PERFORM Range Table printed at compile-time.

– A Paragraph Flow report showing the last paragraphs executed up to the

time of the abend (optional).

– An optional display of Language Environment heap storage.

– The data control blocks of all open files that Detector has not yet

reported on (optional).

– The Save Area Trace report showing the standard chain of register areas

(optional).

■ Detector Intercepts Report

Detector generates this report when a data exception (0C7) or decimal

divide exception (OCB) occurs during the execution of your program. When

you specify the INTERCEPTS feature at execution-time, the 0C7 and 0CB

interrupts are handled by Detector.

Detector prints a short report describing the exception and its cause. Then

Detector adjusts the data so that the program can continue executing.

■ Detector Snap Report

A Snap report provides you with a snapshot of your optimized program at

strategic points during execution.

To produce a Snap report, you must:

1. Add a CALL 'CAODSNAP' statement to your program at the point of

execution that you want the SNAP to take place.

2. Specify the SNAP option, 'SNAP nnnn', at execution-time, where nnnn

specifies the number of SNAP CALLS to take for all programs in the

application.

The Snap report contains the same information as the Abend report except

the Snap omits the data identifying the abend and the called module

sequence for multimodule environments.

The Detector reports are discussed in the following sections.

Page 68: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

68 User Guide

Abend Report

The Detector Abend report prints when an abend occurs. It begins with some

specific information pertaining to the abend itself.

******************************

* * S-0C7 * A

* A B E N D *------------ *

* * CAOEDEMO * B

******************************

********************************************************************************** * CEE3207S The system detected a data exception (System Completion *

*C Code=0C7). *

********************************************************************************** ********************************************************************************************

*D DESCRIPTION: S0C7 - DATA EXCEPTION: A NUMERIC FIELD CONTAINED NON-NUMERIC *

* DATA. * * *

* POSSIBLE CAUSES: 1. NUMERIC DATA WAS NOT INITIALIZED, OR VARIABLE DATA NOT *

*E NUMERIC. * * 2. ATTEMPTED TO PERFORM A DECIMAL ARITHMETIC INSTRUCTION ON *

* EITHER AN UNSIGNED OR UNPACKED FIELD. *

* 3. A SUBSCRIPT OR INDEX CONTAINED AN INVALID VALUE: * * A. FAILURE TO INITIALIZE A SUBSCRIPT. *

* B. INITIALIZED A SUBSCRIPT TO ZERO, BUT FAILED TO ADD 1 *

* BEFORE ITS FIRST USE. * * C. NOT REINITIALIZING A SUBSCRIPT AFTER A LOOP USING IT. *

* D. SUBSCRIPTING BY INPUT DATA THAT WAS NOT CHECKED FIRST FOR *

* A VALID RANGE OF VALUES. * * E. COMPUTING THE SUBSCRIPT WITHOUT CHECKING THE RESULTS FOR *

* A VALID RANGE OF VALUES. *

.

.

* *

*F TO CORRECT: 1. REVIEW AND CORRECT THE ABOVE STATED POSSIBLE CAUSES. *

* 2. REVIEW THE LAST KNOWN I/O OR CALL INFORMATION. IT IDENTIFIES *

* THE PROGRAM AT THE OFFSET WHERE THE LAST KNOWN I/O OR CALL WAS *

* MADE. *

* 3. REVIEW THE Z/OS BREAKING EVENT ADDRESS LINE. IF PRESENT, IT *

* IDENTIFIES THE PROGRAM AT THE OFFSET WHERE THE BRANCH *

* ORIGINATED. * *********************************************************************************************

A

Displays the system or user abend code.

B

Displays the abending module name.

C

Displays the LE message associated with the ABEND, if LE is active and a

message is available.

D

Displays a description of the abend code.

If the abend code indicates a DB2 ABEND (for example, S04E or S04F), the

DB2 reason code is displayed with the appropriate description.

Page 69: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

Chapter 3: Using Detector 69

E

Displays a list of possible causes for the ABEND.

F

Displays suggested strategies for solving the problem.

If the ABEND occurs in a DB2 application, the DB2 return code, SQLCODE is

displayed with the associated messages.

The abending statement information follows the diagnostic box:

**********************

* ABENDING STATEMENT *

**********************

A PROGRAM: CAOEDEMO OFFSET: 003D78 LINE: 001285

001285 MOVE MASK1 TO BINARY-1 B

LINE# LEVEL/FIELD NAME VALUE/LOCATION DEFINITION

------ --------------------------- --------------------------- -------------------- C 000329 03 MASK1 ALL '*' X(2)

000178 03 BINARY-1 +1 S9(4) BINARY

A

Displays the name of the program that contains the abending statement, the

offset into the program for that statement, and line number of the

statement.

If the program was compiled using PL/I, this line is followed by a line

displaying the name of the procedure that contains the abending statement

and the offset into the procedure for that statement.

B

Displays the abending COBOL, PL/I, or Assembler source statement,

including the line number from the source listing, if symbolic information is

available for the program,

The LISTLINE option lets users provide an additional context for the source

statement at ABEND, snap, or transfer. The value of the option is used to

determine the number of additional source listing lines to display before and

after the abending, snap, or transfer statement. If the LISTLINE option is

nonzero, the specified number of source listing lines leading up to the

statement is displayed. This is followed by up to ten lines of the abending,

snap, or transfer statement (including comment lines), with the first line

delineated by dashed lines. Then the specified number of source listing lines

following the statement is displayed. If the LISTLINE option is zero, up to ten

lines of the abending, snap, or transfer statement are displayed (excluding

comment lines for COBOL and Assembler programs).

Page 70: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

70 User Guide

C

Displays the COBOL or PL/I variable names referenced by the abending

source statement. This is available only if symbolic information is obtained

from a PROTSYM file, or from a CSL if the XREF option was used when the

CSL member was created.

The abending instruction is then displayed, followed by its operands. For COBOL

and PL/I programs, this information is suppressed when the ASMINST option is

set to OFF:

ABENDING INSTRUCTION A 4F40 D4B8 CONVERT

OPERAND: REG 4 B VALUE: 00000002

OPERAND: TEMP STORAGE CELL DSA DISP 0004B8 VALUE: 0000000000000CC5 C <-- NOT NUMERIC

A

Displays the machine instruction that caused the ABEND.

B

Displays the instruction operands for the abending instruction. If possible,

the operands are related back to an area in the abending program.

C

Displays the specific cause for the ABEND, if known.

The abend page ends with address information that may be helpful in debugging

the ABEND.

INTERRUPT OCCURRED AT ADDRESS B6304686 AT OFFSET +003D7E IN PROGRAM CAOEDEMO A

ENTRY POINT ADDRESS IS 36300908 AT OFFSET +000000 IN PROGRAM CAOEDEMO B

LAST KNOWN I/O OR CALL OCCURRED AT ADDRESS 36301CDE AT OFFSET +0013D6 IN THE Z/OS BREAKING EVENT INFORMATION IS NOT AVAILABLE. D

A

Displays the absolute address and program offset where the interrupt

occurred. If the abending program is PL/I, the procedure offset is also

displayed.

B

Displays the absolute address and program offset of the entry point for the

abending program.

Page 71: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

Chapter 3: Using Detector 71

C

Displays the absolute address and program offset from which the last known

I/O or CALL was made. If the abending program is PL/I, the procedure offset

is also displayed. Alternatively, it indicates the status if the last I/O or CALL

information is not available.

D

Displays the absolute address and program offset of the last z/OS breaking

event (from the breaking-event-address register). If the abending program

is PL/I, the procedure offset is also displayed. Alternatively, it states if the

breaking event information is not available.

The Offending Instruction

In the case of program check interruptions (0Cx), Detector reports on the

particular instruction which caused the abend with as much supporting

information as possible.

Detector provides additional information for:

■ Protection

■ Addressing

■ Data

■ Fixed-point overflow

■ Fixed-point divide

■ Decimal overflow

■ Decimal divide

■ Exponent overflow

■ Significance

■ Floating-point divide

Detector cannot always provide further analysis of the instruction, especially

with the following exceptions:

■ Operation

■ Privileged operation

■ Execution

■ Specification

Page 72: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

72 User Guide

Module Call Sequence

The next block of information is of interest if the application comprises multiple

program modules. It lists the calling sequence of programs which resulted in the

execution of the program which produced the abend.

************************ * MODULE CALL SEQUENCE *

************************

A B C D E F G H LOAD PROGRAM PROGRAM ENTRY COMPILE VER/

MODULE PROGRAM/PROCEDURE ADDRESS LENGTH ADDRESS DATE TIME LANGUAGE REL

-------- ---------------------------- -------- ------ -------- -------- ------ --------- -----

SYSTEM 00000000 000000 36300908 ASSEMBLER

CALLED CEE CEE 00000000 000000 00000000 ASSEMBLER CALLED CAOEDEMO CAOEDEMO 36300908 004AA8 36300908 14 MAR,2008 16.38.30 COB Z/OS 3.4.1

(ABENDED)

A

The load module name in which the called program resides.

B

The name of the called program. For COBOL and Assembler, this is the

CSECT name. For PL/I, this is the name of the active procedure.

C

The storage address of the start of the called program.

D

The length of the called program.

E

The storage address of the entry point of the called program.

F

The date and time of compilation.

G

The source language in which the called program is coded.

H

The version of the COBOL or PL/I compiler used for compilation.

Note: The actual register Save Area Trace is at the end of the Detector Abend

report. Reference the Save Area Trace if you want to know the actual contents of

the registers when control was passed from program to program.

Page 73: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

Chapter 3: Using Detector 73

COBOL Reports

This section describes the information provided by Detector for COBOL

programs.

Program Statistics

For each program in the report, this report contains statistics about the compile,

link, and symbolic postprocessing used when the program was built.

******************** * PROGRAM CAOEDEMO *

********************

A COMPILED ON 14 MAR,2008 AT 16.38.30 WITH COBOL FOR Z/OS 3.4.1

COMPILE OPTIONS:ADV, APOST, NOAWO, DATA(24), NODBCS, NODECK, NODUMP, DYNAM,

NOFASTSRT, NOLIB, LIST, MAP, NONAME, NONUMBER, OBJECT, NOOFFSET, NOOPTIMIZE, NUMPROC(PFD), RENT, NOSEQUENCE, SOURCE,

NOSSRANGE, NOTERM, NOTEST, TRUNC(STD), NOVBREF, NOWORD, XREF,

ZWB

B

SYMBOLIC INFORMATION RETRIEVED FROM USER01.PROTSYM

MEMBER: CAOEDEMO DATE: 14 MAR,2008 TIME: 16.38.30 TYPE: PROTSYM

C

LINKED ON 14 MAR 2008 AT 16:38:33

LOAD LIBRARY: USER01.LOAD

MODULE LENGTH: 000056F8 (DECIMAL 22,264)

LINK OPTIONS: AC(0), AMODE(31), NOOVLY, NORENT, NOREUS, RMODE(24)

A

This section contains compile statistics, including the date and time of

compilation, the compiler and release information, and the options used.

B

This section contains the CA Optimizer/II statistics, including the version

used and the options specified during optimization.

C

When symbolic information is used to format the report, this section

identifies the name of the symbolic file, and the date and time of the

symbolic listing used.

D

Link-edit information including the date and time that the load module was

created, the name of the load library from which the program was loaded,

the length of the module, and the linkage editor options used.

Data Division Displays

The Data Division Displays section discusses the following displays:

■ File Section Display

■ Working-Storage Section, Local-Storage Section and Linkage Section

Displays

Page 74: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

74 User Guide

File Section Display

Detector displays the status and the current record contents of each open data

file defined to the COBOL program. If it is a sequentially accessed VSAM file,

Detector also displays the contents of the previous record.

****************

* FILE SECTION *

****************

A

DDNAME=SYSPRINT DSORG=PS QSAM BUFNO=1 UNIT=3390,UCB VOL=SER=MVR14C

DSN=MIKED.OPT31GO.JOB04431.D0000102.? RECFM=FB

STATUS(OPEN) B USAGE(OUTPUT) LRECL=120 BLKSIZE=120

RECORDS PROCESSED =1 C

CURRENT FILE STATUS = 00 SUCCESSFUL D E

CONTENTS OF CURRENT LOGICAL RECORD

---------------------------------- LINE# LEVEL/FIELD NAME VALUE/LOCATION DEFINITION

------ -------------------------- -------------------------------- ---------------------------------------------

000129 01 LINE-OUT BLF=0000+000000 (0E7FFF88) 000130 03 FILLER * * X(120)

(+000032) * CA-OPTIMIZ*

(+000064) *ER/II * (+000096) * *

000131 01 LINE-OUT1 * * X(120)

(+000032) * CA-OPTIMIZ* (+000064) *ER/II *

(+000096) * *

The File Section area of the Detector report lists information for each file, when

applicable:

A

The data management control blocks are interpreted and displayed here in

KEYWORD=value format. They are self-explanatory or for review.

B

This status line displays current file's status (OPEN|CLOSED); usage

(INPUT|OUTPUT|WORK), and access method I/O type

(QSAM|VSAM|BSAM|BPAM, and so on).

C

Number of records processed. On a READ-WRITE file this number represents

the total I/O count to this file. OS/VS COBOL Report-Writer files display a

zero here. This number actually represents the number of times a READ or

WRITE verb was executed for this file.

D

The current file status, if the file is open.

Page 75: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

Chapter 3: Using Detector 75

E

The contents of the current logical record is displayed. If the FIRST128

option was specified, only the first 128 bytes of the current logical record are

displayed in both this report and the Open Files report. If the MRGFILES

option is ON, the data is displayed in merged format. Otherwise, it is

displayed in dump format.

For more information about the merged and dumped data formats, see

Merged Versus Dumped Data Displays (see page 128).

F

If the file is a sequentially accessed VSAM file, the contents of the previous

record are displayed (not shown).

Working-Storage Section, Local-Storage Section and Linkage Section Displays

Displays of the Working-Storage Section, Local-Storage Section and the Linkage

Section are given in the Detector Abend report.

The following is an example of a Linkage Section Display:

*******************

* LINKAGE SECTION * *******************

LINE# LEVEL/FIELD NAME VALUE/LOCATION DEFINITION ------ ----------------------------- -------------------------------- -------------------------------------

000399 01 PARMS BLL=0001+000000 (36310E68)

000400 03 PARM-LENGTH +1 S9(4) BINARY 000401 03 PARM-DATA ? X'E8' X(12)

LINE# LEVEL/FIELD NAME VALUE/LOCATION DEFINITION ------ ---------------------------- -------------------------------- -------------------------------------

001353 01 INPUT-PARM BLL=0002+000000 (365864B0)

001354 03 INPUT-PARM-LENGTH +1 S9(4) BINARY 001355 03 INPUT-PARM-DATA ? X'B38C00000000000000000000' X(12)

If the MRGWORK (for Working-Storage), MRGLOCAL (for Local-Storage), and

MRGLINK (for Linkage Section) options are on, the data are displayed in merged

format. Otherwise, they are displayed in dump format.

For more information about the merged and dumped data formats, see Merged

Versus Dumped Data Displays (see page 128).

Page 76: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

76 User Guide

Register Contents

Detector displays the general registers and floating-point registers for the

abending program.

If the contents of a general register can be related directly to a base address and

displacement, the base address and displacement are shown. For COBOL II,

COBOL/370, COBOL for MVS and VM, COBOL for OS/390 and VM, or Enterprise

COBOL for z/OS and OS/390, the base addresses may appear as:

■ BLF nnnn (Base Locator-FILE Section)

■ BLW nnnn (Base Locator-WORKING-STORAGE Section)

■ BLL nnnn (Base Locator-LINKAGE Section)

■ BLK nnnn (Base Locator-LOCAL-STORAGE Section)

■ BLX nnnnn (Base Locator for externally located data)

■ progname (signature code which stats at relative location 0 of the program)

■ TGT (Task Global Table)

■ PGT (Program Global Table)

■ DSA (Dynamic Save Area)

For OS/VS COBOL the base address may appear as:

■ BL

■ BLL

■ INIT1

■ TGT

Page 77: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

Chapter 3: Using Detector 77

A blank line following the register display indicates that the origin of the register

contents cannot be determined.

**********************

* REGISTERS AT ABEND * **********************

GENERAL REGISTERS:

R0 36586520 DISP +A99B50 IN BLL 0002

R1 365864A8 DISP +000478 IN DSA R2 0001D0B8 DISP +000000 IN BLW 0000

R3 000360B8 DISP +000000 IN BLW 0019

R4 00000002

R5 B630409E DISP +003796 IN PROGRAM CAOEDEMO

R6 36301C76 DISP +00136E IN PROGRAM CAOEDEMO

R7 00000000

R8 000340B8 DISP +000000 IN BLW 0017

R9 0001B038 DISP +000000 IN TGT

R10 36300A70 DISP +00006C IN PGT

R11 3630456E DISP +003C66 IN PROGRAM CAOEDEMO

R12 36300A04 DISP +000000 IN PGT

R13 36586030 DISP +000000 IN DSA R14 B6301CE0 DISP +0013D8 IN PROGRAM CAOEDEMO

R15 00000000

FLOATING-POINT REGISTERS:

FPC 00000000

FR0 493202EA E0000000 1.342483 E+10 FR8 00000000 00000000 0.0

FR1 00000000 00000000 0.0 FR9 00000000 00000000 0.0 FR2 4E000000 03923FD1 5.991624 E+07 FR10 00000000 00000000 0.0

FR3 00000000 00000000 0.0 FR11 00000000 00000000 0.0

FR4 4E000000 00025EF4 155380 FR12 00000000 00000000 0.0 FR5 00000000 00000000 0.0 FR13 00000000 00000000 0.0

FR6 00000000 00000000 0.0 FR14 00000000 00000000 0.0

FR7 00000000 00000000 0.0 FR15 00000000 00000000 0.0

If the basic floating-point extensions of OS/390 are installed on your system,

Detector displays the floating-point control register and floating point registers 0

through 15. Otherwise, Detector displays floating-point registers 0, 2, 4, and 6

(as shown).

Page 78: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

78 User Guide

Memory Map Display

The following is a display of the memory map, which consists of TGT, PGT and,

for some releases of COBOL, the DSA. For COBOL II or COBOL/370, the PGT

display includes the Constant Global Table (CGT). For COBOL for MVS and VM,

COBOL for OS/390 and VM, and Enterprise COBOL for z/OS and OS/390, the

display includes the DSA.

**************

* MEMORY MAP *

**************

DSA 36586030 LENGTH 000004F0 (DECIMAL 1,264)

ADDRESS OFFSET

36586030 000000 00104001 36313360 00000000 B6301CE0 00000000 36586520 365864A8 000157FC *.. ....-.......\...........y....* 36586050 000020 0001B38C 00000000 B630409E 36301C76 00000000 000340B8 0001B038 36300A70 *.......... ........... .........*

36586070 000040 3630456E 36300A04 00000000 36586520 00000000 00000000 36586030 0001B038 *...>......................-.....*

36586090 000060 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 *................................* 365860B0 000080 00000000 21000000 00000003 00000000 B6301CE0 00000000 36586520 365864A8 *...................\...........y*

365860D0 0000A0 36304214 363041F8 00000002 B630409E 36301C76 00000000 000340B8 0001B038 *.......8...... ........... .....*

365860F0 0000C0 36300A70 00000000 00000000 00000000 00000000 00000000 00000000 00000000 *................................* 36586110 0000E0 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 *................................*

LINES 00000100-00000140 SAME AS ABOVE

. .

.

TGT 0001B038 LENGTH 000003E8 (DECIMAL 1,000) ADDRESS OFFSET

0001B038 000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 *................................*

0001B058 000020 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 *................................* 0001B078 000040 00000000 00000000 F3E3C7E3 00000000 06000000 64020260 36582100 000157FC *........3TGT...........-........*

0001B098 000060 0001B420 00000001 00084927 00000000 00000000 0001B930 00000000 00000000 *................................*

0001B0B8 000080 363129C0 000003E8 00000000 00000000 00000002 00000005 E2E8E2D6 E4E34040 *...{...Y................SYSOUT * 0001B0D8 0000A0 C9C7E9E2 D9E3C3C4 00000000 00000000 00000000 00000000 00000000 00000000 *IGZSRTCD........................*

0001B0F8 0000C0 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 *................................*

0001B118 0000E0 00000000 00000000 36300A04 00000000 0001B3BC 365823F0 36301107 00000000 *.......................0........* .

.

.

PGT 36300A04 LENGTH 00000A60 (DECIMAL 2,656)

ADDRESS OFFSET

36300A04 000000 05F5E100 3B9ACA00 000186A0 00002710 00000001 00000000 40404040 40404040 *.5........f............. *

36300A24 000020 40404040 40404040 40404040 40404040 40404040 40400000 00000000 00000000 * ..........*

36300A44 000040 00000000 000C0000 0000000C 0000000F F0F0F0F0 F0C00000 36300A70 36301504 *................00000{..........*

36300A64 000060 36302556 36303564 3630456E 36301552 3630183C 36301DFC 363020EA 36302196 *...........>...................o* 36300A84 000080 36302376 36302556 363025F2 3630276C 363028F0 36302A46 36302AC4 36302C0A *...........2...%...0.......D....*

36300AA4 0000A0 36302C28 36302E0E 36302EC0 36302F14 36303068 363030AE 363036E8 363036A4 *...........{...............Y...u*

36300AC4 0000C0 36303B68 36303C12 363040B2 36303CB2 36303CF6 36303D4A 36303D9E 36303DF2 *.......... ........6...¢.......2* 36300AE4 0000E0 36303E46 36303E9A 363037E6 3630385C 36303914 363039DC 36303A22 36303A76 *...........W...*................*

Page 79: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

Chapter 3: Using Detector 79

To interpret the Memory Map Display, see the listing of the memory maps

printed after the compiler source listing. At compile/optimize time,

CA Optimizer/II provides three displays: a PGT memory map, a TGT memory

map (shown below) and a DSA memory map (for IBM COBOL for MVS and VM,

IBM COBOL for OS/390 and VM, and IBM Enterprise COBOL for z/OS and OS390

compiles). These offsets (TGTLOC) match up directly with the column of offsets

on the Memory Map display.

PGMLOC TGTLOC TGT ** FIXED ** MEMORY MAP PGMLOC TGTLOC TGT ** VARIABLE ** MEMORY MAP

00000000 RESERVED - 72 BYTES 00000120 BACKSTORE FOR SYMBOLIC REGISTERS 00000048 TGT IDENTIFIER 00000120 BACKSTORE FOR OPTIMIZER REGISTERS

0000004C RESERVED - 4 BYTES 00000120 TGT OVERFLOW CELLS

00000050 LEVEL NUMBER 00000120 BASE LOCATORS FOR SPECIAL REGISTERS 00000051 RESERVED 3X 00000128 BASE LOCATORS FOR WORKING-STORAGE

00000054 SWITCH 00000144 BASE LOCATORS FOR LINKAGE-SECTION

00000058 ADDRESS OF RUNCOM AL4 00000150 BASE LOCATORS FOR FILE SECTION 0000005C ADDRESS OF COBVEC 00000154 BASE LOCATORS FOR VARIABLY LOCATED DATA

00000060 POINTER TO PROGRAM DYNAMIC BLOCK TABLE 00000154 BASE LOCATORS FOR EXTERNAL DATA

00000064 NUMBER OF FCB CELLS 00000158 BASE LOCATORS FOR ALPHANUMERIC TEMPS 00000068 WORKING STORAGE LENGTH 00000158 CLLE ADDRESS CELLS FOR CALL

0000006C RESERVED - 4 BYTES 00000160 USE FOR DEBUGGING AREA

00000070 ADDRESS OF IGZESMG WORK 00000160 FDUMP-TEST INFORMATION AREA 00000074 ANCHOR FOR GETMAIN 00000160 VARIABLE NAME (VN) CELLS FOR PERFORM

00000078 RESERVED - 2 BYTES 00000160 PERFORM SAVE CELLS

0000007A RESERVED - 2 BYTES 00000160 VARIABLE NAME (VN) CELLS FOR ALTER

0000007C RESERVED - 2 BYTES 00000168 INDEX CELLS

0000007E MERGE FILE NUMBER 00000180 PERFORM SAVE CELLS

00000080 ADDRESS OF CEL COMMON ANCHOR AREA 00000180 PERFORM COUNTER CELLS

00000084 LENGTH OF TGT 00000180 VARIABLE LENGTH CELLS

00000088 RESERVED 1X 00000180 ODOSAVE CELLS

00000089 PROGRAM MASK FOR THIS PROGRAM 00000180 FCB ADDRESS CELLS

0000008A RESERVED 2X 00000184 LOCAL FCB CELLS FOR EXTERNAL FILES

0000008C NUMBER OF SECONDARY FCB CELLS 00000184 ALL PARAMETER BLOCK

00000090 LENGTH OF THE ALTER VN(VNI) VECTOR 00000184 INTERNAL PROGRAM CONTROL BLOCKS 00000094 COUNT OF NESTED PROGRAMS IN COMPILE UNI 000001E8 EVALUATE BOOLEAN VALUES

00000098 EBCDIC DDNAME FOR DISPLAY 000001E8 EVALUATE WHEN VALUES

000000A0 RESERVED - 8 BYTES 000001E8 TEMP STORAGE 1 000000A8 ADDRESS OF COM-REG SPECIAL REGISTER 000001E8 TEMP STORAGE 2

000000AC CALC ROUTINE SAVE AREA 000001E8 TEMP STORAGE 3

000000E0 ALTERNATE COLLATING SEQUENCE POINTER 000001E8 TEMP STORAGE 4 000000E4 ADDRESS OF SORT GN BLOCK 000001E8 TEMP STORAGE FOR OPT

000000E8 ADDRESS OF PGT 000001E8 TGT COMMON TRANSLATE TABLE

000000EC CURRENT INTERNAL PROGRAM NUMBER 000001E8 SUBROUTINE (NESTED PROGRAM) RETURN ADDR 000000F0 POINTER TO 1ST IPCB 000001F8 SUBSCRIPT LIMIT CELLS

000000F4 ADDRESS OF THE CLLE FOR THIS PROGRAM 00000330 OPTIMIZER XTAP

000000F8 ADDRESS OF ABEND INFORMATION TABLE 00000330 Q-ROUTINE TEMP STORAGE 000000FC ADDRESS OF TEST INFO FIELDS IN TGT 00000340 RESOURCE ALLOCATOR SAVE AREA

00000100 ADDRESS OF START OF PROGRAM 0000034C MVC SUBROUTINE AREA

00000104 ADDRESS OF 1ST ALTER VNI CELL IN CGT 00000108 ADDRESS OF 1ST ALTER VN CELL IN TGT

0000010C ADDRESS OF 1ST PBL CELL

00000110 ADDRESS OF 1ST FCB CELL 00000114 WORKING STORAGE ADDRESS

00000118 POINTER TO FIRST SECONDARY FCB CELL

0000011C POINTER TO STATIC CLASS INFO BLOCK

For example, if you want to know the contents of any index cell, locate the

displacement address from the start of the TGT, in this case this address is 168

(located in the TGTLOC column), and count four bytes for each index cell until

you reach the desired one.

Page 80: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

80 User Guide

PERFORM Return Address Analysis

If your program abends in a PERFORM range and you need to establish which

PERFORM verb you executed to get into that PERFORM range, do the following:

1. Using the relative address in your program where the abend occurred, go to

the PERFORM Range Table that is part of every compile/optimize listing.

2. Locate the PERFORM range that contains that relative address and note the

return cell (R15, PSV, or VN) associated with the PERFORM range. This cell

contains the address of the source statement following the PERFORM verb

(the point to which control returns after the PERFORM range executes).

3. Look up that cell in the PERFORM RETURN ADDRESSES section of the

Detector report; it gives you the cell's contents in relative address format

(the relative address of the statement following the PERFORM verb).

Perform Range Table

Legend:

Overlap - This perform range overlaps a preceding one. Fall Thru - This perform range exit may fall through to the next statement in

the program.

Branch Out - There is a branch in the perform range that branches out of the perform range to the address shown.

Recursive - There is a path from this perform range entrance, before reaching

the perform range exit, which leads to a PERFORM verb of the same

perform range. The entry and exit addresses of the perform ranges

containing the recursive PERFORM verbs are shown.

No Exit - This perform range contains no path from the perform range

entrance to the perform range exit.

Null - This perform range contains no executable statements.

Source Address Return Over Fall Branch Recursive No Null

Entry - Exit Entry - Exit Cell -lap Thru Out To Call From Exit

Program-Id: CAO2DEMO

001042-001044 003CB4-003D04 PSV=30 001046-001054 003D14-003D60 PVN=4 Yes

001052-001054 003D4C-003D60 PVN=4 Yes Yes

001049-001057 003D32-003DA0 PSV=29 Yes Yes 001059-001061 003DBC-003E0A PVN=3 Yes 003F14

001063-001065 003E24-003E7A PVN=2 Yes 003E94-

003EE0 001067-001069 003E94-003EE0 PVN=1 Yes 003E24-

003E7A

001071-001071 003EFA-003EFA YES 001074-001075 003F14-003F3C R15 Yes

001080-001082 003F68-003F92 YES

001034-001086 003C1E-003FA6 PVN=5 Yes Yes Program-Id: LOOP-COMPUTE

001403-001419 004FBE-00528C PSV=8

Summary of Perform Ranges: Yes YES YES YES YES YES Altered VN Table

Statement Address Cell

Program-Id: CAO2DEMO 000527 000018A2 AVN 1

000559 00001A0E AVN 2

Page 81: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

Chapter 3: Using Detector 81

The PERFORM Return Addresses can also give you further information about

the PERFORM ranges in your program, depending on the type of cell used for

linkage.

JOB: XYZAB02A STEP: RUN PROGRAM CAO2DEMO

****************************

* PERFORM RETURN ADDRESSES * 'NC' = NOT CALLED

**************************** 'FT' = FALL THROUGH PSV CELLSA

8=004FB0 9=004DB4 10=00497A 11=00496C

12=004B18 13=004AD0 14=004A88 15=004A40 16=0049F8 17=0049B0 18=00495E 19=00389A

20=NC 21=NC 22=NC 23=NC

24=NC 25=NC 26=NC 27=NC 28=001868 29=003D28 30=003C42 31=003A86

32=0039D8 33=0038D8 34=001790 35=0017C2

36=001782 37=001774 38=001766 39=00174A 40=00172E 41=001712 42=001704 43=0016F6

44=0016DA 45=001662 46=001654

ALTER VN CELLSB 1=00197C 2=001A6E

PERFORM VN CELLS

1=003EF0 2=003EB8 3=003E1A 4=003D70 5=003FBC

REGISTER 15 REGISTER 15 = 0000407C

A

The PSV cells reveal the most information:

■ If NC follows a cell number, you know that the PERFORM range it

represents was never executed.

■ If an address prints next to the cell number, it is the return address for

the last time the associated PERFORM range was executed. Match the

address here with the address of the MOFFSET or OFFSET in the listing to

find the last PERFORM CALL for the PERFORM range.

■ If FT follows the cell number, the last time you executed its PERFORM

range you did not perform it. You either fell into it, through it, and out of

it, or you entered it by a GO TO and then fell out.

Note: Fall-through refers to the process of logically ignoring the exit for

a PERFORM range and continuing downwards, executing the following

contiguous statements.

B

If there is an address for a VN cell, it can mean one of three things:

■ You were in the associated PERFORM range when you abended, and the

address is the return address.

■ You were in the PERFORM range earlier in the execution but somehow

branched out instead of going through the normal exit.

Page 82: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

82 User Guide

■ The VN cell represents an ALTERED GO TO. The cell contains the

destination address for the next execution of the ALTERED GO TO.

Note: The NC code, ―never called,‖ is not used because this condition

cannot be determined with VN cells. The FT code for a VN cell means that

the fall-through address was found there. This is meaningful if your

program abended while a VN PERFORM range was active. It means you

did not enter this PERFORM range by a PERFORM statement.

Paragraph Flow Report

The Paragraph Flow report is an optional section of the Detector Abend report.

PFLOW lists the source name and address of the last nnnnn paragraphs executed

up to the time of the abend. Where nnnnn is the programmer-specified PFLOW

value rounded up to the next power of two, not to exceed 32768. The default is

64. If the total number of paragraphs executed is less than nnnnn, the report

shows only what was executed. These addresses are relative to the beginning of

the COBOL program and match up with the addresses given by MOFFSET and

LIST. If the Condensed Source Listing is not available, only the addresses are

printed; the PARAGRAPH NAME field is blank.

************************ RELATIVE ADDRESS OF THE LAST 64 PARAGRAPHS

* PARAGRAPH FLOW * EXECUTED (IN ORDER OF EXECUTION, LEFT TO RIGHT) ************************ 'COUNT' SHOWS CONSECUTIVE EXECUTIONS IF GREATER THAN 1

COUNT OFFSET *------PARAGRAPH NAME------* COUNT OFFSET *-------PARAGRAPH NAME-------* 18 003356 CHECK-1-LOOP. 003412 CHECK-2.

20 003496 CHECK-2-LOOP. 003586 CHECK-3.

0037C8 CHECK-4. 00381A CHECK-5.

003872 CHECK-6. 0047CC WRITE-LINE

003C32 PARAGRAPH-0. 003CBC PARAGRAPH-1.

003D18 PARAGRAPH-2. 003D3C PARAGRAPH-3.

2 003D50 PARAGRAPH-4. 003DC0 PARAGRAPH-6.

003E98 PARAGRAPH-8. 003E28 PARAGRAPH-7.

003E98 PARAGRAPH-8. 003E28 PARAGRAPH-7.

2 003F1A PARAGRAPH-10. 003F58 PARAGRAPH-11.

003F6C PARAGRAPH-12. 003F96 PARAGRAPH-13.

003FAA PARAGRAPH-RETURN. 003FE0 PARAMETER-FORCED-ABEND 00417A WORKING-STORAGE-INIT 003356 CHECK-1-LOOP.

The paragraph names or addresses are listed from left to right in order of

execution, meaning the one executed most recently appears last. A number to

the left of an address indicates the number of consecutive times that the

paragraph was executed, if it was executed more than once. If the paragraph

was executed only once, the COUNT value remains blank.

The PFLOW feature is optional, but it is strongly recommended that you use it for

all debugging runs.

Page 83: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

Chapter 3: Using Detector 83

With a large value for nnnnn, you can treat this report like an internal trace of

execution paths in your program. However, note the following considerations

concerning this feature:

■ This is a wraparound facility, so you must read the report from the

bottom-up and right-to-left.

■ For large values of nnnnn, your REGION size may be affected. To estimate

this requirement, multiply nnnnn times four. This gives you the number of

bytes required for the PFLOW table areas.

PL/I Reports

While many of Detector's testing features are provided exclusively for COBOL

applications, the abend reporting and SNAP features are available for PL/I and

Assembler programs as well.

This section describes the information provided by Detector for PL/I programs.

Program Statistics

For each program in the report, this report contains statistics about the compile,

link, and symbolic postprocessing used when the program was built.

********************

* PROGRAM PLITEST1 *

******************** A

COMPILED ON 20 APR,2004 AT 11.49.52 WITH PL/I FOR Z/OS 3.2.0

B SYMBOLIC INFORMATION RETRIEVED FROM CDE.DEVL.OPT31.PROTSYM

MEMBER: PLITEST DATE: 20 APR,2004 TIME: 11.49.52 TYPE: PROTSYM

C LINKED ON 20 APR 2004 AT 11:49:58

LOAD LIBRARY: RYARO02.LOAD

MODULE LENGTH: 000047C0 (DECIMAL 18,368)

A

This section contains compile statistics, including the date and time of

compilationand the compiler and release information.

B

When symbolic information is used to format the report, this section

identifies the name of the symbolic file, and the date and time of the

symbolic listing used.

C

Link-edit information including the date and time that the load module was

created, the name of the load library from which the program was loaded,

the length of the module, and the linkage editor options used.

Page 84: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

84 User Guide

Active Procedures

When one or more PL/I programs are active at the time of an abend, Detector

reports on each active PL/I procedure. The information provided for each

procedure includes:

■ Variables defined to the procedure

■ Registers when last in control

■ Dynamic Save Area (DSA)

Procedure Variables

The following sample report shows the variable display for an active PL/I

procedure:

*************

* VARIABLES *

*************

DCL# LVL FIELD NAME VALUE/LOCATION ATTRIBUTES

----- --- --------------------------- -------------------------------- ----------------------------------------- 000365 PIC_INIT ? X '00000000000000000000000000000000' AUTOMATIC CHARACTER(31)

(+000016) X '000000000000000000000000000000'

000368 01 TTP ADDRESS=12268BD1 STRUCTURE AUTOMATIC 000368 02 TTPT * PPPP TABLE TP PPPP * CHARACTER(32)

000368 02 TP_PICTURE_TABLE(1) ADDRESS=12268BF1 STRUCTURE DIM(18)

000368 03 TPICTURE(1) ** CHARACTER(31) VARYING

000368 03 TDEC(1) ? X '0000' FIXED DECIMAL(3)

000368 03 TBIN(1) +0 FIXED BINARY(15)

<UNMERGED DATA FOR TP_PICTURE_TABLE>

X '00000000000000000000000000000000' LENGTH 646

LINES 000016-000624 SAME AS ABOVE

(+000640) X '000000000000'

000375 TTP2(1) +0 AUTOMATIC DIM(18) FIXED BINARY(15)

<UNMERGED DATA FOR TTP2> X '00000000000000000000000000000000' LENGTH 34

(+000016) X '00000000000000000000000000000000' (+000032) X '0000'

Variable storage can be displayed in merged format (shown above) or in dump

format depending on your option settings. The following options control merging

for PL/I variables:

■ MRGAUTO—Merges symbolic names onto PL/I automatic storage.

■ MRGBASED—Merges symbolic names onto PL/I based variable storage.

■ MRGCNTLD—Merges symbolic names onto PL/I controlled storage.

■ MRGPARMS—Merges symbolic names onto PL/I parameter storage.

■ MRGSTAT—Merges symbolic names onto PL/I static storage.

For more information about the merged and dumped data formats, see Merged

Versus Dumped Data Displays (see page 128).

Page 85: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

Chapter 3: Using Detector 85

Registers

For each procedure, the general purpose register values display at the time when

the procedure was last in control.

For abending procedures, these are the current register values.The floating point

registers are also included. For all other procedures, these are the registers

when the procedure last transferred control to another procedure or program.

The following sample report shows the registers for an abending PL/I procedure:

**********************

* REGISTERS AT ABEND *

**********************

GENERAL REGISTERS:

R0 12268EA0

R1 122683C8 R2 00000024

R3 12102D9A DISP +00003A IN PROCEDURE INIT_TP

R4 00000000 R5 121035E8 DISP +000000 IN STATIC

R6 12102FD8 DISP +000278 IN PROCEDURE INIT_TP

R7 00000001 R8 000002CC

R9 1228A868

R10 12103604 DISP +00001C IN STATIC R11 122683C8

R12 12113650

R13 12268A78 DISP +000000 IN DSA R14 12268EA0

R15 92102EF0 DISP +000190 IN PROCEDURE INIT_TP

FLOATING-POINT REGISTERS:

FPC F0000000 FR0 41100000 00000000 1.0 FR8 00000000 00000000 0.0

FR1 00000000 00000000 0.0 FR9 00000000 00000000 0.0

FR2 34000000 00000000 0.0 FR10 00000000 00000000 0.0 FR3 00000000 00000000 0.0 FR11 00000000 00000000 0.0

FR4 5B4EE2D6 D415B85A 1.0E+32 FR12 00000000 00000000 0.0

FR5 00000000 00000000 0.0 FR13 00000000 00000000 0.0

FR6 4DCEF810 00000000 3.641037 E+15 FR14 00000000 00000000 0.0

FR7 00000000 00000000 0.0 FR15 00000000 00000000 0.0

Page 86: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

86 User Guide

Dynamic Save Area

For each procedure, the Dynamic Save Area (DSA) is also displayed:

*********************

* DYNAMIC SAVE AREA *

*********************

DSA 12268A78 LENGTH 00000158 (DECIMAL 344)

ADDRESS OFFSET

12268A78 000000 10000000 122683C8 00000000 92102E3C 9219A6C8 1210326C 12268B10 00000000 *......cH....k...k.wH...%........*

12268A98 000020 12102D9A 12268B48 121035E8 12102FD8 00000001 12268B4C 1228A868 12103604 *...........Y...Q.......<..y.....*

12268AB8 000040 122683C8 00000000 00000000 12268EC8 00000000 00000000 00000000 00000000 *..cH...........H................*

12268AD8 000060 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 *................................*

12268AF8 000080 00000000 00000000 00000000 00000000 00000000 00000000 12268B4C 12268B48 *...........................<....*

12268B18 0000A0 12268B60 1210326C 00000000 00000000 00000000 00000000 00000000 00000000 *...-...%........................* 12268B38 0000C0 00000000 00000000 12268EA0 12268BD1 00000001 000002CB 00000002 00000002 *...............J................*

12268B58 0000E0 00000012 00000001 00000000 00200002 00000020 00000026 00000026 00000012 *................................*

12268B78 000100 00000001 001F8002 00000041 00000026 00000026 00000012 00000001 00000043 *................................* 12268B98 000120 00000026 00000026 00000012 00000001 00000000 00000000 122683C8 12268460 *..........................cH..d-*

12268BB8 000140 00000000 00000000 00000000 00000000 0000001C 00000000 *........................*

Storage

After all of the active procedures have been reported, the program storage is

displayed. This includes both static and external program storage areas:

Page 87: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

Chapter 3: Using Detector 87

Static

Static storage is displayed in dump format, as shown next:

***********

* STORAGE *

***********

******************

* STATIC STORAGE *

******************

STATIC 121035E8 LENGTH 000003B4 (DECIMAL 948)

ADDRESS OFFSET

121035E8 000000 12103CB8 121036AC 12103CB8 121036C4 1228A6F8 1228A748 1228A800 1228A848 *...............D..w8..x...y...y.*

12103608 000020 1228A8A8 1228A540 1228A1E8 1228A2C0 00000000 00008000 00000002 00050002 *..yy..v ..~Y..s{................*

12103628 000040 00060002 00000000 00000000 00000000 00000000 00000000 02060000 00000004 *................................* 12103648 000060 02020240 00000005 02040240 00000005 0206FF00 00000004 02040240 00000007 *... ....... ............... ....*

12103668 000080 02020240 0000004C 00000000 00030002 00000003 00000005 00800080 00000000 *... ...<........................*

12103688 0000A0 00000001 0C008400 00000050 00000000 00000001 00000001 00000008 00000001 *......d....&....................* 121036A8 0000C0 00010000 12289D7C 00000801 00600602 12102FD8 12103680 121036AC 1228A1AC *[email protected]..........~.*

121036C8 0000E0 00444042 00A3AE01 12102FE0 00000000 00000000 C5D9D9D6 D940C3D6 D5C4C9E3 *.. ..t.....\........ERROR CONDIT*

121036E8 000100 C9D6D540 D9C1C9E2 C5C44040 40000000 0000000C 0000000A 00000005 00000001 *ION RAISED ...................* 12103708 000120 00000002 00000005 00000001 D1C1D5C6 C5C2D4C1 D9C1D7D9 D4C1E8D1 E4D5D1E4 *............JANFEBMARAPRMAYJUNJU*

12103728 000140 D3C1E4C7 E2C5D7D6 C3E3D5D6 E5C4C5C3 D0000328 00100000 6E3BFFE0 00000000 *LAUGSEPOCTNOVDEC}.......>..\....*

12103748 000160 00000000 00000000 00000000 90010000 12102FEC 00000000 00000000 00000000 *................................* 12103768 000180 00000000 00000000 00000000 00200002 00000020 00000026 00000026 00000001 *................................*

12103788 0001A0 00000001 001F8002 00000041 00000026 00000026 00000001 00000001 00000043 *................................*

121037A8 0001C0 00000026 00000026 00000001 00000001 00000000 000A0002 0000000A 0000000D *................................* 121037C8 0001E0 0000000F 00010000 0000000F 00020001 00000010 00000009 00000009 00000003 *................................*

121037E8 000200 00000001 00000013 00000009 00000009 00000003 00000001 00060002 0000002B *................................*

12103808 000220 00000004 00000003 00000002 00000001 00000001 00000003 00000001 00010002 *................................* 12103828 000240 00000000 000A0002 0000000A 0000000D 0000000F 00010000 0000000F 00020001 *................................*

12103848 000260 00000010 00000008 00000008 00000001 00000001 00000013 00000008 00000008 *................................*

12103868 000280 00000001 00000001 00000017 00000002 00000001 00000001 00000001 00000001 *................................* 12103888 0002A0 00000001 00000001 00010002 00000018 00040002 00000000 00000000 000A0002 *................................*

121038A8 0002C0 0000000A 0000000D 0000000F 00010000 0000000F 00020001 00000010 00000008 *................................*

121038C8 0002E0 00000008 00000001 00000001 00000013 00000008 00000008 00000001 00000001 *................................* 121038E8 000300 00000017 00000002 00000001 00000001 00000001 00000001 00000001 00000001 *................................*

12103908 000320 00010002 00000018 00040002 00000000 00000000 000A0002 0000000A 0000000D *................................*

12103928 000340 0000000F 00010000 0000000F 00020001 00000010 0000000F 0000000F 00000003 *................................*

12103948 000360 00000001 00000013 00000015 0000000F 00000003 00000001 00000006 00000002 *................................*

12103968 000380 00000001 00060002 0000003D 00000004 00000003 00000002 00000001 00000001 *................................*

12103988 0003A0 00000003 00000001 00010002 00000043 00040002 *....................*

External

Each external storage definition is displayed separately, as shown below:

********************

* EXTERNAL STORAGE *

********************

Page 88: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

88 User Guide

A B C

EXTEATA 121039A0 LENGTH 00000015 (DECIMAL 21)

ADDRESS OFFSET

121039A0 000000 D C5E7E3C5 D9D5C1D3 0000001C 00000000 00000000 00 *EXTERNAL.............*

EXTETAX 121039B8 LENGTH 00000015 (DECIMAL 21)

ADDRESS OFFSET

121039B8 000000 00C5E7E3 C5D9D5C1 D300002C 00000000 00000000 00 *.EXTERNAL............*

CNTLAR2 121039D0 LENGTH 00000004 (DECIMAL 4)

ADDRESS OFFSET 121039D0 000000 1228A728 *..x.*

CNTLAR4 121039D8 LENGTH 00000004 (DECIMAL 4) ADDRESS OFFSET

121039D8 000000 1228A7C0 *..x{*

CNTLTAX 121039E0 LENGTH 00000004 (DECIMAL 4)

ADDRESS OFFSET

121039E0 000000 1228A630 *..w.*

CNTLPTR 121039E8 LENGTH 00000004 (DECIMAL 4)

ADDRESS OFFSET 121039E8 000000 1228A248 *..s.*

ONE_VAR 121039F0 LENGTH 00000004 (DECIMAL 4) ADDRESS OFFSET

121039F0 000000 00000000 *....*

ANOTVAR 121039F8 LENGTH 00000004 (DECIMAL 4)

ADDRESS OFFSET

121039F8 000000 00000000 *....*

A

The name of the control section created by the PL/I compiler for the external

storage area.

B

The absolute address of the external storage area.

C

The length of the external storage.

D

If the external storage display requires more than one line, each line displays

the absolute address and the offset within the external storage for the data

on that line.

Note: External storage is not displayed for programs that have been compiled

using Enterprise PL/I for z/OS and OS/390 with the RENT option.

Page 89: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

Chapter 3: Using Detector 89

Program Storage Dump

At the end of the formatted displays for each active PL/I program, the program

storage is displayed in dump format, as shown next:

*******************

* CSECT PLITEST1 *

*******************

ADDRESS OFFSET

121008C0 000000 F2F0F0F4 F0F4F2F0 F1F1F4F9 F5F2F0F3 F0F2F0F0 00280801 02035B00 079E0000 *20040420114952030200......$.....* 121008E0 000020 04741F07 1F1F0F00 29612102 018C126C 36000301 0FE81210 35E80000 03B40000 *........./.....%.....Y...Y......*

12100900 000040 47F0F022 01C3C5C5 000006B0 000029B0 47F0F001 58F0C31C 184E05EF 00000000 *.00..CEE.........00..0C..+......*

12100920 000060 07F390EB D00C58E0 D04C4100 E6B05500 C3144130 F03A4720 F01458F0 C28090F0 *.3..}..\}<..W...C...0...0..0B..0* 12100940 000080 E0489210 E00050D0 E00418DE 58503FB2 58603FB6 58103F0A 5010D328 41100000 *\.k.\.&}\....&...-......&.L.....*

12100960 0000A0 5010D32C 58203F0E 5020D330 5010D33C 58103F12 5010D340 41105008 501050DC *&.L.....&.L.&.L.....&.L ..&.&.&.*

12100980 0000C0 D21FD300 60429200 D2FC9200 D2F81B11 4310D2F4 54103F16 4210D2F4 1B114310 *K.L.-.k.K.k.K8....K4......K4....* 121009A0 0000E0 D2F45410 3F1A4210 D2F41B11 4310D2F4 54103F1E 4210D2F4 1B114310 D2F45410 *K4......K4....K4......K4....K4..*

121009C0 000100 3F224210 D2F41B11 4310D2F4 54103F26 4210D2F4 1B114310 D2F45410 3F2A4210 *....K4....K4......K4....K4......*

121009E0 000120 D2F41B11 4310D2F4 54103F2E 4210D2F4 1B114310 D2F45410 3F324210 D2F41B11 *K4....K4......K4....K4......K4..* 12100A00 000140 4310D2F0 54103F16 4210D2F0 1B114310 D2F05410 3F1A4210 D2F01B11 4310D2F0 *..K0......K0....K0......K0....K0*

12100A20 000160 54103F1E 4210D2F0 1B114310 D2F05410 3F224210 D2F01B11 4310D2F0 54103F26 *......K0....K0......K0....K0....*

12100A40 000180 4210D2F0 1B114310 D2F05410 3F2A4210 D2F04110 D2AC5010 D5049240 1000D23F *..K0....K0......K0..K.&.N.k ..K.*

12100A60 0001A0 10011000 5810D504 41106020 58201000 4110D260 50201000 D206D244 606292C6 *......N...-.......K-&...K.K.-.kF*

12100A80 0001C0 D24B9286 D24C4140 00041814 5010D4EC 1A114120 D24F4180 D24F41A0 6069A71E *K.kfK<. ....&.M.....K|..K|..-.x.*

12100AA0 0001E0 000841B0 0008189B 47B03174 18910E8A 5820D4EC 89200010 8A200010 4110D24D *.............j....M.i.........K(*

12100AC0 000200 40201000 D208D228 6071D204 D231607A 4110D238 D206D238 607F4110 D2364120 * ...K.K.-.K.K.-:..K.K.K.-"..K...*

12100AE0 000220 00074020 1000D202 D21C6086 1B114310 D21F5410 3F365610 3F3A4210 D21F1B11 *.. ...K.K.-f....K...........K...*

12100B00 000240 4310D21F 54103F3E 56103F42 4210D21F 1B114310 D21F5610 3F464210 D21F4110 *..K...........K.....K.......K...*

12100B20 000260 D21F5010 D4F01B22 43201000 54203F32 56203F4A 42201000 5810D4F0 1B224320 *K.&.M0.............¢......M0....*

12100B40 000280 10015420 3F4E5620 3F524220 10014110 D2269254 D2264110 D2244120 00064020 *.....+..........K.k.K...K..... .*

12100B60 0002A0 1000D206 D1D06089 D204D1D7 6090D205 D1DC6095 D202D1E2 609B4110 60245820 *..K.J}-iK.JP-.K.J.-nK.JS-...-...* 12100B80 0002C0 10004110 D1E55020 1000D204 D1E9609E D204D1EE 609ED204 D1F3609E D208D1F8 *....JV&...K.JZ-.K.J.-.K.J3-.K.J8*

12100BA0 0002E0 60A3D209 D20160AC D204D20B 60B64110 60285820 10004110 D2105020 1000D207 *-tK.K.-.K.K.-...-.......K.&...K.*

12100BC0 000300 D21460BB D205D147 60C39201 D14D9203 D14E9205 D14F9209 D1509211 D1519221 *K.-.K.J.-Ck.J(k.J+k.J|k.J&k.J.k.* 12100BE0 000320 D1529241 D1534110 00814010 D1544110 01014010 D1564110 02014010 D1584110 *J.k.J....a .J..... .J..... .J...*

12100C00 000340 04014010 D15A4110 08014010 D15C4110 0FFF4010 D15EA718 20014010 D160A718 *.. .J!.... .J*.... .J;x... .J-x.*

12100C20 000360 40014010 D1625810 3F565010 D1645810 3F5A5010 D1685810 3F5E5010 D16C5810 * . .J.....&.J....!&.J....;&.J%..* 12100C40 000380 3F625010 D1705810 3F665010 D1745810 3F6A5010 D1785810 3F6E5010 D17C5810 *..&.J.....&.J....¦&.J....>&.J@..*

12100C60 0003A0 3F725010 D1805810 3F765010 D1845810 3F7A5010 D1885810 3F7E5010 D18C5810 *..&.J.....&.Jd...:&.Jh...=&.J...*

12100C80 0003C0 3F825010 D1905810 3F865010 D1945810 3F8A5010 D1985810 3F8E5010 D19C5810 *.b&.J....f&.Jm....&.Jq....&.J...* 12100CA0 0003E0 3F925010 D1A0A718 134A4010 D1A45810 3F965010 D1A84110 003A4010 D1ACA718 *.k&.J.x..¢ .Ju...o&.Jy.... .J.x.*

The program storage dump can be suppressed by program name or prefix using

the CAOUXMOD macro in your installation defaults member, CAOUDFRX. For

more information about the CAOUXMOD macro, see the Installation Guide.

Assembler Reports

While many of Detector's testing features are provided exclusively for COBOL

applications, the abend reporting and SNAP features are available for PL/I and

Assembler programs as well.

This section describes the information provided by Detector for Assembler

programs.

Page 90: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

90 User Guide

Program Statistics

For each program in the report, this report contains statistics about the compile,

link, and symbolic postprocessing used when the program was built.

********************

* PROGRAM CARXDEMA *

******************** A

SYMBOLIC INFORMATION RETRIEVED FROM CDE.DEVL.OPT31.PROTSYM

MEMBER: CARXDEMA DATE: 20 APR,2004 TIME: 11.29.00 TYPE: PROTSYM B

LINKED ON 20 APR 2004 AT 11:29:58

LOAD LIBRARY: DAVSC01.LOAD MODULE LENGTH: 000002D8 (DECIMAL 728)

LINK OPTIONS: AC(0), AMODE(31), NOOVLY, NORENT, REUS, RMODE(24)

A

When symbolic information is used to format the report, this section

identifies the name of the symbolic file, and the date and time of the

symbolic listing used.

B

Link-edit information including the date and time that the load module was

created, the name of the load library from which the program was loaded,

the length of the module, and the linkage editor options used.

Program Status Word

For the abending Assembler program, the PSW is displayed as follows:

*********************** * PROGRAM STATUS WORD *

***********************

A 078D3000 80000000 00000000 12100E58

B C D

31-BIT ADDRESSING MODE CC = 3 PRIMARY-SPACE MODE

A

The dump-formatted display of the 128-bit Program Status Word.

B

The addressing mode (24, 31, or 64) at the time of the abend.

C

The value of the condition code at the time of the abend.

D

The address space mode at the time of the abend (Primary-Space,

Secondary-Space, Home-Space, or Access-Register).

Page 91: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

Chapter 3: Using Detector 91

Registers

For each active Assembler program, the general purpose register values display

at the time when the program was last in control.

For abending programs, these are the current register valuesThe access

registers and floating point registers are also included. For all other programs,

these are the registers when the program last transferred control to another

program.

The following sample report shows the registers for an abending Assembler

program:

**********************

* REGISTERS AT ABEND *

**********************

GENERAL REGISTERS:

R0 00000000_00000950

R1 00000000_007D06B0

R2 00000000_00006F60

R3 00000000_00000014

R4 00000001_0000001E

R5 00000000_007F2300

R6 00000000_007C4FE0

R7 00000000_7D000000

R8 00000000_007F9780 R9 00000000_007E12F8

R10 00000000_00000000

R11 00000000_007F9260 R12 00000000_12100D28 DISP +000000 IN CSECT CARXDEMA

R13 00000000_00006E70

R14 00000000_12100E8F DISP +000167 IN CSECT CARXDEMA R15 00000000_00000000

ACCESS REGISTERS:

R0 - R3 00000000 00000000 00000000 40C1D9F3

R4 - R7 00000000 40C1D9F5 00000000 40C1D9F7 R8 - R11 00000000 40C1D9F9 00000000 00000000

R12 - R15 00000000 00000000 00000000 00000000

FLOATING-POINT REGISTERS:

FPC 00000000

FR0 00000000 00000000 0.0 FR8 00000000 00000000 0.0

FR1 00000000 00000000 0.0 FR9 00000000 00000000 0.0

FR2 00000000 00000000 0.0 FR10 00000000 00000000 0.0

FR3 00000000 00000000 0.0 FR11 00000000 00000000 0.0

FR4 00000000 00000000 0.0 FR12 00000000 00000000 0.0

FR5 00000000 00000000 0.0 FR13 00000000 00000000 0.0

FR6 00000000 00000000 0.0 FR14 00000000 00000000 0.0

FR7 00000000 00000000 0.0 FR15 00000000 00000000 0.0

Page 92: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

92 User Guide

Addressable Storage

For each register that contains a valid storage address, the data immediately

preceding and following the storage address is also displayed.

The amount of storage displayed for each register is controlled by the REGMAX

installation option. For more information about this option, see the Installation

Guide.

In most cases, the addressable storage is displayed in dump format as follows:

A F

R1 = 00000000_007D06B0 (NO ACTIVE USING)

B C D E

00000000_007D0670 -00040 00000000 00000000 00000000 00000000 *................*

00000000_007D0680 -00030 00000000 00000000 00000000 00000000 *................*

00000000_007D0690 -00020 00000000 00000000 00000000 00000000 *................*

00000000_007D06A0 -00010 00000000 00000000 00000000 00000000 *................*

00000000_007D06B0 00000000 00000000 00000000 00000000 *................* 00000000_007D06C0 +00010 00000000 00000000 00000000 00000000 *................*

00000000_007D06D0 +00020 00000000 00000000 00000000 00000000 *................*

00000000_007D06E0 +00030 00000000 00000000 00000000 00000000 *................* 00000000_007D06F0 +00040 00000000 00000000 00000000 7FFA1930 *............"...*

00000000_007D0700 +00050 007FBA48 80E03D6A 81509B30 00000094 *."...\.¦a&.....m*

00000000_007D0710 +00060 007D0784 00000000 7F609000 80E03944 *.'.d...."-...\..* 00000000_007D0720 +00070 00000C00 00000C58 00000C80 007D06F8 *.............'.8*

00000000_007D0730 +00080 80E0327A 00000004 00FC9980 007D0740 *.\.:......r..'. *

00000000_007D0740 +00090 00000000 007D0740 80E03542 00000000 *.....'. .\......* 00000000_007D0750 +000A0 00000000 007D0BF4 00000002 0000FF02 *.....'.4........*

00000000_007D0760 +000B0 007FE0A8 007D0B64 0000015C 7F609000 *."\y.'.....*"-..*

00000000_007D0770 +000C0 007D06F8 80E0327A 00000001 00F50280 *.'.8.\.:.....5..* 00000000_007D0780 +000D0 00000017 007D0740 80FB40D0 00000002 *.....'. .. }....*

00000000_007D0790 +000E0 00000000 7F609000 7FFA1AE0 00000000 *...."-.."..\....*

00000000_007D07A0 +000F0 00000000 0104111C 00000000 00000000 *................*

A

The contents of the 64-bit general purpose register containing the valid

storage address.

B

For each line of the display, the absolute address corresponding to the start

of the data on the line.

C

For each line of the display, the offset from the register address

corresponding to the start of the data on the line.

D

The addressable data in hexadecimal dump format.

E

The addressable data converted to EBCDIC display format.

F

If symbolic support is available, this indicates whether an active USING was

in effect for this register on the abending statement.

Page 93: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

Chapter 3: Using Detector 93

If symbolic support is available for the program and the general register has an

active USING in effect on the abending statement, the storage may be displayed

in merged format. The MRGDSECT option controls whether to use the merged

format when possible.

The following example shows a merged format display:

A H

R13 = 00000000_00006E70 DSECT: LDATA

B C D E F G

OFFSET FIELD NAME VALUE DISPLAY LENGTH DEF ------ ----------------------- ----------------------------------- ------------------ ------ ---

000000 LDSAVE 00000000 00006F60 00006C90 FF100E18 *......?-..%.....* 72 F

(+000016) 80007AF0 80007AF0 000000A2 00006F60 *..:0..:0...s..?-* (+000032) 00000014 0000001E 007F2300 007C4FE0 *........."...@|\*

(+000048) FD000000 007F9780 007E12F8 00000000 *....."p..=.8....*

(+000064) 007F9260 92100D28 *."k-k...* 000048 LDR14SAV 00000000 *....* 4 F

00004C LDRC 00000000 *....* 4 F

000050 LDABEND 00000000 00000000 *........* 8 F 000058 LDWORK 00000000 00000000 *........* 8 D

000060 LDWORKD 00000000 00000000 00000000 00000000 *................* 18 X

(+000016) 0000 *..* 000072 LDFLAG 0000 *..* 2 X

000074 LDDCB 00000000 *....* 4 F

000074 00000000 00000000 00000000 00000000 *................* 16 B 000084 00000000 *....* 4 A

000088 01 *.* 1 A

000089 0558F0 *..0* 3 A 00008C 0050 *.&* 2 A

00008E 4000 * .* 2 B

000090 00006470 *....* 4 A

000094 02 *.* 1 B

000095 000001 *...* 3 A

000098 90 *.* 1 B

000099 000000 *...* 3 A

00009C 00540050 007CE298 *...&.@Sq* 8 C

0000A4 92 *k* 1 B

0000A5 CE *.* 1 B

0000A6 E6F0 *W0* 2 B

0000A8 00 *.* 1 B 0000A9 000001 *...* 3 A

0000AC 00000001 *....* 4 A

0000B0 0809 *..* 2 H 0000B2 0050 *.&* 2 A

0000B4 00000000 *....* 4 F

0000B8 00006310 *....* 4 A 0000BC 00055948 *....* 4 A

0000C0 00055948 *....* 4 A

0000C4 0000 *..* 2 H 0000C6 0050 *.&* 2 A

0000C8 00 *.* 1 B

0000C9 000001 *...* 3 A 0000CC 00000000 *....* 4 H

0000D0 00000001 *....* 4 A

0000D4 LDOPEN 8F006EE4 *..>U* 4 C 0000D8 LDCLOSE 00000000 *....* 4 C

0000DC LDPLIST 00000000 00000000 00000000 00000000 *................* 20 F

(+000016) 00000000 *....*

Page 94: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

94 User Guide

A

The contents of the 64-bit general purpose register containing a valid

storage address with an active USING at the abending statement.

B

The offset within the mapping structure corresponding to the line of display.

C

The name of the field, if one exists, corresponding to the data displayed on

the each line.

D

The addressable data in hexadecimal dump format.

E

The addressable data converted to EBCDIC display format.

F

The length of the field being displayed.

G

The type of the field as defined in the program.

H

The name of the DSECT used to map the addressable storage in this display.

Page 95: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

Chapter 3: Using Detector 95

Program Storage Dump

At the end of the formatted displays for each active Assembler program, the

program storage for the control section is displayed in dump format.

*******************

* CSECT CARXDEMA *

*******************

ADDRESS OFFSET

12100D28 000000 47F0F070 C3C1D9E7 C4C5D4C1 F0F461F2 F061F0F4 40F1F14B F2F940C1 D3D3C6E4 *.00.CARXDEMA04/20/04 11.29 ALLFU* 12100D48 000020 E2C9D6D5 40C3C160 D6D7E3C9 D4C9E9C5 D961C9C9 40C3D6D7 E8D9C9C7 C8E3404D *SION CA OPTIMIZER/II COPYRIGHT (*

12100D68 000040 C35D40F2 F0F0F440 C3D6D4D7 E4E3C5D9 40C1E2E2 D6C3C9C1 E3C5E240 C9D5E3C5 *C) 2004 CA INTE*

12100D88 000060 D9D5C1E3 C9D6D5C1 D36B40C9 D5C34B40 90ECD00C 18CF4130 00F01803 4510C080 *RNATIONAL, INC. ..}......0....{.* 12100DA8 000080 0A0A1821 18411F51 0E2450D0 10045010 D00818D1 41F00004 4110C2C8 5840021C *..........&}..&.}..J.0....BH. ..*

12100DC8 0000A0 5840400C 41404018 17334330 40001233 4780C0C8 D5074004 10004780 C0C64143 *. .. ..... .....{HN. .....{F..*

12100DE8 0000C0 400047F0 C0A817FF 12FF4770 C1C29A0F C214E340 C2BC0004 4DF0C0E4 C3C1D6C4 * ..0{y......AB..B.T B...(0{UCAOD* 12100E08 0000E0 E2D5C1D7 4100F000 1B110A08 18F005EF 4500C0FC C3C1D6C4 E2D5C1D7 0A09D25F *SNAP..0......0....{.CAODSNAP.. K̂ *

12100E28 000100 D074C254 D203D0D4 C2B44110 D0D494F0 1000960F 100043E1 00004100 D0745001 *}.B.K.}MB...}Mm0..o.........}.&.*

12100E48 000120 000042E1 00000A13 9110D0A4 47E0C1EC FA30D050 C2D0D203 D0D8C2B8 4110D0D8 *........j.}u.\A...}&B}K.}QB...}Q* 12100E68 000140 43E10000 4100D074 50010000 42E10000 0A144110 D0749101 10174710 C1A01FFF *......}.&...........}.j.....A...*

12100E88 000160 BFF71015 58E0F000 12EE4770 C1769130 F0044770 C1A09601 10171BEE 1B11BF13 *.7...\0.....A.j.0...A.o.........*

12100EA8 000180 F00643E0 F0051C0E 41101008 9140F004 47E0C198 41101008 18014110 F0000A0A *0..\0.......j 0..\Aq........0...*

12100EC8 0001A0 5820D04C 181D58D0 D0044100 00F01800 41101000 0A0A58E0 D00C18F2 980CD014 *..}<...}}....0.........\}..2q.}.*

12100EE8 0001C0 0B0E0700 4510C1E6 00198000 E2E8E2D7 D9C9D5E3 40C4C440 D5D6E340 C6D6E4D5 *......AW....SYSPRINT DD NOT FOUN*

12100F08 0001E0 C4000000 20000A23 47F0C130 4510C20E 001A8000 C5D9D9D6 D940D6D7 C5D5C9D5 *D........0A...B.....ERROR OPENIN*

12100F28 000200 C740E2E8 E2D7D9C9 D5E30000 00200A23 47F0C130 40C1D9F0 40C1D9F1 00000000 *G SYSPRINT.......0A. AR0 AR1....*

12100F48 000220 40C1D9F3 00000000 40C1D9F5 00000000 40C1D9F7 00000000 40C1D9F9 00000000 * AR3.... AR5.... AR7.... AR9....*

12100F68 000240 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 *................................*

12100F88 000260 00000000 00000000 00000001 00004000 00000001 00000001 90000000 E2E8E2D7 *.............. .............SYSP*

12100FA8 000280 D9C9D5E3 02000050 00000001 00000001 00000000 00000000 00000001 00000001 *RINT...&........................*

12100FC8 0002A0 00000001 00000050 00000001 00000000 00000001 80100FDD 80100FE1 00000001 *.......&........................* 12100FE8 0002C0 0000001E 00000000 E2E8E2D7 D9C9D5E3 1C *........SYSPRINT.*

The program storage dump can be suppressed by program name or prefix using

the CAOUXMOD macro in your installation defaults member, CAOUDFRX. For

more information about the CAOUXMOD macro, see the Installation Guide.

LE Heap Storage Report

If the abending application was executing under the Language Environment (LE)

runtime, Detector can optionally display LE heap storage. This display is

controlled by two options: SAVEHEAP and SHOWHEAP. SAVEHEAP indicates that

LE heap storage is to be saved when the Detector report is created, while

SHOWHEAP indicates that the storage is to be displayed in the formatted report.

SAVEHEAP ON is required at execution time for SHOWHEAP ON to take effect.

Page 96: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

96 User Guide

LE heap storage is displayed in dump format, as follows:

*******************

* LE HEAP STORAGE *

*******************

HEAP 0001B000 LENGTH 00002000 (DECIMAL 8,192) ADDRESS OFFSET

0001B000 000000 C8C1D5C3 0E710FA0 0E710FA0 0E710FA0 0001B000 0001B0A0 00002000 00001F60 *HANC...........................-*

0001B020 000020 0001B000 00000080 00000077 00000000 0E788830 00000000 0E788CB8 00000000 *..................h.............* 0001B040 000040 00000000 04000000 00000000 00038939 00004000 00000001 C6000001 0001F8BC *..............i... .....F.....8.*

0001B060 000060 E2E8E2D7 D9C9D5E3 02000048 00000001 0001E75A 00080078 00000000 00000001 *SYSPRINT..........X!............*

0001B080 000080 0E83B000 0E83B000 00000078 00000001 00000000 00000000 00000000 00000000 *.c...c..........................* 0001B0A0 0000A0 00000000 00000000 00000000 00000000 00000000 0E788CA8 00000000 00000000 *.......................y........*

0001B0C0 0000C0 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 *................................*

LINES 000000E0-00001FC0 SAME AS ABOVE

0001CFE0 001FE0 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 *................................*

Open Files Report

In the Open Files report, Detector formats information from the data

management control blocks and dumps the current logical record for all files in

the job step that remain open and have not been displayed earlier in the File

Section of the Detector Abend report. If the file is a sequentially accessed VSAM

file, the previous logical record is also dumped. Optionally, Detector also dumps

the data management control blocks. These records and blocks may be from

COBOL programs not optimized with the DTECT option, or from any non-COBOL

program in the job step.

*********************

* OPEN FILES REPORT *

*********************

DDNAME=SYSUDUMP DSORG=PS BSAM BUFNO=0

DSN=USER02.USER02A.JOB59924.D0000110.? RECFM=VBA STATUS(OPEN) USAGE(OUTPUT) LRECL=125 BLKSIZE=1632

A DDNAME=PRINT DSORG=PS QSAM BUFNO=5 UNIT=3390,UCB VOL=SER=WRKD28 DSN=USER02.PRINT RECFM=FB

B STATUS(OPEN) USAGE(OUTPUT) LRECL=120 BLKSIZE=120

C CONTENTS OF CURRENT LOGICAL RECORD

----------------------------------

ADDRESS 22BBBE20 LENGTH 00000078 (DECIMAL 120) OFFSET

+000000 40404040 40404040 40404040 40404040 40404040 40404040 40404040 40404040 * *

+000020 40404040 40404040 40404040 40404040 40404040 40404040 40404040 40404040 * * +000040 40404040 40404040 40404040 40404040 40404040 40404040 40404040 40404040 * *

+000060 40404040 40404040 40404040 40404040 40404040 40404040 * *

D CONTENTS OF PREVIOUS RECORD

---------------------------

LENGTH 00000078 (DECIMAL 120)

OFFSET

+000000 40404040 40404040 40404040 40404040 40404040 40404040 40404040 40404040 * *

+000020 40404040 40404040 40404040 40404040 40404040 40C3C160 E2E8D4C4 E4D4D761 * CA SYMDUMP/*

+000040 C2C1E3C3 C8404040 40404040 40404040 40404040 40404040 40404040 40404040 *BATCH *

+000060 40404040 40404040 40404040 40404040 40404040 40404040 * *

Page 97: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

Chapter 3: Using Detector 97

A

DDNAME is the filename and DD statement name.

B

Displays the contents of any current logical record. For input files, the record

just read is displayed in hexadecimal format followed on the right by a

character representation. If the FIRST128 option is specified, only the first

128 bytes of the current logical record are displayed (both in this report and

the FILE SECTION display).

If the file is a sequentially accessed VSAM file, the contents of the previous

record are also displayed (not shown).

Save Area Trace Report

The Save Area Trace is a report that assists you in tracing and debugging

programs in a multimodule environment. This report prints only once for any

given abend reporting sequence. Whether the abend occurs in a multimodule run

and Detector reports on more than one program, or it is a single module run with

only the Detector Abend report, the Save Area Trace prints only one time.

*******************

* SAVE AREA TRACE *

******************* SAVE AREA FOR SYSTEM

A B C D E

SA 00006F58 WD1 00000000 BKL 00000000 FWL 00000000 RET 80FD9278 F EPA B6300908 G R0 FD000009 R1 00006FF0 R2 00000040

R3 007D9D84 R4 007D9D60 R5 007FF5E8 R6 007B6FE0

R7 FD000000 R8 007F9030 R9 007FF210 R10 00000000 R11 007FF5E8 R12 80CB9FBA

SYSTEM CALLED CEE (ASSEMBLER)

SAVE AREA FOR CEE

SA 36313360 WD1 00000000 BKL 00006F58 FWL 00000000 RET 0000BF48

EPA 36300908 R0 00000000 R1 36311778 R2 00000000

R3 00000000 R4 00000000 R5 00000000 R6 00000000

R7 00000000 R8 00000000 R9 00000000 R10 00000000

R11 00000000 R12 363129C0

CEE CALLED CAOEDEMO (COBOL FOR Z/OS NOT CA-OPT)

CAOEDEMO ABENDED

When a program calls a subordinate program, the caller's registers are stored in

an 18-fullword save area to establish the means of return. A series of calling and

called programs establishes a chain of save areas, as shown in the example.

Page 98: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

98 User Guide

In this example, the program called by the system is CAO2DEMO. (The

intervening save area is for the LE runtime). The contents of the save area are

interpreted below (all addresses are absolute hexadecimal):

A

System's save area location.

B

WD1 is the first word of the 18-word save area. It is not used by the system

and is usually zeros.

C

BKL stands for backward link. It points backwards to the location of the prior

save area if any.

D

FWL is the forward link. It points forward to the location of the next save

area, if any. In this example, the forward link of the system save area points

to the location of the save area for the LE runtime.

E

RET represents the return address as an absolute hexadecimal location.

F

EPA means entry point address. When control is passed from System to

CAO2DEMO, this is the point where CAO2DEMO is entered.

G

The next 13 words are used to save the contents of registers zero through

12.

This 18-word save area prints for each active program in the hierarchy leading to

the program which abended. The save area for the abending program does not

display.

Whenever Detector encounters a program in the chain that it cannot identify, it

designates the program in the Save Area Trace as UNKWNnnn where nnn is

1-999. Detector does not determine the program's language.

The information that Detector supplies in this detailed version of the Save Area

Trace can be valuable to the user who understands register conventions and

whose problem involves more than one module.

Page 99: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

Chapter 3: Using Detector 99

IMS Report

The IMS portion of the Detector report is produced whenever a program abends

which accesses an IMS database.

**********************************

* IMS 8.1.0 RELATED INFORMATION * A

**********************************

*****************

* LAST IMS CALL *

*****************

IMS FUNCTION: ISRT C

The IMS report begins by displaying the following information:

A

The release of IMS.

B

If the location of the last IMS call can be determined, it is displayed in the

same format as the abending statement information (not shown).

Note: Call location information is not available under the LE run time.

C

The IMS function used on the last IMS call.

Page 100: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

100 User Guide

****************************************

* CURRENT/LAST DATABASE PCB - DI21PART * A

****************************************

PCB PREFIX:

ADDRESS OFFSET B

00088CA8 000000 00500038 00020028 40404040 00000000 00000000 00000000 00000000 C4C2D3D6 *.&...... ................DBLO*

00088CC8 000020 C1C44040 000060E0 00000000 00000000 00088D30 00088CA8 *AD ..-\...............y*

PCB: C

LINE# LEVEL/FIELD NAME VALUE/LOCATION DEFINITION

------ ------------------------------ -------------------------------------- -----------------------------------------------

000096 01 PCB-AREA-1 BLL=0001+000000 (00088CE0) 000097 02 DBD-NAME *DI21PART* X(08)

000098 02 SEGMENT-LEVEL *02* X(02)

000099 02 STATUS-CODES SPACES X(02) 000100 02 PROCESS-OPTIONS *L * X(04)

000101 02 FILLER +560296 S9(05) BINARY

000102 02 SEG-NAME *STANINFO* X(08) D E F G H I

STATUS SEGMENT NUMBER OF SEGMENT PROCESSING KEY

CODE LEVEL SEGMENTS NAME OPTIONS LENGTH ' ' 02 5 STANINFO L 19

FEEDBACK FROM LAST CALL: J ADDRESS OFFSET

00088D04 000000 F0F2F9F8 F9F0F3F6 60F0F0F1 40404040 40F0F2 *02989036-001 02*

TRACE OF DATABASE CALLS (NEWEST ENTRY FIRST):

-0 ISRT OK K

-1 ISRT OK

-2 ISRT OK

-3 ISRT OK

-4 ISRT OK

-5 ISRT OK

Information about the current or last database PCB is displayed, if it is available:

A

PCB name.

B

The address and contents of the PCB prefix (IMS 4.1.0 and above).

C

The address and contents of the PCB.

The PCB is displayed in merged format if all of these conditions are met:

■ The MERGEDB option is ON.

■ The PCB is defined in the most active COBOL, PL/I, or Assembler

program.

■ Symbolic information is available for that program.

Otherwise, the PCB is displayed in dump format.

D

Status code.

Page 101: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

Chapter 3: Using Detector 101

E

Segment level.

F

Number of segments.

G

Name of last retrieved segment.

H

Processing options.

I

Key length.

J

Key feedback.

K

Call trace information for the JCB.

************************

* CURRENT/LAST SEGMENT * A

************************

LINE# LEVEL/FIELD NAME VALUE/LOCATION DEFINITION

------ ------------------------------ ----------------------------- -------------------------------------

000081 01 SEG00060-INSERT-AREA BLW=0000+0004A8 (3667F578)

000082 02 FILLER *02 742 * X(61) (+000032) * 1200 96 *

000083 02 RIGHT-MAKE-SPAN +63 S9(03)

000084 02 FILLER SPACES X(06) 000085 02 WRONG-MAKE-SPAN ? *06C* 9(03)

000086 02 FILLER SPACES X(12)

*********************

* SSA FOR LAST CALL * B

*********************

ARGUMENT 1:

LINE# LEVEL/FIELD NAME VALUE/LOCATION DEFINITION

------ ------------------------------ ----------------------------- -------------------------------------

000044 01 SEG00010-SSA BLW=0000+0003D0 (3667F4A0) 000045 02 SEG-NAME-00010 *PARTROOT* X(08)

000046 02 BEGIN-OP-00010 *(* X(01)

000047 02 KEY-NAME-00010 *PARTKEY * X(08) 000048 02 REL-OPER-00010 * =* X(02)

000049 02 KEY-VALUE-00010 *02989036-001 * X(17)

000050 02 END-OP-00010 *)* X(01)

Page 102: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

102 User Guide

The rest of the information about the last IMS call is displayed as follows:

A

The current or last segment returned in the user I/O area.

B

The Segment Search Argument (SSA) for the last database call, if available.

If multiple search arguments were passed on the last call, they are displayed

in the order in which they were passed.

The segment and SSAs are displayed in merged format if all of the following

conditions are met:

■ The MERGEDB option is ON.

■ The area is defined in the most active COBOL, PL/I, or Assembler program.

■ Symbolic information is available for that program.

Otherwise, they are displayed in dump format.

********************************

* PROGRAM COMMUNICATION BLOCKS *

******************************** A B

****************************************************

* TERMINAL PCB FOR - RELATIVE NUMBER 1 * (CURRENT OR LAST USED)

****************************************************

PCB PREFIX: C

ADDRESS OFFSET

00049084 000000 00400038 00010018 40404040 00000000 00000000 00000000 00000000 C9D6D7C3 *. ...... .............IOPC *

000490A4 000020 C2404040 00000000 00000000 40404040 40404040 00049084 *B ........ ...d*

PCB: D

ADDRESS OFFSET 000490BC 000000 40404040 40404040 10004040 40404040 40404040 40404040 40404040 40404040 * .. *

000490DC 000020 40404040 40404040 40404040 40404040 00000000 00000000 00000000 00000000 * ................. *

E F G H STATUS DATE AND TIME OF MESSAGE FORMATTING

CODE LAST MESSAGE COUNT

' ' N/A N/A N/A

All of the Program Communication Blocks (PCBs) used by the program are

displayed, beginning with the terminal PCBs, as follows:

A

The PCB name and number.

B

If it is the current or last used terminal PCB, it is marked as such.

C

The address and contents of the PCB prefix (IMS 4.1.0 and above).

Page 103: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

Chapter 3: Using Detector 103

D

The address and contents of the PCB. The PCB is displayed in merged format

if all of these conditions are met:

■ The MERGEDB option is ON.

■ The PCB is defined in the most active COBOL, PL/I, or Assembler

program.

■ Symbolic information is available for that program.

Otherwise, the PCB is displayed in dump format.

E

The status code of the PCB.

F

Date and time of last message.

G

Message count.

H

Formatting attributes.

A B

****************************************************

* DATABASE PCB FOR DI21PART - RELATIVE NUMBER 2 * (CURRENT OR LAST USED) ****************************************************

PCB PREFIX: C

ADDRESS OFFSET

00088CA8 000000 00500038 00020028 40404040 00000000 00000000 00000000 00000000 C4C2D3D6 *.&...... ................DBLO*

00088CC8 000020 C1C44040 000060E0 00000000 00000000 00088D30 00088CA8 *AD ..-\...............y*

PCB: D

LINE# LEVEL/FIELD NAME VALUE/LOCATION DEFINITION

------ ----------------------------- ----------------------------- -------------------------------------

000096 01 PCB-AREA-1 BLL=0001+000000 (00088CE0) 000097 02 DBD-NAME *DI21PART* X(08)

000098 02 SEGMENT-LEVEL *02* X(02)

000099 02 STATUS-CODES SPACES X(02) 000100 02 PROCESS-OPTIONS *L * X(04)

000101 02 FILLER +560296 S9(05) BINARY

000102 02 SEG-NAME *STANINFO* X(08) E F G H I J

STATUS SEGMENT NUMBER OF SEGMENT PROCESSING KEY

CODE LEVEL SEGMENTS NAME OPTIONS LENGTH ' ' 02 5 STANINFO L 19

FEEDBACK FROM LAST CALL: ADDRESS OFFSET K

00088D04 000000 F0F2F9F8 F9F0F3F6 60F0F0F1 40404040 40F0F2 *02989036-001 02*

TRACE OF DATABASE CALLS (NEWEST ENTRY FIRST):

-0 ISRT OK

-1 ISRT OK L -2 ISRT OK

-3 ISRT OK

-4 ISRT OK

-5 ISRT OK

Page 104: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

104 User Guide

The database PCBs are displayed as follows:

A

PCB name and number.

B

If it is the current or last used database PCB, it is marked as such.

C

The address and contents of the PCB prefix (IMS 4.1.0 and above).

D

Displays the address and contents of the PCB. The PCB is displayed in

merged format if all of these conditions are met:

■ The MERGEDB option is ON.

■ The PCB is defined in the most active COBOL, PL/I, or Assembler

program.

■ Symbolic information is available for that program.

Otherwise, the PCB is displayed in dump format.

E

Status code.

F

Segment level.

G

Number of segments.

H

Name of last retrieved segment.

I

Processing options.

J

Key length.

Page 105: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

Chapter 3: Using Detector 105

K

Key feedback.

L

Call trace information for the JCB.

******************

* PARAMETER LIST * A

******************

ADDRESS OFFSET

00006FC8 000000 C4D3C96B C4C6E2E2 C1D4F0F1 6BC4C6E2 E2C1D4F0 F16BF76B F0F0F0F0 6B6BF06B *DLI,DFSSAM01,DFSSAM01,7,0000,,0,*

00006FE8 000020 6BD56BF0 6BE36B6B 6BD56BD5 6B6BD56B 6B6B *,N,0,T,,,N,N,,N,,,*

*******************

* MODULE DFSPRPX0 * B *******************

ADDRESS OFFSET

000078B0 000000 00000000 00006FC0 00000000 00007900 00007A58 000079B0 000078D0 00000000 *......?{......̀ ...:... .̀...}....* 000078D0 000020 C4C6E2D7 C3C3F3F0 00000000 00008E90 00000000 000322F8 00000000 00000000 *DFSPCC30...............8........*

000078F0 000040 00000000 C4C6E2D4 D7D34040 00007C80 00007910 0000FFFF 00049060 007D8B58 *....DFSMPL ..@...̀ ........-.'..*

00007910 000060 E2C3C8C4 D3D6C1C4 E4D5D3C4 040000F0 C4C6E2E2 C1D4F0F1 C4C6E2E2 C1D4F0F1 *SCHDLOADUNLD...0DFSSAM01DFSSAM01* 00007930 000080 40404040 40404040 40404040 40404040 C1404040 00070000 00000000 00000000 * A ............*

00007950 0000A0 00000000 00000000 00007954 80007A84 00000000 F0000122 00009B00 F080D5D5 *..........`...:d....0.......0.NN*

. . . . . . . .

. . . .

00007DF0 000540 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 *................................*

Finally, Detector displays the following areas:

A

The parameter list passed to IMS.

B

A dump of module DFSPRPX0.

C

A dump of module DFSECP10 or DFSECP20, if available (not shown).

Finally, the following report is produced when the ABEND occurs in an LE

environment:

********************

* ENVIRONMENT DATA * ********************

A IMS IDENTIFIER IVP1 B IMS CONTROL REGION TYPE BATCH

C IMS APPLICATION REGION TYPE BATCH

D IMS REGION IDENTIFIER 1

E APPLICAITON PROGRAM NAME DFSSAM01

F PSB NAME DFSSAM01

G TRANSACTION NAME NO TRANSACTION NAME

H USERID FROM PST UNAVAILABLE

Page 106: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

106 User Guide

The Environment Data portion displays the following information:

A

Displays the identifier from the execute parameters.

B

Displays the control region type; BATCH, DB/DC, and so on.

C

Displays the Application region type; BATCH, MPP, BMP, and so on.

D

Displays the region identifier.

E

Displays the name of the application program being run.

F

Displays the name of the PSB currently allocated.

G

Displays the name of the current transaction, if applicable.

H

Displays the user ID from the PST, if available.

Page 107: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

Chapter 3: Using Detector 107

DB2 Reports

The DB2 portion of the Detector report is produced whenever a program abends

which accesses a DB2 database using DB2 for MVS/ESA Version 4.1.0 or above.

****A*********************************************** * DB2 8.1.0 RELATED INFORMATION FOR SUBSYSTEM D81A * B **************************************************** ********************************** * RETURN CODE FROM LAST SQL CALL * C ********************************** DSNT400I SQLCODE = 000, SUCCESSFUL EXECUTION ********************** * LAST SQL STATEMENT * ********************** STATEMENT LOCATION: D COLLECTION-ID OPT2DB2DEMO PACKAGE NAME DB2DEMO CONSISTENCY TOKEN 1841B4DE029F3FE6 SECTION NUMBER 00012 STATEMENT NUMBER 00755 SQL STATEMENT: E SELECT EMP , FIRSTNAME , LASTNAME , DEPT , MANAGER INTO :DCLEMPLOY.EMPLOY-EMP :EMP-IND-1.EMP-IND-EMP , :DCLEMPLOY.EMPLOY-FIRSTNAME :EMP-IND-1.EMP-IND-FNAME , :DCLEMPLOY.EMPLOY-LASTNAME :EMP-IND-1.EMP-IND-LNAME , :DCLEMPLOY.EMPLOY-DEPT :EMP-IND-1.EMP-IND-DEPT , :DCLEMPLOY.EMPLOY-MANAGER :EMP-IND-1.EMP-IND-MANAGER FROM EMPLOY WHERE EMP = :DCLJOB.JOB-EMP

The DB2 report begins with the following information:

A

The version of DB2.

B

The DB2 subsystem-ID.

C

The SQL return code, SQLCODE, and the message associated with that code.

If SQLCODE is non-zero, the SQLSTATE value will also be displayed.

Page 108: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

108 User Guide

D

The location of the last SQL statement executed. (This is either the last SQL

statement before the abend or the abending SQL statement.)

If the DB2 program which contains the last SQL statement is bound into a

package, the location information includes the collection-id, package name,

consistency token, section number, and statement number (as shown

above).

If the DB2 program is not bound into a package, the location information

includes the plan name, DBRM name, consistency token, section number,

and statement number.

In both cases, the statement number refers to the listing generated by the

SQL precompile, not the COBOL compile listing.

E

The last or abending SQL statement. If there is an associated cursor

declaration, it will also be displayed.

Page 109: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

Chapter 3: Using Detector 109

If the last SQL statement is not found in the DB2 catalog (for packages or

plans which were bound remotely, for example), Detector will display the

statement type.

***************************

* HOST VARIABLES (OUTPUT) * ***************************

B

LINE# LEVEL/FIELD NAME PICTURE CLAUSE USAGE VALUE/LOCATION ------ ------------------------------- --------------------------- ---------------- --------------------------------

000275 10 EMPLOY-EMP S9(4) BINARY +47

000287 20 EMP-IND-EMP S9(4) BINARY +0 000276 10 EMPLOY-FIRSTNAME X(30) DISPLAY *C. EVERETT *

000288 20 EMP-IND-FNAME S9(4) BINARY +0

000277 10 EMPLOY-LASTNAME X(20) DISPLAY *MONSTER * 000289 20 EMP-IND-LNAME S9(4) BINARY +0

000280 10 EMPLOY-DEPT S9(4) BINARY +6

000292 20 EMP-IND-DEPT S9(4) BINARY +0 000281 10 EMPLOY-MANAGER S9(4) BINARY +48

000293 20 EMP-IND-MANAGER S9(4) BINARY +0

**************************

* HOST VARIABLES (INPUT) *

************************** B

LINE# LEVEL/FIELD NAME PICTURE CLAUSE USAGE VALUE/LOCATION

------ ------------------------------- --------------------------- ---------------- --------------------------------

000310 10 JOB-EMP S9(4) BINARY +47

***************************

* SQL COMMUNICATIONS AREA *D

***************************

LINE# LEVEL/FIELD NAME PICTURE CLAUSE USAGE VALUE/LOCATION

------ ------------------------------- --------------------------- ---------------- --------------------------------

000188 01 SQLCA GROUP BLW=0000+000848 (00098950)

000189 05 SQLCAID X(8) DISPLAY *SQLCA *

000190 05 SQLCABC S9(9) BINARY +136 000191 05 SQLCODE S9(9) BINARY +0

000192 05 SQLERRM GROUP BLW=0000+000858

(00098960) 000193 49 SQLERRML S9(4) BINARY +0

000194 49 SQLERRMC X(70) DISPLAY SPACES

000195 05 SQLERRP X(8) DISPLAY *DSN *

A

The contents of the SQLDA(s) for the last SQL statement, if applicable (not

shown). If the MERGEDB option is ON and symbolic information is available

for the program, the SQLDA will be mapped. Otherwise, the SQLDA is

displayed in dump format.

B

The contents of the host variables for the last SQL statement, if applicable. If

relevant, the output host variables are displayed following the SQLDA for the

output variables and the input host variables are displayed following the

SQLDA for the input variables. If the MERGEDB option is ON and symbolic

information is available for the program, the host variables are mapped.

Otherwise, the fully qualified name of the host variables are displayed, along

with the address, length, and data in dump format.

Page 110: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

110 User Guide

C

The name and type of DB2 objects referenced by the last SQL statement, if

applicable (not shown). If columns in a table or view are referenced, the

contents of the referenced columns are displayed.

D

The contents of the SQLCA. If the MERGEDB option is ON and the CSL is

available for the program, data item information such as the data name,

picture clause, and usage type is merged with the SQLCA storage.

Otherwise, the address, length, and contents of the SQLCA is displayed in

dump format.

For more information about the merged and dumped data formats, see

Merged Versus Dumped Data Displays (see page 128).

************************** * CONNECTION INFORMATION *

**************************

ACONNECTION MODE BACKGROUND

BCONNECTION TYPE BATCH

CCONNECTION ID BATCH DCORRELATION ID DB2710

EAUTHORIZATION ID RYARO02

*****************************

* APPLICATION PLAN OPT2DEMO * F

*****************************

BIND DATE/TIME 24 AUG,2005 11.25.24 G

BOUND BY RYARO02 H

BIND OPTIONS:J

ACQUIRE(USE), CACHESIZE(1024), CURRENTDATA(YES), CURRENTSERVER(),

DBPROTOCOL(DRDA), NODEFER(PREPARE), DEGREE(1), DISCONNECT(EXPLICIT), DYNAMICRULES(RUN), ENCODING CCSID(500), EXPLAIN(NO),

FUNCTIONTS(2005-08-24-11.25.24.052050), GROUP MEMBER(), IMMEDWRITE(NO),

ISOLATION(CS), KEEPDYNAMIC(NO), OPERATIVE(YES), OPTHINT(), OWNER(RYARO02 ), PATHSCHEMAS(), QUALIFIER(CAOPTII ), RELBOUND(K), RELEASE(DEALLOCATE),

NOREOPT(VARS), SQLRULES(DB2), VALID(YES), VALIDATE(RUN)

TABLE DEPENDENCIES: K

CAOPTII.DIVISN

CAOPTII.DEPART

CAOPTII.EMPLOY CAOPTII.JOB

CAOPTII.TITLES

TABLE SPACE DEPENDENCIES: K

CAOPTII.DIVISN

CAOPTII.DEPART

CAOPTII.EMPLOY CAOPTII.JOB

Page 111: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

Chapter 3: Using Detector 111

The connection and plan information is displayed, as follows:

A

The connection mode.

B

The connection type.

C

The connection ID.

D

The correlation ID.

E

The authorization ID.

F

The application plan name.

G

The date and time when the plan was boundThe bind options.

H

The ID of the user who bound the planThe names, types and authorization ID

of the objects on which the plan is dependent. (If the object is a tablespace,

its database is displayed instead of the authorization ID.)

I

The comment associated with the plan, if applicable (not shown).

J

The bind options.

Page 112: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

112 User Guide

K

The database objects on which the plan is dependent.

*************************************

* PACKAGE SUMMARY FOR PLAN OPT2DEMO * *************************************

******************** * PACKAGE DB2ADD * A

********************

B COLLECTION-ID OPT2DB2DEMO

C BIND DATE/TIME 06 MAR,2008 14.57.52

D PRE-COMPILE DATE/TIME 06 MAR,2008 14.57.22 E CONSISTENCY TOKEN 1841B4DE1D8BFF84

F DBRM LIBRARY USER001.DBRMLIB.D810

H BIND OPTIONS:

CREATOR(USER001), DBPROTOCOL(DRDA), CURRENTDATA(C), DEGREE(1),

ENCODING CCSID(500), EXPLAIN(NO), FUNCTIONTS(2008-03-06-14.57.52.723939),

GROUP MEMBER(), IMMEDWRITE(NO), ISOLATION(CS), KEEPDYNAMIC(NO), OPERATIVE(YES),

OPTHINT(), OWNER(USER001), PATHSCHEMAS(), QUALIFIER(CAOPTII), RELBOUND(L),

RELEASE(DEALLOCATE), REMOTE(NO), REOPT(NONE), SQLERROR(NOPACKAGE),

TYPE(BINDPKG), VALID(YES), VALIDATE(RUN)

PRE-COMPILE OPTIONS: I

APOST, DEC(31), NOGRAPHIC, HOST(IBMCOB), NOTKATAKANA, PERIOD, VERSION()

TABLE DEPENDENCIES: J

CAOPTII.DEPART

CAOPTII.DIVISN

CAOPTII.EMPLOY CAOPTII.JOB

CAOPTII.TITLES

TABLE SPACE DEPENDENCIES:

CAOPTII.DIVISN

CAOPTII.EMPLOY

CAOPTII.DEPART CAOPTII.JOB

The package information is displayed for each package in the plan. If the

DB2ACTIV option is specified, package information is displayed only for the

packages that are active at the time of the abend. The package information

consists of:

A

The package name.

B

The collection ID.

C

The bind date and time.

Page 113: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

Chapter 3: Using Detector 113

D

The precompile date and time.

E

The consistency token.

F

The library where the DBRM resides.

G

The comment associated with the package, if applicable (not shown)The

bind options.

H

The precompile bind options.

I

The names, types and authorization IDs of the DB2 objects on which the

package is dependent. (If the object is a table space, its database name is

displayed instead of its authorization IDprecompile options.)

J

The database objects on which the package is dependent.

**********************************

* DBRM SUMMARY FOR PLAN OPT2DEMO * A

**********************************

*****************

* DBRM DB2DEL * *****************

B PRE-COMPILE DATE/TIME 06 MAR,2008 14.57.26 C CONSISTENCY TOKEN 1841B4DF0D4A201A

D DBRM LIBRARY USER001.DBRMLIB.D810

PRE-COMPILE OPTIONS: E

APOST, DEC(31), NOGRAPHIC, HOST(IBMCOB), NOTKATAKANA, PERIOD, VERSION()

Page 114: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

114 User Guide

Finally, the information for DBRMs that are not bound into a package within the

plan is displayed. If the DB2ACTIV option is specified, DBRM information is

displayed only for the DBRMs that are active at the time of the abend. The DBRM

information consists of:

A

The DBRM name.

B

The precompile date and time.

C

The consistency token.

D

The library where the DBRM resides.

E

The precompile options.

Page 115: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

Chapter 3: Using Detector 115

CA IDMS/DB Report

The CA IDMS/DB portion of the Detector report is produced whenever a program

abends which accesses an CA IDMS/DB database using CA IDMS/DB Version

12.0 or above.

The reports are generated based on the SYSIDMS parameters specified. For

SYSIDMS parameter descriptions, see the CA IDMS/DB documentation.

******************

* CA-IDMS REPORT *

******************

CA-IDMS abend trace Tape Genlevel: G0GJ6M Release: 1600 A

User=USER02 B Batch Local Job

DBNODE= DBNAME=EMPDEMO DICTNODE= DICTNAME= C

*****************

* SYSIDMS parms * D

*****************

ECHO=ON

DMCL=R160DMCL DBNAME=EMPDEMO

ABENDTRACE=ON ABENDTRACE_ENTRIES=255

ABENDTRACE_VIBSNAP=ON ABENDTRACE_SUBSCHEMA_DISPLAY=ON

************************************ * DML trace for subschema=EMPSS01 * E

************************************

VERB=59 BIND SUBSCHEMA-->EMPSS01 DBNAME=EMPDEMO PROGRAM=CAO2IDMS Caller=CAO2IDMS DMLSEQ=000001 *** I D M S

VERB=48 BIND Record REC-->STRUCTURE ADDR=000403A0 Caller=CAO2IDMS DMLSEQ=000002 *** I D M S

VERB=48 BIND Record REC-->SKILL ADDR=000403B0 Caller=CAO2IDMS DMLSEQ=000003 *** I D M S

VERB=48 BIND Record F REC-->OFFICE ADDR=00040400 Caller=CAO2IDMS DMLSEQ=000004 *** I

D M S

VERB=48 BIND Record REC-->NON-HOSP-CLAIM ADDR=00040450 Caller=CAO2IDMS DMLSEQ=000005 *** I D M S

VERB=48 BIND Record REC-->JOB ADDR=00040870 Caller=CAO2IDMS DMLSEQ=000006 *** I D M S

VERB=48 BIND Record REC-->INSURANCE-PLAN ADDR=00040998 Caller=CAO2IDMS DMLSEQ=000007 *** I D M S

VERB=48 BIND Record REC-->HOSPITAL-CLAIM ADDR=00040A20 Caller=CAO2IDMS DMLSEQ=000008 *** I D M S VERB=48 BIND Record REC-->EXPERTISE ADDR=00040B50 Caller=CAO2IDMS DMLSEQ=000009 *** I D M S

VERB=48 BIND Record REC-->EMPOSITION ADDR=00040B60 Caller=CAO2IDMS DMLSEQ=000010 *** I D M S

VERB=48 BIND Record REC-->EMPLOYEE ADDR=00040B80 Caller=CAO2IDMS DMLSEQ=000011 *** I D M S VERB=48 BIND Record REC-->DEPARTMENT ADDR=00040BF8 Caller=CAO2IDMS DMLSEQ=000012 *** I D M S

VERB=48 BIND Record REC-->DENTAL-CLAIM ADDR=00040C30 Caller=CAO2IDMS DMLSEQ=000013 *** I D M S

Page 116: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

116 User Guide

The CA IDMS/DB report begins with the following information:

A

The genlevel and version of CA IDMS/DB.

B

The userid that was used to summit the job and the job type.

C

The DBNODE, DBNAME, DICTNODE, and DICTNAME that were used.

D

The SYSIDMS parameters that were used.

E

The subschema name.

F

A trace of DML verbs for the subschema (the number of commands displayed

in the trace is a user specifiable option).

************************************* * Currencies for subschema=EMPSS01 *

* Compiled: 2007-08-07 13.51.57 *

*************************************

Current DBKEY=X'01250505' (75013:5) For Area EMP-DEMO-REGION

Current DBKEY=X'01259801' (75160:1) For Area ORG-DEMO-REGION

Current DBKEY=X'01259801' (75160:1) For Record DEPARTMENT

Current DBKEY=X'01250505' (75013:5) For Record EMPLOYEE

Current DBKEY=X'01250505' (75013:5) For Set DEPT-EMPLOYEE

Owner DBKEY=X'01259601' (75158:1) For Set DEPT-EMPLOYEE Prior DBKEY=X'01251701' (75031:1) For Set DEPT-EMPLOYEE

Next DBKEY=X'01251809' (75032:9) For Set DEPT-EMPLOYEE

Current DBKEY=X'01250505' (75013:5) For Set EMP-COVERAGE

Owner DBKEY=X'01250505' (75013:5) For Set EMP-COVERAGE

Prior DBKEY=X'01256404' (75108:4) For Set EMP-COVERAGE

Page 117: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

Chapter 3: Using Detector 117

Currencies for all areas, records, and sets in the subschema at the time of the

abend are displayed.

Record Name Record Size Bind Buff 'Prev' Buff 'Curr' Buff

----------- ----------- --------- ----------- ----------- A B

STRUCTURE 8 00041370 * none * * none *

SKILL 76 00041378 * none * * none * OFFICE 76 000413C8 * none * * none *

NON-HOSP-CLAIM 1008 00041418 * none * * none *

JOB 296 00041808 * none * * none * INSURANCE-PLAN 132 00041930 * none * * none *

HOSPITAL-CLAIM 292 000419B8 * none * * none *

EXPERTISE 8 00041AE0 * none * * none *

EMPOSITION 28 00041AE8 * none * * none *

EMPLOYEE 116 00041B08 0D8AB8D0 0D8AB944

DEPARTMENT 56 00041B80 0D8AB9C8 0D8ABA00

DENTAL-CLAIM 932 00041BB8 * none * * none *

COVERAGE 16 00041F60 * none * * none *

************************************************ * Previous image for record DEPARTMENT *

************************************************

ADDRESS 0D8AB9C8 LENGTH 56 (X'00000038') OFFSET

0D8AB9C8 000000 F2F0F0F0 40404040 40404040 40404040 *2000 *

0D8AB9D8 000010 40404040 40404040 40404040 40404040 * * 0D8AB9E8 000020 40404040 40404040 40404040 40404040 * *

0D8AB9F8 000030 40404040 40404040 * *

************************************************

* Current image for record DEPARTMENT * ************************************************

ADDRESS 0D8ABA00 LENGTH 56 (X'00000038') OFFSET

0D8ABA00 000000 F2F0F0F0 C1C3C3D6 E4D5E3C9 D5C740C1 *2000ACCOUNTING A*

0D8ABA10 000010 D5C440D7 C1E8D9D6 D3D34040 40404040 *ND PAYROLL * 0D8ABA20 000020 40404040 40404040 40404040 40404040 * *

0D8ABA30 000030 40F0F0F1 F1000000 * 0011...*

************************************************

* Bind image for record DEPARTMENT *

************************************************

C

LINE# LEVEL/FIELD NAME PICTURE CLAUSE USAGE VALUE/LOCATION

------ ------------------------------- --------------------------- ---------------- ----------------------------

000388 01 DEPARTMENT GROUP BLW=0000+000AF8 (00041B80) 000389 02 DEPT-ID-0410 9(4) DISPLAY 9999

000390 02 DEPT-NAME-0410 X(45) DISPLAY *ACCOUNTING AND PAYROLL*

(+000032)* * 000391 02 DEPT-HEAD-ID-0410 9(4) DISPLAY 11

000392 02 FILLER XXX DISPLAY

Page 118: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

118 User Guide

A

Bind buffer size and address for each record in the subschema.

B

Current and Previous buffer addresses for the records accessed.

C

Current, Previous, and Bind record images for the records accessed. If the

MERGEDB option is ON, the record is defined to the most active program,

and symbolic information is available for the program, the record image is

mapped. Otherwise, the address, length, and contents of the record is

displayed in dump format.

For more information about the merged and dumped data formats, see Merged

Versus Dumped Data Displays (see page 128).

Note: Symbolic support will only be provided in DB2 reports under the following

conditions:

■ For COBOL programs, the DBRM name must match the PROGRAM-ID.

■ For PL/I programs, the DBRM name must match the main procedure name.

Furthermore, the main procedure name may be no more than 7 characters.

■ For Assembler programs, the DBRM name must match the CSECT name.

Page 119: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

Chapter 3: Using Detector 119

********************

* CA-IDMS VIB snap * A

********************

ADDRESS 36459008 LENGTH 00001658 (DECIMAL 5,720)

ADDRESS OFFSET

36459008 000000 E5C2F5F0 00000005 363BBD88 363BBE0E 363BBEE0 363BBEF2 363BBE2E 00000000 *VB50.......h.......\...2........*

36459028 000020 00000000 00000000 00000000 00000000 3640DD08 3643A348 3645A6D4 3645B128 *................. ....t...wM....* 36459048 000040 00000000 00000000 00000000 00000000 00000000 00000000 00000008 36459B54 *................................*

36459068 000060 000642F8 D3D6C3D3 00000003 00000000 00075FC0 363BC2F0 363BC2F0 364593A0 *...8LOCL..........¬{..B0..B0..l.*

36459088 000080 36459148 36459194 363BC2F0 00000000 00000000 40000000 00000000 08000000 *..j...jm..B0........ ...........* 364590A8 0000A0 0000FF08 C5D4D7C4 C5D4D640 00000000 3643AA70 3643A4F0 3645A6FC F0F0F0F0 *....EMPDEMO ..........u0..w.0000*

364590C8 0000C0 00000000 01250505 C3C1D6F2 C9C4D4E2 00000000 3643AA70 3643AA70 3643AA70 *........CAO2IDMS................*

364590E8 0000E0 00000022 00000000 00000000 3643AA70 3645A8F4 3643B6B4 3643B4D8 3645ADA4 *..................y4.......Q...u* 36459108 000100 00000000 0B220B22 0B220B22 00000000 00000000 01250505 3643AA70 00000000 *................................*

36459128 000120 01000000 00000000 00000000 3643A348 F0F461F0 F361F0F8 F1F3F0F6 F3F6F2F8 *..............t.04/03/0813063628*

36459148 000140 00000009 00000000 00000009 00000000 00000000 00000000 00000000 0000000C *................................* 36459168 000160 0000000B 00000019 00000000 00000000 00000000 00000000 00000000 00000001 *................................*

36459188 000180 00000003 D3D6C3D3 00000003 00000000 00000000 00000000 00000000 00000000 *....LOCL........................*

. . . .

. . . .

. . . .

********************* * CA-IDMS VARS snap * B

*********************

ADDRESS 3645A6D4 LENGTH 00000A54 (DECIMAL 2,644)

ADDRESS OFFSET

3645A6D4 000000 E5C1D9E2 40404040 C5D4D7E2 E2F0F140 00000000 3641DC98 00000000 00000000 *VARS EMPSS01 .......q........*

3645A6F4 000020 3641DC98 00000000 04038003 01250505 01250505 3643AA70 36459008 3641480C *...q............................*

3645A714 000040 00000000 00000000 00000000 00000000 FFFFFFFF 000124F9 0001252A 0001252A *.......................9........*

3645A734 000060 000124FE 0001252A 0001252A 000124FA 000124FD 000124FD 04038003 FFFFFFFF *................................*

3645A754 000080 FFFFFFFF 00000000 36459008 364149E0 00000000 00000000 00000000 00000000 *...............\................*

3645A774 0000A0 FFFFFFFF 0001255D 00012575 00012575 00012562 00012575 00012575 0001255E *.......).......................;*

3645A794 0000C0 00012561 00012561 04038003 01259801 01259801 3643A9D8 36459008 36414BB4 *.../.../......q...q...zQ........*

3645A7B4 0000E0 00000000 00000000 00000000 00000000 FFFFFFFF 0001258F 000125A7 000125A7 *...........................x...x*

3645A7D4 000100 00012594 000125A7 000125A7 00012590 00012593 00012593 FFFFFFFF FFFFFFFF *...m...x...x.......l...l........*

3645A7F4 000120 FFFFFFFF 00000000 00000000 00000000 00000000 00000000 00000000 FFFFFFFF *................................* 3645A814 000140 0005B0B0 FFFFFFFF FFFFFFFF FFFFFFFF 00000000 00000000 00000000 00000000 *................................*

3645A834 000160 00000000 00000000 FFFFFFFF 0005B0B0 FFFFFFFF FFFFFFFF FFFFFFFF 00000000 *................................*

3645A854 000180 00000000 00000000 00000000 00000000 00000000 FFFFFFFF 0005B0B0 FFFFFFFF *................................*

A

A Snap of the CA IDMS/DB VIB (Variable IB50 for subschema).

B

A Snap of CA IDMS/DB VARS.

Page 120: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Abend Report

120 User Guide

SUBSCHEMA=EMPSS01

Compiled=2007-08-07 13.51.57 A

Subschema Structure is Network and Unbound B

Area Name Segment

----------------- --------

EMP-DEMO-REGION n/a INS-DEMO-REGION n/a C

ORG-DEMO-REGION n/a

Record Name Stored Rec ID Area Name Data Length Prefix Length Procedures

-------------------------- ------ ------ --------------- ----------- ------------- ----------------------

COVERAGE VIA 400 INS-DEMO-REGION 20 20

DENTAL-CLAIM VIA 405 INS-DEMO-REGION 936 12

DEPARTMENT D CALC 410 ORG-DEMO-REGION 56 16 EMPLOYEE CALC 415 EMP-DEMO-REGION 120 72

EMPOSITION VIA 420 EMP-DEMO-REGION 32 24

EXPERTISE VIA 425 EMP-DEMO-REGION 12 20 HOSPITAL-CLAIM VIA 430 INS-DEMO-REGION 300 8

INSURANCE-PLAN CALC 435 INS-DEMO-REGION 132 8

JOB CALC 440 ORG-DEMO-REGION 300 24 IDMSCOMP Before STORE IDMSCOMP

Before MODIFY

IDMSDCOM After GET

. .

. .

. .

Chain Sorted-> CALC Next,Prior

Owner -------> SR1 Next=00 Prior=04

Member ------> SR6 E Next=00 Prior=04

Member ------> SR7 Next=00 Prior=04

Ckey Offset=16 Length=16 Data Type=Character

Member ------> DEPARTMENT Next=00 Prior=04

Ckey Offset=16 Length=4 Data Type=Numeric (Unsigned) Member ------> EMPLOYEE Next=00 Prior=04

Ckey Offset=72 Length=4 Data Type=Numeric (Unsigned)

Member ------> INSURANCE-PLAN Next=00 Prior=04 Ckey Offset=8 Length=3 Data Type=Character

Member ------> JOB Next=00 Prior=04

Ckey Offset=28 Length=4 Data Type=Numeric (Unsigned) Member ------> OFFICE Next=00 Prior=04

Ckey Offset=16 Length=3 Data Type=Character

Member ------> SKILL Next=00 Prior=04 Ckey Offset=20 Length=4 Data Type=Numeric (Unsigned)

Chain Last --> COVERAGE-CLAIMS Next,Prior Owner -------> COVERAGE Next=12 Prior=16

Via Member --> DENTAL-CLAIM Next=00 Prior=04

Via Member --> HOSPITAL-CLAIM Next=00 Prior=04 Via Member --> NON-HOSP-CLAIM Next=00 Prior=04

Page 121: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Intercepts Report

Chapter 3: Using Detector 121

The final pages of the report display:

A

The compile date and time of the subschema.

B

The subschema structure and whether it is bound or unbound.

C

The associated segment for each area, if applicable.

D

Detailed information about each record in the subschema including storage

mode, record ID, area name, data length, prefix length, and DB procedures.

E

Detailed information about each set in the subschema including owner

record, member records, set type, and set pointers.

Intercepts Report

The output for the INTERCEPTS feature is brief, yet it contains everything you

need to know to correct a data exception or decimal divide exception.

*********************

* INTERCEPTS REPORT * *********************

INTERCEPTS PERMITTED = 2 A

*************************

* INTERCEPTED STATEMENT *

************************* B C

PROGRAM: CAO2DEMO OFFSET: 004CBC LINE: 001370

D MOVE MASK1 TO BINARY-1

E

LINE# LEVEL/FIELD NAME VALUE/LOCATION DEFINITION ------ ------------------------------- --------------------------- ---------------------------------------------

000403 03 MASK1 *&&* X(2)

000252 03 BINARY-1 +20560 S9(4) BINARY

F

INTERCEPTED INSTRUCTION

4FE0 D448 CONVERT

OPERAND: REG 14 G

VALUE: 8E505788 H

OPERAND: TEMP STORAGE CELL TGT DISP 000448

VALUE: 0000000000000CC5 <-- NOT NUMERIC (SET TO ONE) I

J K L

RELATIVE INTERRUPT 00004CC2 INTERCEPT COUNT 1 CODE 0C7

Page 122: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Intercepts Report

122 User Guide

A

When using the INTERCEPTS feature, you must specify the maximum

number of exceptions you want Detector to intercept. This value must not be

greater than 32,767. When the number of exceptions exceeds the specified

number, the program is allowed to abend and a Detector Abend report is

produced. In this example, two (2) intercepts are allowed prior to

termination.

Note: In a multimodule environment, more than one program can use the

INTERCEPTS feature concurrently. When more than one program is using

the INTERCEPTS feature, the maximum number of exceptions refers to the

maximum number of exceptions of all modules together rather than the

maximum number of each individual module.

B

Identifies the program from which the exception originated.

C

The line number and the MOFFSET address are displayed with each COBOL

statement. Use the line number and the MOFFSET address to locate the

statement in your program.

D

The COBOL statement(s) from your program which caused the exception.

E

The COBOL variable name(s) referenced by the abending source statement,

and their values. This information is available whenever symbolic

information is obtained by Detector from a PROTSYM file or from a CSL file if

MXREF was specified during optimization.

F

The machine instruction that caused the abend. If the ASMINST option is set

to OFF, this output is suppressed.

G

The instruction operands for the abending instruction. If possible, the

operands are related back to an area in the COBOL program such as a

LITERAL or TEMP STORAGE CELL.

The Base Locator number and the displacement from the Base Locator is

given and can be used to locate the data areas in your program. For COBOL

II programs, the displacement may exceed 4 KB.

If the ASMINST option is set to OFF, the instruction operands are

suppressed.

H

The hexadecimal representation of the actual storage value associated with

the operand.

Page 123: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Intercepts Report

Chapter 3: Using Detector 123

I

A message area used to pinpoint the cause of the exception and indicate any

action taken by Detector. If WSINIT was specified at compile-time and the

cause was due to uninitialized Working Storage, Detector indicates this here.

J

The location of the program exception relative to the beginning of the COBOL

program.

K

The interrupt count number. It indicates the number of intercepts that have

been reported.

L

The interrupt code (0C7 or 0CB).

After Detector generates the information for the Intercepts report, it corrects the

offending data item and reexecutes the instruction as follows:

■ In the case of a data exception (0C7), it sets the value of the invalid item to

1.

■ When a decimal-divide exception (0CB) occurs, Detector sets the divisor to

1.

■ Detector corrects the bad data to prevent multiple intercepts for the same

item. After correcting the data, Detector reexecutes the abending instruction

so that predictions can be made concerning the outcome.

Page 124: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Snap Report

124 User Guide

Snap Report

The SNAP feature of Detector produces nearly the same output as the Detector

Abend report. However, since snapshots do not result from an abend, those

items that are concerned with the abend in the Detector Abend report are

omitted.

********************

* SNAP OF CAO2DEMO *

********************

COMPILED ON 23 APR,2004 AT 12.02.38 WITH COBOL II 1.4.0

COMPILE OPTIONS: ADV, APOST, NOAWO, NOCMPR2, DATA(31), DBCS, NODECK, NODUMP, DYNAM, NOFASTSRT, NOFDUMP, NOLIB, LIST, MAP, NONAME, NONUMBER,

OBJECT, NOOFFSET, NOOPTIMIZE, NUMPROC(PFD), RENT, RESIDENT,

NOSEQUENCE, SOURCE, NOSSRANGE, NOTERM, NOTEST, TRUNC(STD), NOVBREF, NOWORD, XREF, ZWB

OPTIMIZED WITH CA OPTIMIZER/II R3.1 OPTIMIZER/II OPTIONS: NOCICS, NODBGSLEEP, DTECT, NOIDMSDC, FDCHECK, PARMCHK,

PFLOW, SUBRNGCK, NOTPMON, WSINIT, XCOUNT, XTIME

SYMBOLIC INFORMATION RETRIEVED FROM AD1DEV.MIKED.PROTSYM

MEMBER: CAO2DEMO DATE: 23 APR,2004 TIME: 12.02.38 TYPE: PROTSYM

LINKED ON 23 APR 2004 AT 00:00:00

LOAD LIBRARY: MIKED.QA.LOAD

MODULE LENGTH: 00006528 (DECIMAL 25,896) LINK OPTIONS: AC(0), AMODE(31), NOOVLY, NORENT, NOREUS, RMODE(24)

******************************

* LAST STATEMENT BEFORE SNAP *

******************************

PROGRAM: CAO2DEMO OFFSET: 004F92 LINE: 001413

IF PARM-MODE = 'DTE'

LINE# LEVEL/FIELD NAME VALUE/LOCATION DEFINITION

------ ------------------------------- --------------------------- --------------------------------------------- 000157 03 PARM-MODE *DTE* X(3)

SNAP WAS CALLED FROM ADDRESS 0E505A80 AT OFFSET +004FA8 IN PROGRAM CAO2DEMO SNAP COUNT IS 1

ENTRY POINT ADDRESS IS 0E500AD8 AT OFFSET +000000 IN PROGRAM CAO2DEMO ENTRY COUNT IS 1

A snapshot consists of the following output:

■ Program statistics.

■ The program's address information and registers at the time the SNAP was

invoked.

■ The contents of the File Section at SNAP time. The format is the same as the

format of the Detector Abend report.

■ The Working-Storage Section, Local-Storage Section and the Linkage

Section.

■ A snapped display of the Memory Map.

■ The PERFORM Return Address Analysis.

Page 125: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

CAIOPTS File Processing Report

Chapter 3: Using Detector 125

■ A display of LE heap storage at the time of the SNAP (optional).

■ The last paragraphs executed prior to the SNAP call, up to 32768, depending

on the value of PFLOW.

WARNING! When using the SNAP option with Extended Detector, each call to

CAODSNAP generates a separate SNAP report in your central VSAM repository. If

your program contains multiple SNAP calls or a SNAP call within a loop, you can

write the output to the CAIPRINT DD alone, to avoid flooding the repository. See

the PRTREPT option description in the chapter ―Using Options.‖

CAIOPTS File Processing Report

The CA Execution Monitor produces this report at the start of application

execution, after the Execution Monitor has read and processed the Detector

and/or Analyzer runtime options. This report displays the input options read

from the data set defined by the CAIOPTS DD, if present. The body of the report

is a display of the 80-byte records in the CAIOPTS data set exactly as read by the

Execution Monitor.

CA CAIOPTS FILE PROCESSING PAGE 1

CA OPTIMIZER/II R7 1005AOX00 INPUT OPTIONS DISPLAY 23 APR 2004 12.07.18

...+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8

INTERCEPTS 2 SNAP 1

XCOUNT ON

XTIME ON PFLOW ON

XREPORT ON

SOURCEMAP ALL INSTRMAP ALL

CAPC015I ANALYZER REPORTER WILL BE CALLED AUTOMATICALLY IF ANY PROGRAMS REQUEST COUNTS AND/OR TIMINGS. CAPC012I INPUT OPTION DISPLAY COMPLETE.

Page 126: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Execution Monitor Summary

126 User Guide

Execution Monitor Summary

This report is produced by the Execution Monitor at termination, just prior to

returning to the operating system. It is divided into two major sections.

CA EXECUTION MONITOR SUMMARY PAGE 35

CA OPTIMIZER/II R7 1005AOX00 23 APR 2004 12.07.19

A L

EXECUTION OPTIONS IN EFFECT: EXECUTION ON: Z/OS

ACB OFF ACTONLY OFF

AMB OFF

AMBL OFF ASMINST ON

BINDER ON

BINFRMT DEC CEEDUMP ON

DB2ACTIV OFF

DCB OFF DEB OFF

DUMP ON

EXCEED NOSTOP FILES ON

FIRST128 OFF

GRPADDR ON IMS NO

INTERCEPT 2

IOB OFF LINKAGE ALL

LOCALSTOR ALL

MEMMAP ON

MERGEDB ON

MRGAUTO ON

MRGBASED ON

MRGCNTLD ON

MRGDSECT ON

MRGFILES ON

MRGLINK ON

MRGLOCAL ON

MRGPARMS ON MRGSTAT ON

MRGWORK ON

MREPORT ALL MSAMPLE 10000

MTIME 0

OCCURS 1 PARMCHK ON

PFLOW ON

PLH OFF PRTLIB CDE.DEVL.OPT31.PRTLIB

PRTREPT BOTH

REGMAX (128,256) RPL OFF

SAVEAREA ON

SAVEHEAP OFF SHOWHEAP OFF

SHOWUNMRG TBLS

SNAP 1 STIMERM OFF

SYMDSN AD1DEV.MIKED.PROTSYM

UCB OFF

VSAMIDX OFF

WORKSTOR ALL

XCOUNT ON

XREPORT OFF

XTIME ON

Page 127: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Execution Monitor Summary

Chapter 3: Using Detector 127

LEGEND FOR OPTIMIZER OPTIONS:

B=DBGSLEEP F=FDCHECK S=SUBRNGCK

C=XCOUNT P=PFLOW T=XTIME

D=DTECT R=PARMCHK W=WSINIT

B G H I J K

COBOL C D E F COUNT NUMBER NUMBER RUN-TIME OPTIONS RUN-TIME OPTIONS

PROGRAM COMPILATION COMPILER SPACE OF TIMES OF TIMES SPECIFIED AT SPECIFIED AT

NAME DATE AND TIME USED REL (BYTES) -> ALLOCATED EXECUTED COMPILE TIME EXECUTION TIME

CAO2DEMO 23 APR,2004 12.02.38 COBOL II 4.0 3072 1 1 C,D,P,F,S,T,R,W CAO2PCHK 11 OCT,1990 14.18.54 COBOL II 3.0 1024 1 1 C,D,F,S,T,R,W

The Execution Monitor Summary report provides the following information for

every COBOL program running under Detector or Analyzer:

A

The first part of the report lists in alphabetical order the options that were in

effect during this execution of the application.

B

The second part of the report lists various attributes of all the optimized

COBOL programs encountered by the Execution Monitor during the

execution of the application. Entry to any program compiled/optimized with

Detector or Analyzer options is listed here.

C

Compile date, which helps identify the version of the program.

D

Compile-time, which helps identify the version of the program.

E

The COBOL compiler used for this program.

F

The release for the COBOL compiler is indicated here.

G

The amount of main storage required to store XCOUNT data.

H

Number of times the Execution Monitor was required to allocate XCOUNT

space.

I

Number of times the program was executed during the run.

J

Compile-time options in effect for the program.

Page 128: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Detector Facilit ies

128 User Guide

K

Runtime options in effect for the program.

L

The operating system under which the application executed is shown as

MVS, MVS/XA, MVS/ESA, OS/390, or z/OS.

Detector Facilities

This section describes the Detector facilities.

Merged Versus Dumped Data Displays

Detector displays storage areas for different sections of a program. If symbolic

information is available for the program, a variety of merging options are

provided for mapping variable names and definitions onto the corresponding

storage areas. Otherwise, storage areas are displayed in dump format.

Merged Display

The merging options are:

MERGEDB ON|OFF

Merges symbolic names onto database reports.

MRGAUTO ON|OFF

Merges symbolic names onto PL/I automatic storage.

MRGBASED ON|OFF

Merges symbolic names onto PL/I based variable storage.

MRGCNTLD ON|OFF

Merges symbolic names onto PL/I controlled storage.

MRGDATA ON|OFF

Merges symbolic names onto all data areas.

MRGDSECT ON|OFF

Merges symbolic names onto Assembler DSECT storage.

MRGFILES ON|OFF

Merges symbolic names onto file section for COBOL.

MRGLINK ON|OFF

Merges symbolic names onto linkage section for COBOL.

Page 129: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Detector Facilit ies

Chapter 3: Using Detector 129

MRGLOCAL ON|OFF

Merges symbolic names onto local storage for COBOL.

MRGPARMS ON|OFF

Merges symbolic names onto PL/I parameter storage.

MRGSTAT ON|OFF

Merges symbolic names onto PL/I static storage.

MRGWORK ON|OFF

Merges symbolic names onto working storage for COBOL.

The following example shows a merged data display for the WORKING-STORAGE

section of a COBOL program.

***************************

* WORKING-STORAGE SECTION *

*************************** A D E

LINE# LEVEL/FIELD NAME VALUE/LOCATION DEFINITION

------ -------------------------------- ------------------------ ------------------------------------ 000136 77 FILLER G *THIS PROGRAM IS PROPRIETARY PROP * X(80)

B C (+000032) *ERTY OF CA INTE *

(+000064) *RNATIONAL, INC. * 000139 77 FILLER * COPYRIGHT (C) 1986-1999 BY COMP * X(80)

H (+000032) *UTER ASSOCIATES INTERNATIONAL, I *

(+000064) *NC. *

000142 77 ERROR-FLAG ZEROS X(1)

000143 77 DATA-PICX10 ALL '&' X(10)

000144 77 ROW-3D 1 99 BINARY

000145 77 COLUMN-3D 1 99 BINARY

000146 77 RANGE-3D 1 99 BINARY

000148 01 PARAMETER-ONE BLW=0000+0000D0 (0E77A528) F

000149 03 FILLER *PARAMETERONE * X(12)

000154 01 PARM-PASSED-BY-JCL BLW=0000+0000E0 (0E77A538)

000155 03 PARM-MSG *WSINIT * X(8) 000156 03 PARM-FLAG *WSINIT * X(8)

000157 03 PARM-MODE *DTE * X(3)

000159 01 TABLE-1 BLW=0000+0000F8 (0E77A550) 000160 05 ARRAY(1) BLW=0000+0000F8 (0E77A550) OCCURS 5

000161 10 DATA-NAME1(1) ALL '&' XXX

000162 10 DATA-NAME2(1) I ALL '&' XXX <UNMERGED DATA FOR ARRAY> J X '50505050505050505050505050505050' LENGTH 24

(+000016)X '5050505050505050'

: :

: :

000315 01 LIST-1M BLW=0001+003860 (0E77ECB8) PACKED-DECIMAL

000316 03 LIST-1(1) ? X '50505050' S9(6) PACKED-DECIMAL OCCURS 100

<UNMERGED DATA FOR LIST-1> X '50505050505050505050505050505050' LENGTH 396 LINES 000016-000368 SAME AS ABOVE

(+000384) X '505050505050505050505050'

INX 473380382 INDEX=0001 K

Page 130: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Detector Facilit ies

130 User Guide

A merged data display for COBOL contains the following information:

A

Header describing the report columns.

B

The source line number where the data item was defined.

C

The level number and name of the data item.

D

The definition for the field. For COBOL, this includes the PICTURE and USAGE

clauses, and any REDEFINES or OCCURS clauses for the field.

E

For some fields, may indicate one of the following USAGE types of the data

item:

■ COMP and COMP-4 items are identified as BINARY.

■ COMP-1 items are identified as FLOATING-POINT.

■ COMP-2 items are identified as LONG FLOATING-POINT.

■ COMP-3 items are identified as PACKED-DECIMAL.

■ DISPLAY-1 items are identified as DBCS.

F

For group items, the base locator and displacement of the item. The address

of the item is also identified, in parentheses. (The base locator prints as BL,

BLL, or SBL for OS/VS COBOL and as BLF, BLW, BLL, BLK, BLV, or BLX for

COBOL II and above. For COBOL II and above, the displacement may exceed

4 KB.) If the GRPADDR option is set to OFF, this information is suppressed.

Page 131: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Detector Facilit ies

Chapter 3: Using Detector 131

G

For elementary items, the value of the item. The value is displayed in a

format determined by the USAGE of the data item and the validity of the

data.

For example:

DISPLAY data is shown in display format

■ PACKED-DECIMAL, BINARY, and INDEX data are shown in decimal

display format (DEC) or hexadecimal format (HEX), depending on the

value of the BINFRMT option.

■ POINTER, PROCEDURE-POINTER, FLOATING-POINT and DBCS data are

shown in hexadecimal format (for example, X'nnnnnnnn').

If the value of a data item is invalid, a question mark(?) precedes the data

value and the data is displayed in hexadecimal format.

If the address of a data item is invalid, a question mark(?) precedes the data

value column. The words 'INVALID ADDRESS' are displayed in the value

column, followed by the address, in parentheses.

H

If the data is too long to fit on the current line (32 bytes for display format,

16 bytes for hexadecimal format) it is continued on the next line. The offset

of the continued data (from the beginning of the data item) is displayed, in

decimal, on each successive line.

I

If the value specified in the OCCURS option is less than the number of

occurrences defined to the table, the first n occurrences of the table are

displayed in merged format (where n is the OCCURS option value). The rest

of the table is identified as '<UNMERGED DATA FOR tablename>'. The length

is displayed in the DEFINITION column and the data is displayed in

hexadecimal format.

If the SHOWUNMRG option is set to OFF, the unmerged data for the table is

suppressed.

The OCCURS option was set to the default value of 1 for this report. The

maximum value for the OCCURS option is 16777215.

Page 132: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Detector Facilit ies

132 User Guide

J

If the COBOL program contains data that does not map to a data item (such

as slack bytes or unmerged data items from a COPY... SUPPRESS

statement), the data is identified as '<UNMERGED DATA>'. The length is

displayed in the DEFINITION column and the data is displayed in

hexadecimal format.

If the SHOWUNMRG option is set to TBLS or OFF, the unmerged data is

suppressed.

K

If an INDEXED clause is specified on an OCCURS data item, the index name,

cell number, and current value is displayed on the line following the OCCURS

data item. If the current index value cannot be determined, 'N/A' is displayed

in the value column.

When displaying a variable length table, if the size of the table has not yet been

defined or cannot be determined, the maximum table size is used.

Page 133: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Detector Facilit ies

Chapter 3: Using Detector 133

Dumped Display

An example of a dumped report follows:

***************************

* WORKING-STORAGE SECTION *

***************************

B

BLW=0000 +000000 E3C8C9E2 40D7D9D6 C7D9C1D4 40C9E240 D7D9D6D7

D9C9C5E3 C1D9E840 D7D9D6D7 *THIS PROGRAM IS PROPRIETARY

PROP *

C D+000020 C5D9E3E8 40D6C640 C3D6D4D7 E4E3C5D9 40C1E2E2

D6C3C9C1 E3C5E240 C9D5E3C5 *ERTY OF CA INTE `*

+000040 D9D5C1E3 C9D6D5C1 D36B40C9 D5C34B40 40C3D6D7

E8D9C9C7 C8E3404D C35D40F1 *RNATIONAL, INC. COPYRIGHT (C) 1`*

+000060 F9F8F660 F1F9F9F9 40C2E840 C3D6D4D7 EE4E3C5D9

40C1E2E2 D6C3C9C1 E3C5E240 *986-1999 BY CA *

+000080 C9D5E3C5 D9D5C1E3 C9D6D5C1 D36B40C9 D5C34B40

40404040 40404040 40404040*INTERNATIONAL, INC. `*

+0000A0 F0505050 50505050 50505050 50505050 50505050

50505050 00015050 50505050

*0&&&&&&&&&&&&&&&&&&&&&&&..&&&&&&&*

+0000C0 00015050 50505050 00015050 50505050 D7C1D9C1

D4C5E3C5 D9D6D5C5 50505050

*..&&&&&&..&&&&&&PARAMETERONE&&& *

+0000E0 E6E2C9D5 C9E34040 E6E2C9D5 C9E34040 C4E3C550

50505050 50505050 50505050*WSINIT WSINIT DTE&&&&&&&&&&&&&&*

+000100 50505050 50505050 50505050 50505050 50505050

50505050 50505050 50505050

*&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&*

LINES 00000120-00000FC0 SAME AS ABOVE

+000FE0 50505050 50505050 50505050 50505050 50505050

50505050 50505050 50505050

*&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&*

ADDRESS 0C154088 LENGTH 81920 (X'00014000')

BLW=0001+000000 50505050 50505050 50505050 50505050 50505050

50505050 50505050 50505050

*&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&*

LINES 00000020-00013FC0 SAME AS ABOVE

+013FE0 50505050 50505050 50505050 50505050 50505050

50505050 50505050 50505050

*&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&*

Page 134: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Detector Facilit ies

134 User Guide

A dumped report contains the following information:

A

Address of the dumped storage.

B

Length of the dumped storage in decimal and hexadecimal.

C

The base locator cell associated with the dumped storage (The base locator

prints as BL, BLL, or SBL for OS/VS COBOL and as BLF, BLW, BLL, BLK, BLV,

or BLX for COBOL II and above.)

D

The displacement of the storage from the specified base locator, in

hexadecimal. (For COBOL II and above, the displacement can exceed 4 KB.)

E

The data in hexadecimal format.

F

The data in display format.

Production-time Enabling of Debugging Facilities (DBGSLEEP/DBGAWAKE)

The DBGSLEEP/DBGAWAKE feature of Detector allows you to enable debugging

facilities in otherwise production status programs. This eliminates the necessity

of recompiling, reoptimizing, or linking to the COBOL application.

■ Introduction

Debugging facilities (FDCHECK, PARMCHK, PFLOW, SUBRNGCK, XCOUNT

and/or XTIME) are primarily used during the software development cycle.

Once a program is working, it is typically moved into production status.

If the program should abend while in production, the debugging facilities

available to an optimized program can be used to help solve the problem.

However, when the program was last compiled, perhaps all debugging

oriented parms were omitted. If they were, the program must be

recompiled/optimized/linked to gain access to these facilities.

Page 135: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Detector Facilit ies

Chapter 3: Using Detector 135

■ DBGSLEEP

This facility directly addresses the aforementioned problem with production

programs. Simply add DBGSLEEP to whatever combination of facilities you

were using during development for your final compilation. These facilities

require no CPU overhead until activated. When a program is compiled for the

last time, prior to entering production status, DBGSLEEP is added to silence

the debugging functional calls. This is accomplished by specifying DBGSLEEP

at compile/optimize time.

DBGSLEEP causes Optimizer to prefix PFLOW, SUBRNGCK, and XCOUNT

code in the object module with an unconditional branch, thereby making the

inline code dormant; however, execution remains very efficient. In RENT

programs, a different technique is used.

■ DBGAWAKE

DBGAWAKE can be specified at execution-time to awaken these now latent

debugging facilities in one, some, or all programs in the application. Suppose

a complex COBOL application abends sometime after being placed in

production and a cursory analysis of the operating system dump yields no

insight into the cause of the problem. Add DBGAWAKE to the CAIOPTS file

and rerun the application using the same files; this enables all the latent

debugging facilities, providing maximum COBOL diagnostic information.

Subscript Range Checking (SUBRNGCK)

The Subscript Range Checking feature of CA Optimizer/II performs tests in the

object code to verify the validity of subscripts and indexes before they are used.

Invoke this feature by specifying the SUBRNGCK option in the CA Optimizer/II

option list at compile-time.

CA Optimizer/II tests each subscript and index used in a COBOL program,

compiled and optimized with the SUBRNGCK option, before it is used to

reference the subscripted data item. A subscript value is considered valid if it is

greater than zero and less than or equal to the number of occurrences specified

for the data item in its OCCURS clause. An index value is considered valid if it is

greater than or equal to zero, and less than or equal to the displacement

corresponding to the number of occurrences specified for the data item's

OCCURS clause. If the data item has an OCCURS DEPENDING ON clause, the

current value of the depending-on variable is used for the upper bound test. If

the depending-on variable does not contain a value prior to the reference to the

subscripted or indexed table, the SUBRNGCK considers the current size of the

table as undefined and will flag an error referencing the subscripted or indexed

table.

Page 136: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Detector Facilit ies

136 User Guide

If a subscript or index is found to be invalid, the program terminates with a S0C1

system abend code. Under Detector, the S0C1 abend is intercepted and a special

abend report is produced specifically for subscript range violations. Detector

translates the S0C1 abend into a U1125 abend which is uniquely associated with

subscript range violations. This feature stops the program from executing when

the subscript is invalid before it destroys enough data to cause some other error.

Note: Only subscripts that are calculated at runtime are checked. Literal

subscripts are not checked as these are resolved at compile-time. The optimized

program can only perform range checking tests on data items which follow ANSI

COBOL rules. The optimized program only checks coincident tables for subscripts

less than 1 because the upper range cannot be determined accurately.

Coincident tables are subscripted data names whose first elements have the

same BLF, BLW, or BLL and displacement in the data map.

Detection of Uninitialized Working-Storage (WSINIT)

Many times there are problems in execution because data items are used before

they are assigned a value. Often it is unclear whether the data item was never

given a value or whether it was assigned a value of zero. CA Optimizer/II

removes this confusion by causing all Working-Storage variables which are not

initialized by a VALUE clause to start execution with each byte set to X'50'. If

such a data item is printed, it appears as a string of ampersands (&). If you try

to perform arithmetic operations on uninitialized data items other than type

COMP, (binary), the program abends with a S0C7 abend code. Under Detector,

when a S0C7 abend occurs, Detector analyzes the cause of the abend. If WSINIT

was specified at compile-time and the cause was due to uninitialized Working

Storage, Detector will indicate this on the first page of the Detector Abend

report. This feature makes it much more difficult to use uninitialized data items.

To invoke this feature, specify WSINIT in the CA Optimizer/II option list at

compile-time.

Detection of Invalid Record Area References (FDCHECK)

When a COBOL program moves data into the record area of an unopened file or

into an input file that is at end-of-file, several types of errors can occur. If the

record area is not within the program (this is the usual case for files in the

program which do not use a READ INTO option on a READ verb, or a WRITE

FROM option on the WRITE verb), the destination of the data is unpredictable.

Some possibilities are an S0C4 abend or destruction of actual program code

resulting in a later S0C1 abend. CA Optimizer/II ensures that any attempt to

move data into the record of an unopened file or an input file at end-of-file,

results in an abend. This detection facility includes both fetch and store

protection.

Page 137: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Detector Facilit ies

Chapter 3: Using Detector 137

For example, if a data item in a record area of an unopened file is used in an IF

statement, Detector's FDCHECK facility will intercept this as an invalid record

area reference. Under Detector the abend is intercepted and a special abend

report is produced specifically for invalid record area references. Detector

translates the violation into a U1128 abend which is uniquely associated with

FDCHECK. The report includes not only the source statement which caused the

error, but also the FD whose record area is being referenced. To invoke this

feature, specify FDCHECK in the CA Optimizer/II option list at compile-time.

Sometimes, FDCHECK does not identify an invalid reference to the record area of

a closed file. This is because the record area assigned to a file can exist in either

of two places. In one case, the area resides within the COBOL program itself,

while in the other case, it is allocated when the file is opened.

If the record area resides within the COBOL program, the BL cell assigned to that

record area always contains the address of the record area and is never changed.

In this case, no FDCHECK code is generated because no storage violation is

possible, and also because the address of the file record would be lost if the BL

cell were modified.

If the record area is allocated when the file is opened, the BL cell which is

assigned to the record area does not contain a valid address unless the file is

OPEN. In this case, the FDCHECK facility will force a recognizable but invalid

address in the BL cell when the program is entered, and again before every

operation on the file. This will allow DETECTOR to catch any references to the

unopened file buffer and report on the error.

Parameter List Validity Checking (PARMCHK)

Parameter List Validity Checking is a Detector feature that performs the following

functions:

■ Compares the number of parameters being passed to an optimized program

with the number of parameters the Optimized program is expecting. When a

count violation occurs, a CAPD119W error message is produced.

■ Checks the parm list addresses to insure references to them will not cause

S0C4 abends at a later time. In the case of an address violation, a

CAPD120W error message is produced.

Page 138: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Detector Facilit ies

138 User Guide

■ Issues a message identifying the calling and called programs

■ Reduces the addressing exceptions resulting from incorrect parm lists being

passed between programs. PARMCHK will not terminate the program

execution when a violation occurs, but will simply print a warning message.

Up to 16 occurrences of parameter list violations are reported, after which

the mechanism is automatically shut off for the duration of the application

execution. To invoke this feature, specify PARMCHK at compile-time.

Note: The PARMCHK execution-time default for CA Optimizer/II is ON.

PARMCHK processing will automatically occur for any optimized OS/VS

COBOL program if Detector is active.

Parameter list validity checking is not performed on CALLs to nested

programs.

Paragraph Flow Analysis (PFLOW)

PFLOW is optional; however, it is recommended that you use it in all debugging

runs.

At compile-time, PFLOW requests a Detector Paragraph Flow report of the last

nnnnn paragraphs executed. It follows the Detector Abend or Snap report. You

can override it by specifying the PFLOW OFF option at execution-time. PFLOW

turns on DTECT. If NODTECT, CICS, IDMSDC, or, TPMON is specified, PFLOW is

suppressed.

When used during execution-time, it generates an optional section of the

Detector Abend report which lists the source name and address of the last nnnnn

paragraphs executed up to the time of abend. 'nnnnn' is a programmer-specified

value rounded up to the next power of two, not to exceed 32,768. The default at

compile and execution-time is 64.

For OS/VS Cobol programs, Detector Paragraph Flow reports are limited to the

last 64 paragraphs executed. If you specified PFLOW at compile-time, you can

change the size of the PFLOW table at execution-time as described above.

SNAP

SNAP is controlled by inserting CALLs to CAODSNAP at points you choose in your

program and by the SNAP option at execution-time. For programmers familiar

with CA Optimizer OS, CALLs to CPXMSNAP are still valid as CPXMSNAP. When

specifying the execution option, 'SNAP nnnn', remember nnnn defines the sum of

all SNAP CALLs to take for all programs in the application.

Page 139: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Usage Considerations

Chapter 3: Using Detector 139

INTERCEPTS

This option provides you with all the information you need to correct a data

exception or decimal divide exception. After Detector generates the information

for the Intercepts report, it corrects the offending data item. In the case of a data

exception, it plugs the item in error with the value 1. With a decimal divide

exception, Detector changes the divisor to 1.

Detector corrects the bad data to prevent multiple intercepts for the same item.

After correcting the data, Detector reexecutes the abending instruction so that

predictions can be made concerning the outcome.

Usage Considerations

This section provides information for the following:

■ Detector with IMS

■ Dynamic allocation

■ Hierarchy of information

■ Restrictions

Detector with IMS

Detector can be used in IMS environments. A complete discussion on how to use

Detector under IMS can be found in the Installation Guide.

Dynamic Allocation

This subsection covers dynamic allocation of DD statements for both Detector

and Analyzer.

If you do not provide the required DD statements, the Execution Monitor uses

the dynamic allocation facilities of the operating system to allocate them for you.

After reviewing the options' specifications used here as defaults, you will

ordinarily set up your application such that the data sets are dynamically

allocated for you. If any of the options for any data set conflict with your

requirements, override the specification by supplying a DD statement (or for a

CLIST, an ALLOCATE statement).

Page 140: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Usage Considerations

140 User Guide

The following table describes the dynamic allocation specifications used in

standard JCL keyword/value notation:

File Allocation Specifications Usage Notes

CAITIMSV DISP=(NEW,DELETE,DELETE),

DSN=&&TIMSV,

SPACE=(TRK,(30,30),RLSE),

UNIT=SYSDA

See note 1 and 8.

See note 2 and 8.

See note 3 and 8.

CAIPRTLB DISP=SHR,DSN=your_repository_dsn See note 4 and 8.

CAIPRINT SYSOUT=* See notes 5, 6, and

8.

CAIPRNT1 SYSOUT=* See note 5 and 8.

CAIPRNT2 SYSOUT=* See note 5 and 8.

SYSUDUMP SYSOUT=* See note 5.

CAISYM DISP=SHR,DSN=your_symbolic.file.dsna

me

See note 7 and 8.

Notes:

1. This data set is allocated if:

■ The DD statement for CAITIMSV is required (for counts and/or timings)

■ XREPORT ON is in effect, and

■ The DD statement is omitted.

The Analyzer opens this file for output, writes the counts and/or timings data

to it during the application execution, and closes the file. Analyzer Reporter

opens the file for input, processes the counts and timings data records, and

produces the Analyzer reports. When the job step ends in any fashion, the

data set is deleted.

2. The amount of space required is a function of many variables. For dynamic

allocation, the space allocated has been set high enough to accommodate

any application.

The UNIT name used during dynamic allocation is an installation option. The

default is SYSDA. If you require a different UNIT name, contact your

Systems Programmer or supply your own DD or ALLOCATE statement.

The data set name used during dynamic allocation is supplied as follows:

■ From the user exit, CAOUPRT. For more information, see the chapter

―User Exits‖ in the Installation Guide.

■ From the value of the PRTLIB keyword option in the CAIOPTS file.

Page 141: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Usage Considerations

Chapter 3: Using Detector 141

■ From the PRTLIB option defined in default CSECT CAODFRX. The source

for CAOUDFRX can be found in library CAI.PPOPTION.

In each of the above cases, the data set must have been created using the

JCL provided for the Allocate CAIPRINT Repository Library installation step.

For more information, see the chapter ―Installation Steps‖ in the Installation

Guide.

3. The SYSOUT class used during dynamic allocation is an installation option.

The default is *. This is the default SYSOUT class specified in the JCL

MSGCLASS. If you require a different SYSOUT class, you can either see your

systems programmer, or you can supply your own DD or ALLOCATE

statement.

The destination of a dynamically allocated CAIPRINT DD can be controlled

using the CAOCUDSN user exit. This exit allows a data set name, unit and

volume to be specified based on criteria such as the job name or userid.

Information regarding CAOCUDSN can be found in the chapter ―User Exits‖

in the Installation Guide.

4. This DD is dynamically allocated only if it does not already exist in your JCL

and you have specified a value for the SYMDSN keyword in CAIOPTS.

5. Your installation may have selected an alternate name for this DD in your

defaults table CAOUDFRX. See your system administrator if you are not

sure.

Hierarchy of Information

When Detector produces an Abend report, all of the programs that are active at

the time of the abend are included, unless the ACTONLY option is set to ON, or

unless individual programs have been excluded from reporting in your

installation defaults.

Several factors affect how much information is provided for each program,

including:

■ For COBOL or PL/I programs, storage areas and control blocks are broken

out and formatted, and compiler statistics are provided.

■ If your PROTSYM (or CSL) contains symbolic information for an active

COBOL, PL/I, or Assembler program, the reports are enhanced to include the

last executed source statement, the names and values of the variables, and

more.

■ For programs that were optimized with the DTECT option, Detector displays

record counts for files and identifies the location of the last external transfer

of control. Paragraph flow analysis is also included when the PFLOW option is

also used.

Page 142: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Usage Considerations

142 User Guide

Restrictions

Detector cannot operate under CICS, HOGAN, IDMSDC, SHADOW, CMS or when

multitasking is used, with the exception of IMS/VS message processing regions.

For the effective use of Detector, you must use standard IBM-type program

linkage conventions. For information on how to set up Detector for use in IMS

environments, see the chapter ―Special Environments‖ in the Installation Guide.

In an operating environment where your own in-house systems have taken

responsibility for catching abends, it is possible to obtain the full Detector Abend

report. See the chapter ―Special Usage Considerations‖ in the Installation Guide.

Page 143: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Chapter 4: Using Extended Detector 143

Chapter 4: Using Extended Detector

Extended Detector operates both in production and test environments as a

productivity tool for programmers. Like Detector, it provides you with valuable

diagnostic information to simplify the debugging process. Unlike Detector, there

are no compile-time requirements or JCL changes, and no execution-time

overhead exists.

Once installed, Extended Detector is automatically available to every user.

Exclusion criteria may be selected at installation time to allow for system dumps

instead of Extended Detector reports for certain abends.

Extended Detector provides reports when a system dump has been requested as

the result of an abend or when a SNAP request has been made by a call to

CAODSNAP. Until that time, there is no intervention of any kind. See Extended

Detector with Language Environment (LE) for additional information.

Extended Detector provides reports for all types of programs. There is no

requirement that the program be optimized using CA Optimizer/II, nor is there a

requirement that the program be COBOL, PL/I, or Assembler. There are several

levels of information which might be available depending on the type of program

which has abended. See Hierarchy of Information later in this chapter for

additional information.

The content of an Extended Detector report is completely controlled by the

installation defaults and override options. It is also possible to receive a system

dump in addition to Extended Detector reports.

Extended Detector Options

You may change the default value of most Extended Detector options by coding

an override in the options file at execution-time. The options file has a default

ddname of CAIOPTS (which can be customized at installation time). At

execution-time, your options file can be dynamically allocated if desired. This

allows each user to customize their options differently without coding any

additional JCL.

Page 144: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Extended Detector Options

144 User Guide

The following table provides a listing of all Extended Detector options available

as overrides at execution-time:

Extended Detector Options

Execution-time

View-time

Standard Options

BLLMAX REGMAX

DB2ACTIV RPTSZ80

DUMP SAVEHEAP

PRTLIB SNAP

PRTREPT SYMDSN

Formatting Options

ASMINST MRGDATA

BINFRMT MRGDSECT

FILES MRGFILES

FIRST128 MRGLINK

GRPADDR MRGLOCAL

LINECNT MRGPARMS

LINKAGE MRGSTAT

LOCALSTOR MRGWORK

MEMMAP OCCURS

MERGEDB SAVEAREA

MRGAUTO SHOWHEAP

MRGBASED SHOWUNMRG

MRGCNTLD WORKSTOR

Data Management Control

Blocks

BLOCKS IOB

DCB UCB

DEB

VSAM Control Blocks

ACB PLH

AMB RPL

AMBL VSAMIDX

Log and Notify Options

LOGROS LOGUNI

LOGTSO WTO

ASMINST

BINFRMT

FILES

FIRST128

GRPADDR

LINECNT

LINKAGE

LOCALSTOR

MEMMAP

MERGEDB

MRGAUTO

MRGBASED

MRGCNTLD

MRGDSECT

MRGFILES

MRGLINK

MRGLOCAL

MRGPARMS

MRGSTAT

MRGWORK

OCCURS

SAVEAREA

SHOWHEAP

SHOWUNMRG

WORKSTOR

Extended Detector also supports the following compile-time options:

Option Description

SUBRNGCK Detects out-of-range subscripting or indexing.

FDCHECK Detects invalid references or modifications of file record areas.

WSINIT Detects data related errors caused by uninitialized

WORKING-STORAGE.

These compile-time options usually force the DTECT option when used, which

causes a Detector Report instead of an Extended Detector Report. If you want to

use any of these options without forcing the DTECT option at compile-time, you

must select EDS=YES in your compile-time installation defaults (CAOUDFOX).

Page 145: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

JCL Requirements

Chapter 4: Using Extended Detector 145

JCL Requirements

By default, Extended Detector does not require any additional JCL at

execution-time. All CA Optimizer/II Runtime Library modules should be made

available at installation time (through LPA or LINKLIST), and Extended Detector

itself is made available using CA Common Services for z/OS. For more

information, see the Installation Guide.

Because Extended Detector remains dormant until a dump is requested as the

result of an abend, you must include a SYSUDUMP DD statement in your JCL to

receive Extended Detector reports. If you want to suppress the system dump,

specify DUMP OFF in your options file overrides or DUMP=OFF in your installation

defaults (CAOETABL).

The repository used by Extended Detector has a default name of CAIPRTLB which

may be customized at installation time. This file is dynamically allocated, if not

included in the JCL, using the data set name specified at installation time. User

exit CAOCUPRT may be used to select a repository library based upon criteria

such as the job name or userid. The user may also override the default repository

library by specifying the PRTLIB execution option.

The report file used by Extended Detector has a default name of CAIPRINT which

may be customized at installation time. This file is dynamically allocated, if not

included in the JCL. The SYSOUT class for dynamic allocation is also an

installation option with a default value of SYSOUT=*.

The options file has a default name of CAIOPTS which can be customized at

installation time. This file can also be dynamically allocated if not included in the

JCL at execution-time. The high-level qualifier of the options file for dynamic

allocation is equal to the userid while the remainder of the data set name is

selected at installation time. The default name is userid.CAIOPTS.

Symbolic information is obtained from the PROTSYM or CSL files defined in your

installation defaults. To use a symbolic file that has not been defined in your

defaults, include a CAISYM DD statement for that symbolic file, or use the

SYMDSN option in CAIOPTS to dynamically allocate the file. Your installation may

have selected an alternate name for CAISYM, so check with your system

administrator.

Page 146: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Suppressing Extended Detector Reports

146 User Guide

Suppressing Extended Detector Reports

In addition to the exclusion criteria provided with the defaults member

CAOETABL, you can suppress an Extended Detector report for any job step.

To suppress abend reports, add a DD statement to your JCL.

The STOPDD option in CAOETABL defines the name of the DD. The default value

is CAOESTOP. The following is an example of using this DD with the default

value:

//CAOESTOP DD DUMMY

When the DD statement specified in your defaults table is present, CA SymDump

Batch is bypassed and your standard dump facility is invoked.

Extended Detector Reports

The reports produced by Extended Detector are almost identical to those

produced by Detector. Only Abend and Snap reports are provided. Intercepts are

not supported by Extended Detector.

The following lists the Extended Detector reports available by program:

All Programs

■ Abend Report Box *

■ Module Call Sequence

■ Save Area Trace

■ LE Heap Storage

■ Open Files Report

■ Options Summary

COBOL Programs

■ File Section *

■ WORKING-STORAGE Section *

■ LOCAL-STORAGE Section *

■ Linkage Section *

■ Memory Map

■ Registers

Page 147: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Extended Detector Reports

Chapter 4: Using Extended Detector 147

PL/I Programs

■ Procedure Variables *

■ Registers

■ DSA

■ Static Program Storage *

■ External Storage *

■ Heap Storage

■ Program Control Blocks

Assembler Programs

■ Registers

■ Storage Areas *

■ All Other Programs

■ Abending Instruction

■ Operand Values

■ Registers at Abend

* May include symbolic information if available.

A sample of each report is provided in the chapter "Using Detector."

WARNING! Each call to CAODSNAP generates a separate SNAP report in your

central VSAM repository. If your program contains multiple SNAP calls or a SNAP

call within a loop, you can write the output to the CAIPRINT DD alone, to avoid

flooding the repository. See the PRTREPT option description in Chapter 11.

Page 148: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Hierarchy of Information

148 User Guide

Hierarchy of Information

When Extended Detector produces an abend report, all of the programs that are

active at the time of the abend are included, unless the ACTONLY option is set to

ON, or unless individual programs have been excluded from reporting in your

installation defaults.

Several factors affect how much information is provided for each program,

including:

■ For COBOL or PL/I programs, storage areas and control blocks are broken

out and formatted, and compiler statistics are provided.

■ If your PROTSYM (or CSL) contains symbolic information for an active

COBOL, PL/I, or Assembler program, the reports are enhanced to include the

last executed source statement, the names and values of the variables, and

more.

■ For programs that were optimized with the DTECT option, Detector displays

record counts for files and identifies the location of the last external transfer

of control. Paragraph flow analysis is also included when the PFLOW option is

also used.

Extended Detector with Language Environment (LE)

If your application is executing under the Language Environment (LE) runtime, it

is possible to receive Extended Detector reports even when an abend and system

dump do not occur.

Because LE applications can sometimes terminate abnormally without an abend

or system dump, two callable interfaces have been provided, (CAOECEEX and

CEEBXITA, respectively).

To use one of these interfaces, you must modify the appropriate LE user exit as

described in the Installation Guide.

For abending LE applications, Extended Detector functions as usual with no

additional considerations.

Note: The LE option TERMTHDACT(UADUMP) generates a U4039 abend when an

unhandled condition occurs of severity 2 or greater. Extended Detector will not

report on this abend.

Page 149: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Usage Considerations/Restrictions

Chapter 4: Using Extended Detector 149

Usage Considerations/Restrictions

Extended Detector does not provide any reporting for programs that abend

under CICS or other teleprocessing environments.

For the most productive use of Extended Detector, we recommend that your

applications use standard IBM-type program linkage conventions whenever

possible.

Page 150: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel
Page 151: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Chapter 5: Using the CAIPRINT Repository Viewer 151

Chapter 5: Using the CAIPRINT

Repository Viewer

The CAIPRINT Repository Viewer can be used to view Detector and Extended

Detector reports that have been written to your central VSAM repository. Each

report is automatically written to the repository defined in your runtime defaults

member, CAOUDFRX, if the PRTREPT option is set to REPOS or BOTH.

The CAIPRINT Repository Viewer provides the following benefits:

■ A single interface for viewing, printing, and maintaining Detector and

Extended Detector reports

■ Easy access to multiple CAIPRINT repositories

■ View-time control over the formatting options

■ View-time addition of symbolic information to your reports

■ Utilities for adding, viewing, printing, and maintaining symbolic information

Start the Viewer

During installation, the ISPF Primary Option menu should be updated to include

a selection for the CAIPRINT Repository Viewer. If this has not been completed,

see the Installation Guide.

Select the appropriate option from the menu to start the viewer.

Page 152: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

The Report Index

152 User Guide

The Report Index

The Report Index panel displays all Detector and Extended Detector reports that

have been written to the selected repository, sorted in descending order by date

and time.

CA Optimizer/II r8.5 ------------- Report Index ---------------- Line 1 of 68

Command ===> Scroll ===> CSR

CAPI100I Repository contains 68 report(s) ------------------------------------- Repository Dsname: CAI.PRTLIB

1754 Data Records 680 Used 38.7% Full

Filter: Jobname * Step/Tsk * Program * Offset * Comp * UserID * Lock * System *

------------------------------------------------------------------------- Lvl 1

Cmd JobName Step/Tsk Program Offset Comp Date Time UserId

. WANDA07D TESTCOB2 SUBCOB 000026A S=0C7 2007/03/05 12.41 TSTUSR7

. USRSC01A STEP1 CARXDEMA 000013C S=0C7 2007/03/02 18.35 TSTUSR1

. USER002R RUN n/a n/a RC=0000 2007/03/02 18.34 TSTUSR3

. WANDA07D TESTCOB2 SUBCOB 000026A S=0C7 2007/03/02 18.20 TSTUSR7

. WANDA07C TESTCOB2 SUBCOB 000026A S=0C7 2007/03/02 17.09 TSTUSR7

. WANDA07C TESTCOB2 SUBCOB 000026A S=0C7 2007/03/02 16.25 TSTUSR7

. WANDA07A S0C1 RENTSCAN 0000AFA S=0C2 2007/03/01 11.00 TSTUSR7

. USER002A RUN CAOEDEMO 0003D48 S=0C7 2007/03/01 10.41 TSTUSR3

. USER002A RUN CAOEDEMO 0003D48 S=0C7 2007/03/01 10.34 TSTUSR7 . USER002A RUN CAOEDEMO 0003D48 S=0C7 2007/02/28 10.06 USER01

. WANDA07Z S0C1 TESTSCAN 0000AFA S=0C2 2007/02/28 09.43 USER01

. USRSC01B RUN CARXDEMA 000013C S=0C7 2007/02/23 14.34 USER02 . USRSC01A RUN CEEPLPKA 00BAE7A U=0666 2007/02/23 14.33 USER02

. USRSC01A STEP1 CARXDEMA 000013C S=0C7 2007/02/23 14.28 USER02

. USRSC01A RUN ABEND1 0000014 U=0001 2007/02/21 15.26 TSTUSR2

When the viewer is started for the first time, the repository data set name is

determined using your installation defaults. For all subsequent executions, the

value is retrieved from your personal user profile.

Page 153: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

The Report Index

Chapter 5: Using the CAIPRINT Repository Viewer 153

Select a Repository

You have an option of selecting a repository of your choice.

To select a repository

1. Use the SETINDEX command to switch to a different repository.

You are prompted for the new repository name as shown in the following

screen:

CA Optimizer/II r8.5 -----------Report Index ------------------- Line 1 of 68 Command ===> Scroll ===> CSR ------------------------------------------------------------------------------- Repository +------------------------------------------------------+ 1754 Da | | Filter: Jo | Enter Repository Dsname: | Co | | ---------- | ===> | ----- Lvl 1 Cmd JobNa | | UserId . WANDA +------------------------------------------------------+ 1 TSTUSR7 . USRSC01A STEP1 CARXDEMA 000013C S=0C7 2007/03/02 18.35 TSTUSR1 . USER002R RUN n/a n/a RC=0000 2007/03/02 18.34 TSTUSR3 . WANDA07D TESTCOB2 SUBCOB 000026A S=0C7 2007/03/02 18.20 TSTUSR7 . WANDA07C TESTCOB2 SUBCOB 000026A S=0C7 2007/03/02 17.09 TSTUSR7 . WANDA07C TESTCOB2 SUBCOB 000026A S=0C7 2007/03/02 16.25 TSTUSR7 . WANDA07A S0C1 RENTSCAN 0000AFA S=0C2 2007/03/01 11.00 TSTUSR7 . USER002A RUN CAOEDEMO 0003D48 S=0C7 2007/03/01 10.41 TSTUSR3 . USER002A RUN CAOEDEMO 0003D48 S=0C7 2007/03/01 10.34 TSTUSR7 . USER002A RUN CAOEDEMO 0003D48 S=0C7 2007/02/28 10.06 USER01 . WANDA07Z S0C1 TESTSCAN 0000AFA S=0C2 2007/02/28 09.43 USER01 . USRSC01B RUN CARXDEMA 000013C S=0C7 2007/02/23 14.34 USER02 . USRSC01A RUN CEEPLPKA 00BAE7A U=0666 2007/02/23 14.33 USER02 . USRSC01A STEP1 CARXDEMA 000013C S=0C7 2007/02/23 14.28 USER02 . USRSC01A RUN ABEND1 0000014 U=0001 2007/02/21 15.26 TSTUSR2

2. Enter the new data set name, fully qualified and enclosed in single quotation

marks, or leave this field blank to view the default repository for the current

system.

Report Index Fields

A static information area is displayed at the top of the display, immediately

below the command line and separated by dashed lines. The following

information is displayed in this area:

Repository Dsname

The data set name of the currently selected repository.

Data Records

The number of data records available in the selected repository.

Page 154: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

The Report Index

154 User Guide

Used

The number of used data records in the selected repository.

Full

The percentage of used data records.

Filters

Lists eight updatable fields (Jobname, Step/Tsk, Program, Offst, Comp,

UserID, Lock, System) that can be used to filter the list of reports that can be

selected.

The final static line in this display is the highlighted header line, containing all of

the column headers for the report list.

The data portion of the display is both horizontally and vertically scrollable and

can be sorted in ascending or descending order on any column header. For all

reports in the list, the following information is displayed:

Job

The name of the job that produced the report.

Step

The name of the step that produced the report.

Program

The name of the abending program that caused the report to be produced.

Offset

The offset in the abending program where the abend occurred.

Comp

The completion code from the step that produced the report.

Date

The date on which the report was produced.

Time

The time at which the report was produced.

Userid

The name of user that submitted the job that produced the report.

Lock

The name of the user that owns a lock on the report to prevent deletion.

System

The name of the system on which the report was created.

Page 155: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

The Report Index

Chapter 5: Using the CAIPRINT Repository Viewer 155

Asid

The address space ID of the job which created the report.

#Recs

The number of physical repository records occupied by the report.

S I P

Indicates whether the report contains Snaps, Intercepts, or Parmchk.

Primary Commands

The following primary commands are available from the Report Index panel:

Command Description

BOTTOM Scrolls the display to the last line.

DOWN Scrolls the display forward.

FIND Locates text in the current display.

FM Invokes CA File Master Plus to view a data set.

HELP Requests help for a command, message, or topic.

KEEP Adds data from the current display to the Keep Window.

LEFT Scrolls the display to the left.

OPTIONS Displays the current installation options in effect.

PRINT Prints all or part of the current display.

PROFILE Views and updates display preferences.

REFRESH Refreshes the current display.

RFIND Repeats a previous FIND command.

RIGHT Scrolls the display to the right.

SET Selects a new repository.

SORT Sorts the current display on any column heading.

SYM Displays the Symbolic Utilities menu.

TOP Scrolls the display to the first line.

UP Scrolls the display backward.

A description of each primary command can be found later in this chapter.

For online help for any primary command, enter HELP command-name.

Page 156: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

The Report Index

156 User Guide

Line Commands

The following line commands can be entered in the Cmd column:

Command Description

D Deletes a report from the repository.

L Locks a report to prevent accidental deletion.

N Opens the electronic notepad for a report.

O Dynamically modifies the formatting options for a report.

P Prints a report to a printer, file, or other destination.

S Selects a report for viewing.

U Unlocks a report to allow deletion.

Page 157: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

The Report Index

Chapter 5: Using the CAIPRINT Repository Viewer 157

Delete a Report

You can delete a report that is not required from the repository.

To delete a report from the repository

1. Type the D line command.

You are prompted for confirmation to prevent accidental deletion as shown

next:

CA Optimizer/II r8.5 ------------ Report Index ----------------- Line 1 of 68 Command ===> Scroll ===> CSR ------------------------------------------------------------------------------- Repository +----------------------------------------------------+ 1754 Dat | Press ENTER to confirm the delete request for | Filter: Job | the selected report: | * Com | | * ----------- | Program: CARXDEMA Offset: 000013C Comp: S=0C7 | ------ Lvl 1 Cmd JobNam | Created: 2007/02/23 at 14.28 | e UserId . WANDA0 | | 41 TSTUSR7 . USRSC0 | Press END to cancel the delete request. | 35 TSTUSR1 . USER00 | | 34 TSTUSR3 . WANDA0 | Display this message? (Y/N) ===> Y | 20 TSTUSR7 . WANDA0 +----------------------------------------------------+ 09 TSTUSR7 . WANDA07C TESTCOB2 SUBCOB 000026A S=0C7 2007/03/02 16.25 TSTUSR7 . WANDA07A S0C1 RENTSCAN 0000AFA S=0C2 2007/03/01 11.00 TSTUSR7 . USER002A RUN CAOEDEMO 0003D48 S=0C7 2007/03/01 10.41 TSTUSR3 . USER002A RUN CAOEDEMO 0003D48 S=0C7 2007/03/01 10.34 TSTUSR7 . USER002A RUN CAOEDEMO 0003D48 S=0C7 2007/02/28 10.06 USER01 . WANDA07Z S0C1 TESTSCAN 0000AFA S=0C2 2007/02/28 09.43 USER01 . USRSC01B RUN CARXDEMA 000013C S=0C7 2007/02/23 14.34 USER02 . USRSC01A RUN CEEPLPKA 00BAE7A U=0666 2007/02/23 14.33 USER02 d USRSC01A STEP1 CARXDEMA 000013C S=0C7 2007/02/23 14.28 USER02 . USRSC01A RUN ABEND1 0000014 U=0001 2007/02/21 15.26 TSTUSR2

2. Press Enter to delete the report, or END to cancel the request.

To suppress confirmation for the remainder of the session, enter N in the Display

this message? field located at the bottom of the confirmation window.

To suppress all delete confirmations for your ID, use the PROFILE command.

Page 158: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

The Report Index

158 User Guide

Locking and Unlocking Reports

You can lock a report to ensure that it is not edited or deleted by other users.

To lock or unlock reports

1. Type the L line command.

Your userid appears in the Lock column, indicating that you have requested

a lock for the report. While a report is locked, it cannot be deleted from the

repository.

2. Type the U line command to unlock a report that was previously locked.

Use the Electronic Notepad

Use the N line command to open the Electronic Notepad for a report. The

Electronic Notepad can be used as a scratch pad while debugging a problem.

Your notes are stored in your user profile, are unique to the selected report, and

can only be viewed from your own userid.

For a complete description of the Electronic Notepad, see Using the Electronic

Notepad (see page 173).

Modify Formatting Options

When a report is created, your installation defaults and CAIOPTS overrides are

used to select formatting options for the report. Using the Repository Viewer,

you can change many of these formatting options dynamically to control the

format and content of your reports.

Page 159: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

The Report Index

Chapter 5: Using the CAIPRINT Repository Viewer 159

Enter the O line command to display the Report Options panel.

CA Optimizer/II r8.5------ Report Options ------------- Line 1 of 15 Command ===> Scroll ===> CSR ------------------------------------------------------------------------------- JobName RYARO02S StepName RUN UserId RYARO02 Date 2004/03/05 Program PLITEST1 Offset 0001002 Comp S=0C7 Time 14.50 ------------------------------------------------------------------------- Lvl 2 Display Options Merging Options ASMINST ===> ON BINFRMT ===> DEC FILES ===> ON GRPADDR ===> ON FIRST128 ===> OFF MERGEDB ===> ON LINECNT ===> 60 MRGAUTO ===> OFF LINKAGE ===> ON MRGBASED ===> OFF LOCALSTOR ===> ON MRGCNTLD ===> OFF MEMMAP ===> ON MRGDSECT ===> OFF RPTSZ80 ===> OFF MRGFILES ===> ON SAVEAREA ===> ON MRGLINK ===> ON SHOWHEAP ===> OFF MRGLOCAL ===> ON WORKSTOR ===> ON MRGPARMS ===> OFF MRGSTAT ===> OFF MRGWORK ===> ON OCCURS ===> 1 SHOWUNMRG ===> NONE -------------------------------------------------------------------------------

The following formatting options can be modified:

Display Options

ASMINST ON|OFF

Displays the abending Assembler instruction.

FILES ON|OFF

Displays the Open Files report.

FIRST128 ON|OFF

Displays only the first 128 bytes of each record.

LINECNT nnn

The number of lines per formatted page.

LINKAGE ON|OFF

Displays the linkage section for COBOL programs.

LOCALSTOR ON|OFF

Displays local storage for COBOL programs.

MEMMAP ON|OFF

Displays the TGT, DSA, and PGT memory maps.

RPTSZ80 ON|OFF

Formats when possible using 80-byte output.

Page 160: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

The Report Index

160 User Guide

SAVEAREA ON|OFF

Displays the Save Area Trace report.

SHOWHEAP ON|OFF

Displays LE or PL/I heap storage.

Note: SHOWHEAP ON requires SAVEHEAP ON at execution time for LE

enabled COBOL or Assembler programs.

WORKSTOR ON|OFF

Displays the working storage for COBOL programs.

Merging Options

BINFRMT DEC|HEX

Displays binary values as decimal or hexadecimal.

GRPADDR ON|OFF

Displays the group address for 01-items.

MERGEDB ON|OFF

Merges symbolic names onto Database reports.

MRGAUTO ON|OFF

Merges symbolic names onto PL/I automatic storage.

MRGBASED ON|OFF

Merges symbolic names onto PL/I based variable storage.

MRGCNTLD ON|OFF

Merges symbolic names onto PL/I controlled storage.

MRGDSECT ON|OFF

Merges symbolic names onto Assembler DSECT storage.

MRGFILES ON|OFF

Merges symbolic names onto file section for COBOL.

MRGLINK ON|OFF

Merges symbolic names onto linkage section for COBOL.

MRGLOCAL ON|OFF

Merges symbolic names onto local storage for COBOL.

MRGPARMS ON|OFF

Merges symbolic names onto PL/I parameter storage.

MRGSTAT ON|OFF

Merges symbolic names onto PL/I static storage.

Page 161: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

The Report Index

Chapter 5: Using the CAIPRINT Repository Viewer 161

MRGWORK ON|OFF

Merges symbolic names onto working storage for COBOL.

OCCURS nnn|MAX

Number of table elements to display for each array.

SHOWUNMRG ON|OFF|TBLS

Displays storage for unmerged data.

Modify the formatting options as desired and press END to save your changes to

the repository or CANCEL to return to the Report Index panel without saving.

Page 162: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

The Report Index

162 User Guide

Print a Report

You have an option of printing a report to a printer, file, or other destination.

To print a report

1. Type the P line command to send a report to a printer, file, or other

destination.

The Print Options pop-up window displays:

CA Optimizer/II r8.5 ------------ Report Index ----------------- Line 1 of 68 Command ===> Scroll ===> CSR ------------------------------------------------------------------------------- Repo +------------------------------------------------------------------+ 1 | | Filt | Print Options: * Press ENTER to PRINT * | | | ---- | Printer ===> SYSTEM1A.USER01 | Lvl 1 Cmd | or | rId P | Dsname ===> 'USER01.RPTFILE' | USR7 . | Member ===> NEWMEM Disposition ===> NEW | USR1 . | | USR3 . | Copies ===> 001 | USR7 . | Class ===> X | USR7 . | PageDef ===> | USR7 . | FormDef ===> | USR7 . | Chars ===> | USR3 . | | USR7 . | Format Y/N ===> Y | R01 . | | R01 . | | R02 . | | R02 . | | R02 . +------------------------------------------------------------------+ USR2

2. Complete the following fields and press Enter to print the report, or CANCEL

to return to the Report Index panel without printing.

Printer

The destination to which the printed output is sent. You can specify a

printer name, node.userid, or blank to spool the printed output to your

TSO userid.

Dsname

The name of a data set to which the printed output is written.

Member

If you are printing the report to a partitioned data set, enter the member

name in this field.

Page 163: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

The Report Index

Chapter 5: Using the CAIPRINT Repository Viewer 163

Disposition

Specify the disposition of the data set to which the output should be

printed. This field is relevant only if printing to a data set. If the value is

NEW or MOD, a second window pops up to request allocation

parameters.

Values: SHR, OLD, NEW, and MOD

Note: For a description of the fields on the window, see the PRINT

command.

Copies

Lets you define the number of copies to be printed.

Class

Lets you define the sysout class to use to allocate the print data set.

PageDef

Lets you define the name of the library member that PSF uses to define

the page layout for printing on a 3800 Printing Subsystem Model 3.

FormDef

Lets you define the name of the library member that PSF uses to define

the form layout for printing on a 3800 Printing Subsystem Model 3.

Chars

Lets you define the name of the character arrangement tables for

printing on a 3800 Printing Subsystem Model 3.

Format

Lets you specify whether to print reports for viewing at your installation.

Default: Y

Values:

Y

Prints reports for viewing at your installation.

N

Does not print reports for viewing. Set this field to N only when

instructed to do so by CA Technical Support for diagnostic purposes.

Page 164: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

The Report Tree

164 User Guide

3. Press CANCEL to return to the Report Index panel without printing.

Usage Notes:

■ When one of more fields are changed before pressing Enter, the fields are

validated and redisplayed along with the message Press Enter to Print. To

continue, press Enter again.

■ Reports are printed using the formatting options defined in the repository.

Use the O line command prior to printing to confirm these options.

Select a Report for Viewing

Use the S line command to select a report for viewing.

When a report is selected for viewing, the report data is formatted using your

customized formatting options and the available symbolic information. The

report is then loaded into memory, a table of contents called the Report Tree is

built, and the Report Tree panel displays.

The Report Tree

The Report Tree panel displays all of the key report sections within your report,

sorted in the order in which they appear. It provides a Óshort cut• to any

section within the selected report.

CA Optimizer/II r8.5-- Report Tree -------------------- Line 1 of 13 Command ===> Scroll ===> CSR ------------------------------------------------------------------------------- JobName RYARO02A StepName RUN UserId RYARO02 Date 2004/03/05 Program CAO2DEMO Offset 00041B6 Comp S=0C7 Time 15.07 Report Contains: Intercept(s), Snap(s), Parmchk ------------------------------------------------------------------------- Lvl 2 Cmd LineNo. Description . 1 - Job=RYARO02A . 1 |-Input Options Display . 62 + |-Intercept Report . 233 + |-Snap of CAO2DEMO . 1128 |-Parmchk Report . 1183 - |-Abend S=0C7 (CAO2DEMO) . 1197 | |-Abending Statement . 1212 | |-Abending Instruction . 1230 | |-Module Call Sequence . 1242 + | |-Program CAO2DEMO . 12793 + | |-Open Files . 12809 | |-Save Area Trace . 12833 |-Execution Options -------------------------------------------------------------------------------

Page 165: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

The Report Tree

Chapter 5: Using the CAIPRINT Repository Viewer 165

To instantly position your display to any section with the report, enter S in the

Cmd column next to that section and press Enter. To position your display to the

top of the report, enter S next to the first entry in the Report Tree.

Once your display is positioned within the report, you can reposition your display

using the standard positioning commands (UP, DOWN, FIND, RFIND, LOCATE) or

press End to return to the tree and select a different short cut.

Report Tree Fields

A static information area is displayed at the top of the panel, immediately below

the command line and separated by dashed lines. The following information is

displayed in this area:

Job Name

Name of the job for which the report was created.

Step Name

Name of the step for which the report was created.

Userid

Name of the user owning the job for which the report was created.

Date

Date on which the report was created.

Program

Name of the program in control at the time of the error.

Offset

Offset within the program at the time of the error.

Comp

Completion code (S=xxx, U=dddd, or RC=dddd).

Time

Time at which the report was captured.

Report Contains

This field appears when a report contains one or more snapshots, and for

reports created by CA Optimizer or CA Optimizer/II, when a report contains

INTERCEPTS or PARMCHK violations.

The final static line in this display is the highlighted header line, containing all

of the column headers for the Report Tree panel.

The data portion of the display is scrollable but cannot be sorted. For each

entry in the Report Tree, the following information is displayed:

Page 166: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

The Report Tree

166 User Guide

LineNo

The line number within the report where the report section corresponding to

the tree entry begins.

Description

A brief description of the report section, generally matching the header

found at the top of the section in the report.

Primary Commands

The following primary commands are available from the Report Tree panel:

Command Description

BOTTOM Scrolls the display to the last line.

DOWN Scrolls the display forward.

FIND Locates text in the current display.

FM Invokes CA File Master Plus to view a data set.

HELP Requests help for a command, message or topic.

KEEP Adds data from the current display to the Keep Window.

LEFT Scrolls the display to the left.

OPTIONS Displays the current installation options in effect.

PRINT Prints all of part of the current display.

PROFILE Views and updates display preferences.

RFIND Repeats a previous FIND command.

RIGHT Scrolls the display to the right.

SYM Displays the Symbolic Utilities menu.

TOP Scrolls the display to the first line.

UP Scrolls the display backward.

VIEW Displays symbolic listing for a program.

A description of each primary command can be found later in this chapter.

For online help for any primary command, enter HELP command-name.

Page 167: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

The Report Tree

Chapter 5: Using the CAIPRINT Repository Viewer 167

Line Commands

The following line commands are available from the Report Tree panel:

Command Description

+ Expands an entry in the tree to view its subordinate sections.

- Collapses an entry in the tree to hide its subordinate sections.

! Explodes an entry in the tree by first expanding the entry and

then expanding each of its subordinates, recursively, until all of

the sections are visible.

/ Toggles an entry between the expanded and collapsed views.

S Selects a report section for viewing.

Expand and Collapse the Tree View

Some report sections are logical subsets of other larger sections, and this

relationship is represented in the tree using indentation and an increasing

number of vertical bars.

In the example below, an Abend report for program CAO2DEMO, which begins on

line 1183, has six subordinate report sections.

. 1183 - |-Abend S=0C7 (CAO2DEMO)

. 1197 | |-Abending Statement

. 1212 | |-Abending Instruction

. 1230 | |-Module Call Sequence

. 1242 + | |-Program CAO2DEMO

. 12793 + | |-Open Files

. 12809 | |-Save Area Trace

The Abend report for program CAO2DEMO is displayed with only one vertical bar.

Each of the six subordinate sections are displayed with two vertical bars,

demonstrating that they are each logically part of the Abend report.

A section in the report tree is expanded when its subordinate sections are visible

in the display, and collapsed when its subordinate sections are not visible. An

expanded section is identified in the display by the Ó-Ó symbol immediately to

the right of the line number, while a collapsed section is identified by a Ó+•

symbol. When neither symbol appears, the report section has no subordinate

sections.

Page 168: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

View a Report

168 User Guide

This example shows the same report tree, except that the entry for Program

CAO2DEMO has been expanded to show its subordinate sections. This view now

contains a direct Óshort cut• to all of this program's data sections and other key

reports.

. 1183 - |-Abend S=0C7 (CAO2DEMO) . 1197 | |-Abending Statement . 1212 | |-Abending Instruction . 1230 | |-Module Call Sequence . 1242 - | |-Program CAO2DEMO . 1267 + | | |-File Section . 1275 | | |-Working-Storage Section . 12482 | | |-External Working-Storage Section . 12491 | | |-Linkage Section . 12505 | | |-Registers at Abend . 12542 + | | |-Memory Maps . 12754 | | |-Perform Return Addresses . 12776 | | |-Paragraph Flow Analysis . 12793 + | |-Open Files . 12809 | |-Save Area Trace . 12833 |-Execution Options

By expanding and collapsing the Report Tree view, you can easily zoom in to

easily locate any areas of interest within your report.

View a Report

When you use the S line command from the Report Tree panel, your display is

positioned directly to the selected section of the report as shown next:

CA Optimizer/II r8.5-- Report ------------------- Line 1183 of 12911 Command ===> Scroll ===> CSR ------------------------------------------------------------------------------- JobName RYARO02A StepName RUN UserId RYARO02 Date 2004/03/05 Program CAO2DEMO Offset 00041B6 Comp S=0C7 Time 15.07 Report Contains: Intercept(s), Snap(s), Parmchk ------------------------------------------------------------------------- Lvl 3 ....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+.... **************************** * * S-00C7 * * A B E N D *------------* * * CAO2DEMO * **************************** ******************************************************************************** * DESCRIPTION: S0C7 - A NUMERIC FIELD CONTAINED NON-NUMERIC DATA. * PROBABLE CAUSES: 1.NUMERIC DATA WAS NOT INITIALIZED. * * 2.A SUBSCRIPT OR INDEX CONTAINED AN INVALID VALUE. * * 3.A COMP-3 FIELD HAD AN INVALID SIGN. * * 4.A GROUP MOVE OVERLAYED A NUMERIC FIELD WITH NON-NUMERIC DATA * ******************************************************************************** ********************** * ABENDING STATEMENT * **********************

Page 169: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

View a Report

Chapter 5: Using the CAIPRINT Repository Viewer 169

Report View Fields

The static information area displayed at the top of the Report Tree panel

continues to display while viewing the report.

The final static line in this display is the highlighted ruler, which scrolls left and

right automatically as you scroll the data.

The data portion of the display is both vertically and horizontally scrollable when

the report length or width cannot be fully accommodated by your screen

dimensions.

Primary Commands

The following primary commands are available from the Report Tree panel:

Command Description

BOTTOM Scrolls the display to the last line.

DOWN Scrolls the display forward.

FIND Locates text in the current display.

HELP Requests help for a command, message or topic.

KEEP Adds data from the current display to the Keep Window.

LEFT Scrolls the display to the left.

LOCATE Scrolls the display to a previously tagged position.

NOTES Opens the Electronic Notepad for this report.

OPTIONS Displays the current installation options in effect.

PRINT Prints all of part of the current display.

PROFILE Views and updates display preferences.

RFIND Repeats a previous FIND command.

RIGHT Scrolls the display to the right.

SYM Displays the Symbolic Utilities menu.

TAG Uses TAG or Ó.label• to equate a label to a position.

TOP Scrolls the display to the first line.

UP Scrolls the display backward.

VIEW Displays symbolic listing for a program.

Page 170: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Advanced Techniques

170 User Guide

A description of each primary command can be found later in this chapter.

For online help for any primary command, enter HELP command-name.

Advanced Techniques

Several easy-to-master techniques involving simple primary commands can

make your report viewing sessions more productive. We recommend that you

set your PF keys to some of these primary commands to facilitate their use:

■ The Keep Window and the Electronic Notepad can help with your diagnostic

procedure. Learn to use the KEEP command to copy data from any display

into your Keep Window.

■ The NOTES command allows you to maintain notes for each report as you

view.

■ The TAG and LOCATE commands allow you to quickly maneuver through

different sections of a report.

This section provides a detailed description of each of these advanced

techniques.

Set PF Keys

Using PF keys to execute some of the more common commands helps save time

and reduce keystroke errors when entering commands.

To set your PF keys

1. Type KEYS on any Repository Viewer command line and press Enter. The PF

Keys panel displays, allowing you to change your PF key settings for the

product.

Note: If your Repository Viewer was invoked using the NEWAPPL keyword, it

executes under its own unique application ID and therefore has its own

unique set of PF key settings. Therefore, setting your PF keys for the viewer

will not affect your settings for other ISPF applications.

Page 171: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Advanced Techniques

Chapter 5: Using the CAIPRINT Repository Viewer 171

The PF Keys panel is shown next:

PF Key Definitions and Labels - Primary Keys Command ===> More: + Number of PF Keys . . . 24 Terminal type . . 3278 Enter "/" to select . . (Enable EURO sign) PF1 . . . HELP PF2 . . . SPLIT PF3 . . . END PF4 . . . DUMP PF5 . . . RFIND PF6 . . . MAP PF7 . . . UP PF8 . . . DOWN PF9 . . . SWAP PF10 . . LEFT PF11 . . RIGHT PF12 . . RETRIEVE PF1 Label . . PF2 Label . . PF3 Label . . PF4 Label . . PF5 Label . . PF6 Label . . PF7 Label . . PF8 Label . . PF9 Label . . PF10 Label . . PF11 Label . . PF12 Label . .

2. Use the PF Keys panel you can assign any PF key to any primary command.

It is recommended to only reassign those keys whose functions are not used

by the viewer. For example, some of your PF keys may already be assigned

to some of these functions which are used by the viewer:

■ DOWN

■ END

■ HELP

■ LEFT

■ RFIND

■ RETRIEVE

■ RIGHT

■ SPLIT

■ SWAP

However, you can replace the following keys, which are not used by the

viewer:

■ RCHANGE

■ RETURN

We strongly recommend that you set one of your available PF keys to KEEP to

facilitate the use of this cursor-sensitive command.

Page 172: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Advanced Techniques

172 User Guide

Use the Keep Window

The Keep Window is a dynamic area located just above the highlighted header

line on any display. The size of the window is dynamic depending on the number

of data lines added. When the window is empty, its borders are not displayed.

You can copy any data line from any viewer display into this area, causing that

data line to remain in view even after you exit the display.

Examples of data you might add to your Keep Window include:

■ Text from a HELP command

■ Source statements from the SYM command

■ Key data values from anywhere in your report

■ Compile and link information for a program

To add a data line to your Keep Window, first enter KEEP on the command line,

then place your cursor on the desired data line and press Enter. Alternatively, if

you have set a PF key for KEEP, place your cursor on any data line and press that

key. The data line is added automatically to your Keep Window.

The following example shows compile nd link information and symbolic file

information for program CAO2DEMO added to the Keep Window:

CA Optimizer/II r8.5-- Report ------------------- Line 1246 of 12911 Command ===> Scroll ===> CSR ------------------------------------------------------------------------------- JobName RYARO02A StepName RUN UserId RYARO02 Date 2004/03/05 Program CAO2DEMO Offset 00041B6 Comp S=0C7 Time 15.07 Report Contains: Intercept(s), Snap(s), Parmchk ----------------------------------- (Keep) ------------------------------------ * PROGRAM CAO2DEMO * COMPILED ON 11 FEB,2004 AT 17.52.54 WITH COBOL FOR Z/OS 3.1.1 SYMBOLIC INFORMATION RETRIEVED FROM AD1DEV.MIKED.PROTSYM ------------------------------------------------------------------------- Lvl 3 ....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+.... COMPILED ON 11 FEB,2004 AT 17.52.54 WITH COBOL FOR Z/OS 3.1.1 COMPILE OPTIONS: ADV, APOST, NOAWO, DATA(31), DBCS, NODECK, NODUMP, DYNAM, NOFASTSRT, NOLIB, LIST, MAP, NONAME, NONUMBER, OBJECT, NOOFFSET, NOOPTIMIZE, NUMPROC(PFD), RENT, SEQUENCE, SOURCE, NOSSRANGE, NOTERM, NOTEST, TRUNC(STD), NOVBREF, NOWORD, XREF, ZWB OPTIMIZED WITH CA OPTIMIZER/II R3.1 OPTIMIZER/II OPTIONS: NOCICS, NODBGSLEEP, DTECT, NOIDMSDC, FDCHECK, PARMCHK, PFLOW, SUBRNGCK, NOTPMON, WSINIT, XCOUNT, XTIME SYMBOLIC INFORMATION RETRIEVED FROM AD1DEV.MIKED.PROTSYM

Page 173: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Advanced Techniques

Chapter 5: Using the CAIPRINT Repository Viewer 173

Each user has a separate Keep Window for each report they view. The contents

of each is saved in the user profile when a report viewing session is ended, and

is restored to the same state the next time that same dump is selected for

viewing.

Note: You can also use the KEEP command from the Report Index panel, but

that window is maintained separately, is not preserved across sessions, and

cannot be viewed while a report is loaded.

To remove a data line from the Keep Window, first enter KEEP on the command

line, place your cursor on the line being removed, and press Enter. If you have a

PF key set for KEEP, place your cursor on the line being removed and press that

key.

To prevent your Keep Window from being displayed without removing its

contents, enter KEEP OFF on the command line and press Enter. Then enter

KEEP ON to restore the display at any time. The status of your window display

(ON or OFF) is also saved in the user profile for each report you view.

Note: When the Keep Window status is OFF, the data in your Keep Window is not

lost; it is simply not displayed until the window display is reactivated. Data

cannot be added or removed from the Keep Window while its status is OFF.

On some terminals, adding several lines to your Keep Window can dramatically

reduce the number of visible lines of report data. If this is a problem, you can use

the PROFILE command to suppress the information area at the top of the display.

Use the Electronic Notepad

The Electronic Notepad allows users to maintain notes for each report they view.

The notepad is free-format and dynamically sized, allowing you to enter any of

your thoughts, ideas, or comments while viewing the report. You can also copy

and paste report information into the notepad for easy retrieval.

Notepad records are 126 bytes wide to fill a 132-column screen format, and are

horizontally scrollable for 80-column displays. You can enter any kind of data in

the notepad because there is no syntax checking.

To open a notepad from the Report Index panel, enter N in the Cmd column next

to the report entry and press Enter.

To open a notepad for an open report while viewing, enter NOTES on the

command line and press Enter.

Page 174: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Advanced Techniques

174 User Guide

The first time you open the notepad for a report, the following message displays:

CA Optimizer/II r8.5 ------------ Report Index ----------------- Line 1 of 68 Command ===> Scroll ===> CSR ------------------------------------------------------------------------------- Repositor +--------------------------------------------------------+ 1754 D | | Filter: J | No notes were found for the report you selected. | C | | --------- | Press ENTER to start a new notepad for this report. | ---- Lvl 1 Cmd JobN | | UserId N WOND | Program: SUBCOB Offset: 000026A Comp: S=0C7 | TSTUSR7 . DAVS | | TSTUSR1 . RYAR | Press END to cancel the notes request. | TSTUSR3 . WOND | | TSTUSR7 . WOND +--------------------------------------------------------+ TSTUSR7 . WANDA07C TESTCOB2 SUBCOB 000026A S=0C7 2007/03/02 16.25 TSTUSR7 . WANDA07A S0C1 RENTSCAN 0000AFA S=0C2 2007/03/01 11.00 TSTUSR7 . USER002A RUN CAOEDEMO 0003D48 S=0C7 2007/03/01 10.41 TSTUSR3 . USER002A RUN CAOEDEMO 0003D48 S=0C7 2007/03/01 10.34 TSTUSR7 . USER002A RUN CAOEDEMO 0003D48 S=0C7 2007/02/28 10.06 USER01 . WANDA07Z S0C1 TESTSCAN 0000AFA S=0C2 2007/02/28 09.43 USER01 . USRSC01B RUN CARXDEMA 000013C S=0C7 2007/02/23 14.34 USER02 . USRSC01A RUN CEEPLPKA 00BAE7A U=0666 2007/02/23 14.33 USER02 . USRSC01A STEP1 CARXDEMA 000013C S=0C7 2007/02/23 14.28 USER02 . USRSC01A RUN ABEND1 0000014 U=0001 2007/02/21 15.26 TSTUSR2

Press Enter to create a new notepad for the report, or press END to cancel the

request.

A new notepad, like the one shown next, initially contains ten blank records:

CA Optimizer/II r8.5-- Notes -------------------------- Line 1 of 10 Command ===> Scroll ===> CSR ------------------------------------------------------------------------------- Program: ASM0C7 Offset: 000005E Comp: S=0C7 Last Update: None ------------------------------------------------------------------------- Lvl 2 Cmd ....+....1....+....2....+....3....+....4....+....5....+....6....+....7.... . . . . . . . . . . -------------------------------------------------------------------------------

Page 175: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Advanced Techniques

Chapter 5: Using the CAIPRINT Repository Viewer 175

The information area located at the top of the display identifies the report for

which the notepad was created.

The final static line in this display is the highlighted ruler, which scrolls left and

right automatically as you scroll your notes.

The data portion of the display is both vertically and horizontally scrollable when

the length or width of the notepad cannot be fully accommodated by your screen

dimensions.

Use the I line command to insert a new blank record following any existing record

in the notepad. Use the D line command to delete an existing record from the

notepad.

When you have completed your updates, press END to save your updates and

return to the display from which the notepad was entered. Use CANCEL to exit

without saving your changes.

Use TAG and LOCATE

For large reports, it may be necessary to create placeholders for sections of the

report that do not appear in the Report Tree panel.

Use the TAG primary command to define a tag or label for any location in your

report. You are prompted for a tag name, as shown next:

CA Optimizer/II r8.5-- Report ------------------- Line 1281 of 12911 Command ===> Scroll ===> CSR ------------------------------------------------------------------------------- JobName RYARO02A +----------------------------------------+ ate 2004/03/05 Program CAO2DEMO | | ime 15.07 Report Contains: | Enter Tag Name: | ----------------- | ===> | ------------ Lvl 3 ....+....1....+.. | | ...+....7....+.... 000136 77 FILLER +----------------------------------------+ PROPRIETARY PROP* (+000032) *ERTY OF CA INTE* (+000064) *RNATIONAL, INC. * 000139 77 FILLER * COPYRIGHT (C) 1986-1999 BY COMP* (+000032) *UTER ASSOCIATES INTERNATIONAL, I* (+000064) *NC. * 000142 77 ERROR-FLAG ZEROS 000143 77 DATA-PICX10 SPACES 000144 77 ROW-3D 1 000145 77 COLUMN-3D 1 000146 77 RANGE-3D 1 000148 01 PARAMETER-ONE BLW=0000+0000D0 (121B2188) 000149 03 FILLER *PARAMETERONE* 000154 01 PARM-PASSED-BY-JCL BLW=0000+0000E0 (121B2198) 000155 03 PARM-MSG *WSINIT * 000156 03 PARM-FLAG *WSINIT *

Page 176: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Advanced Techniques

176 User Guide

Enter a name for your tag, from 1 to 32 characters, then press Enter to create

your tag. Leading periods are ignored.

Alternatively, you can create a tag using the .label method by entering your tag

name on the command line with a leading period. For example, to create a tag

named ÓEF• for a variable named ERROR-FLAG, position your display to that

variable and enter .EF on the command line. Then press ENTER to create the tag.

Note: If you create a tag with a duplicate name, the new tag replaces the

previously existing tag.

Once you have created your tag, you can position your display immediately to

that line using the LOCATE command or L as an abbreviation. In the example

above, enter L EF to locate the variable ERROR-FLAG. If you enter a LOCATE

command without any tag name, you are prompted for a tag name as shown

next:

CA Optimizer/II r8.5-- Report --------------------- Line 68 of 12911 Command ===> Scroll ===> CSR ------------------------------------------------------------------------------- JobName RYARO02A +----------------------------------------+ ate 2004/03/05 Program CAO2DEMO | | ime 15.07 Report Contains: | Enter Tag Name: | ----------------- | ===> | ------------ Lvl 3 ....+....1....+.. | | ...+....7....+.... ***************** +----------------------------------------+ * INTERCEPTED STATEMENT * ************************* CAPD113W SYMBOLIC MEMBER DATE/TIME DOES NOT MATCH CURRENT PROGRAM. PROGRAM: CAO2DEMO OFFSET: 004F1E LINE: 001376 MOVE 1 TO MASK3. END PROGRAM FORCING-THE-ABEND. IDENTIFICATION DIVISION. PROGRAM-ID. LOOP-COMPUTE INITIAL.

Tags are not stored in the user profile, so all tags are cleared when you exit a

report viewing session.

Page 177: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Symbolic Utilities

Chapter 5: Using the CAIPRINT Repository Viewer 177

Symbolic Utilities

Use the SYM primary command from anywhere in the Repository Viewer to

display the Symbolic Utilities menu as shown next:

CA Optimizer/II r8.5-- Report Index ------------------- Line 1 of 33 Command ===> Scroll ===> CSR ------------------------------------------------------------------------------- Rep +--------------------------------------------------------------------+ | Select a Symbolic Utility ===> | --- | | vl 1 Cmd | 1. List the contents of a symbolic file | Id . | 2. Add listings to a PROTSYM file | C01 . | 3. List globally defined symbolic files | C01 . | 4. Add or Remove supplemental symbolic files | C01 . | 5. Dynamic Symbolic Support for CA Endevor SCM | D01 . | | O02 . | Symbolic File Dsname: | O02 . | ==> | O02 . +--------------------------------------------------------------------+ O02 . RYARO02A RUN CAO2DEMO 00041B6 S=0C7 2004/03/05 14.47 RYARO02 . RYARO02S RUN PLITEST1 0001002 S=0C7 2004/03/04 16.29 RYARO02 . RYARO02S RUN PLITEST1 0001002 S=0C7 2004/03/04 16.18 RYARO02 . RYARO02P RUN PLITEST1 0001E22 S=0C7 2004/03/04 14.36 RYARO02 . RYARO02P RUN PLITEST1 0001C46 S=0C7 2004/03/04 14.35 RYARO02 . DAVSC01A RUN COMP2 00001E8 S=0C7 2004/02/25 17.46 DAVSC01 . DAVSC01A RUN COMP1 00003FE S=0C7 2004/02/24 18.06 DAVSC01 . DAVSC01A RUN COMP1 00003FE S=0C7 2004/02/24 17.46 DAVSC01 . DAVSC01A RUN COMP1 00003FE S=0C7 2004/02/24 17.37 DAVSC01 . DAVSC01A RUN COMP2 00001E8 S=0C7 2004/02/24 11.51 DAVSC01

The Symbolic Utilities can be used to:

■ List the contents of your symbolic files

■ Delete a member from a symbolic file

■ Print a program listing from a symbolic file

■ View a listing from a symbolic file

■ Add a listing to your PROTSYM file

■ List your globally defined symbolic files

■ Add or remove your supplemental symbolic files

■ Select one of the valid options from the menu to continue.

Page 178: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Symbolic Utilities

178 User Guide

List the Contents of a Symbolic File

Select SYM option 1 to list the contents of a symbolic file. For this option, you

must also enter the data set name for the PROTSYM or CSL file that you want to

view. To enter a fully-qualified data set name, enclose the name in single

quotation marks. Otherwise, your ZPREFIX value is appended to the name as the

high-level qualifier.

Note: Every time you access a symbolic file using one of the online utilities, the

data set name is stored in your profile.

Once you have entered a symbolic file name, press Enter to list the contents of

the file.

CA Optimizer/II r8.5-- PROTSYM Directory -------------- Line 1 of 42 Command ===> Scroll ===> CSR ------------------------------------------------------------------------------- PROTSYM Dsname: AD1DEV.MIKED.PROTSYM ------------------------------------------------------------------------- Lvl 2 Cmd Program Date Time Size Language Attributes . APF1 2003/07/16 18.44.00 11 HLASM . APF2 2003/07/16 18.34.00 10 HLASM . ASMTEST 2003/08/25 10.30.00 11 HLASM . ATTNTEST 2003/07/03 11.28.00 12 HLASM . BIGSEQ 2003/01/16 10.50.30 16 COBOL OS/390 . BIGVAR 2003/02/26 14.31.11 15 COBOL OS/390 . BLLSUB 2002/09/09 18.38.02 11 COBOL II . BLLTEST 2002/09/09 17.05.07 11 COBOL II . BLVTEST 2002/09/26 14.25.35 16 COBOL OS/390 . CALLDETH 2003/10/06 14.33.21 11 COBOL II . CAMRTPIP 2003/08/22 15.52.00 21 HLASM . CAOUMMAN 2003/12/09 12.50.00 43 HLASM . CAO2DEMO 2004/03/12 16.35.54 90 COBOL MVS CA-OPT . COMPODO 2003/09/04 15.46.56 32 COBOL II . DFSLET1 2003/10/08 16.39.00 10 HLASM . DISASMT 2003/11/05 17.07.00 26 HLASM . FSSC10 2004/03/03 17.37.14 64 COBOL II . IDECLARE 2002/08/28 15.15.44 42 COBOL OS/390

The PROTSYM (or CSL) Directory panel displays an entry for each available

member in your symbolic file.

Page 179: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Symbolic Utilities

Chapter 5: Using the CAIPRINT Repository Viewer 179

PROTSYM Members

For PROTSYM members, the following information is displayed:

Date and Time

When the program member was compiled.

Size

The number of PROTSYM records occupied by the member.

Language

Identifies the compiler used.

Attributes

Indicates whether a program was CA-optimized or loaded into the PROTSYM

with the NOPURGE option.

CSL Members

For CSL members, the following information is displayed:

Date and Time

When the program member was compiled.

Genlevel

Identifies the maintenance level of the Optimizer or postprocessor used to

create the member.

Release

Identifies the release number of the Optimizer or postprocessor used to

create the member.

Compiler

Identifies the compiler used.

Line Commands

The following additional functions can be performed by entering line commands

in the Cmd column on this panel:

Command Description

D Deletes a member from the symbolic file.

P Sends a listing to a printer, data set, or other destination.

S Selects a member for viewing.

Page 180: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Symbolic Utilities

180 User Guide

Delete a Member from a Symbolic File

To delete a member from a symbolic file

1. Select SYM option 1 to display the PROTSYM Directory or CSL Directory

panel.

2. Type the D line command to delete the member you want.

Because this action is potentially destructive, you are prompted for

confirmation before the member is deleted, as shown next:

CA Optimizer/II r8.5-- PROTSYM Directory -------------- Line 1 of 42 Command ===> Scroll ===> CSR ------------------------------------------------------------------------------- PROTSYM Ds +------------------------------------------------------+ ---------- | | ----- Lvl 2 Cmd Progr | Press ENTER to confirm delete for member ATTNTEST | butes . APF1 | or END to cancel the delete request. | . APF2 | | . ASMTE | Display this message? (Y/N) ===> Y | . ATTNT | | . BIGSE +------------------------------------------------------+ . BIGVAR 2003/02/26 14.31.11 15 COBOL OS/390 . BLLSUB 2002/09/09 18.38.02 11 COBOL II . BLLTEST 2002/09/09 17.05.07 11 COBOL II . BLVTEST 2002/09/26 14.25.35 16 COBOL OS/390 . CALLDETH 2003/10/06 14.33.21 11 COBOL II . CAMRTPIP 2003/08/22 15.52.00 21 HLASM . CAOUMMAN 2003/12/09 12.50.00 43 HLASM . CAO2DEMO 2004/03/12 16.35.54 90 COBOL MVS CA-OPT . COMPODO 2003/09/04 15.46.56 32 COBOL II . DFSLET1 2003/10/08 16.39.00 10 HLASM . DISASMT 2003/11/05 17.07.00 26 HLASM . FSSC10 2004/03/03 17.37.14 64 COBOL II . IDECLARE 2002/08/28 15.15.44 42 COBOL OS/390

3. Press Enter to delete the member, or END to cancel the request.

To suppress confirmation for the remainder of the session, enter N in the

Display this message? field located at the bottom of the confirmation pop-up

window.

To suppress all delete confirmations for your ID, use the PROFILE command.

Note: A password must be entered before a member can be deleted from a

PROTSYM file. The password is established during product installation. Check

with your system administrator before attempting to delete a PROTSYM

member. Once you have been given access to the correct password, use the

PROFILE command to store the password in your profile to avoid entering it

every time.

Page 181: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Symbolic Utilities

Chapter 5: Using the CAIPRINT Repository Viewer 181

Print a Program Listing from a Symbolic File

To send a program listing from a symbolic file to a printer, data set, or

other destination

1. Select SYM option 1 to display the PROTSYM Directory or CSL Directory

panel.

2. Type the P line command to print the desired program listing.

You are prompted for the destination, as shown next:

CA Optimizer/II r8.5 ------------ PROTSYM Directory ------------ Line 1 of 42 Command ===> Scroll ===> CSR ------------------------------------------------------------------------------- PROT +------------------------------------------------------------------+ ---- | | Lvl 2 Cmd | Print Options: * Press ENTER to PRINT * | P | | . | Printer ===> USILDAVC.USER01 | . | or | . | Dsname ===> 'USER01.APDSN' | . | Member ===> NEW Disposition ===> NEW | . | | . | Copies ===> 001 | . | Class ===> X | . | PageDef ===> | . | FormDef ===> | . | Chars ===> | . | | . | | . | | . | | . | | . | | . +------------------------------------------------------------------+

3. Fill in the fields as described below, then press Enter to print the member

listing:

Printer

Displays the destination to which the printed output is routed. This can

be specified as a printer name, node.userid, or blank to spool the printed

output to your own TSO userid.

Dsname

Displays the name of a data set to which the printed output is written.

Member

Displays the member name. If you are printing the listing to a partitioned

data set, enter the member name in this field.

Page 182: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Symbolic Utilities

182 User Guide

Disposition

Specifies the disposition of the data set to which the output should be

printed. This field is relevant only if printing to a data set. If the value is

NEW or MOD, a second window pops up to request allocation

parameters.

Values: SHR, OLD, NEW, and MOD

Note: For a description of the fields on the window, see the PRINT

command.

Copies

Displays the number of copies to be printed.

Class

Displays the sysout class that will be used to allocate the print dataset.

PageDef

Displays the name of the library member that PSF uses to define the

page layout for printing on a 3800 Printing Subsystem Model 3.

FormDef

Displays the name of the library member that PSF uses to define the

form layout for printing on a 3800 Printing Subsystem Model 3.

Chars

Displays the name of the character arrangement tables for printing on a

3800 Printing Subsystem Model 3.

Page 183: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Symbolic Utilities

Chapter 5: Using the CAIPRINT Repository Viewer 183

View a Program Listing from a Symbolic File

To view a program listing from a symbolic file

1. Select SYM option 1 to display the PROTSYM Directory or CSL Directory

panel.

2. Type the S line command to select the desired listing for viewing.

CA Optimizer/II r8.5-- CAO2DEMO --------------------- Line 1 of 2918 Command ===> Scroll ===> CSR ------------------------------------------------------------------------------- PROTSYM Dsname: AD1DEV.MIKED.PROTSYM ------------------------------------------------------------------------- Lvl 3 ....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+.... CA CAO2DEMO CA Optimizer/II 3.1 0403AOX00 PP 5688-197 IBM COBOL for MVS & VM 1 Invocation parameters: NONUM,NOSEQ,ADV,RENT,DYN PROCESS(CBL) statements: CBL NOCMPR2, DYN, RENT, APOST, NUMPROC(PFD), NONAME 0000100 *** COBOL FOR MVS OPTIONS *** *** OPTIMIZER/II OPTIONS *** NOADATA NOCICS ADV NOCXREF NOANALYZE NODBGSLEEP APOST NODCRDISP NOAWO NODECK BUFSIZE(27998) DTECT NOCMPR2 EXIT(NOPRTEXIT) NOCOMPILE(S) FDCHECK NOCURRENCY NOIDMSDC DATA(31) NOLIST NODATEPROC MAP

The static information area at the top of the display continues to show the

data set name of the selected symbolic file.

If your Keep Window is active and contains data, it continues to display.

The final static line in this display is the highlighted ruler, which scrolls left

and right automatically as you scroll the listing.

The data portion of the display is both vertically and horizontally scrollable

when the report length or width cannot be fully accommodated by your

screen dimensions.

Page 184: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Symbolic Utilities

184 User Guide

Add a Listing to a PROTSYM File

To add a listing to a PROTSYM file

1. Select SYM option 2 to add one or more listings to a PROTSYM file.

This option provides an online interface to the symbolic loader. It can be

used to add a single listing, a range of members, or an entire library at one

time. It supports program listings generated by any of the supported IBM

compilers and residing in any of the supported library formats.

The Add Listing to Protsym pop-up window prompts you for update

parameters, as shown next:

CA Optimizer/II r8.5-- Report Index ------------------- Line 1 of 33 Command ===> Scroll ===> CSR ------------------------------------------------------------------------------- Re +----------------------------------------------------------------------+ | Add Listing to Protsym | -- | | l 1 Cm | Protsym Dsname ===> 'AD1DEV.MIKED.PROTSYM' | d . | Listing Dsname ===> 'MIKED.QA.LST2' | 01 . | Library Type ===> PDS (PDS, SEQ, PAN, LIB, NDV) | 01 . | From Member ===> COB2DEMO | 01 . | To Member ===> | . | View Messages ===> ALL (ALL, NONE, RC) | 02 . | | 02 . +----------------------------------------------------------------------+ 02 . RYARO02A RUN CAO2DEMO 00041B6 S=0C7 2004/03/05 14.47 RYARO02 . RYARO02S RUN PLITEST1 0001002 S=0C7 2004/03/04 16.29 RYARO02 . RYARO02S RUN PLITEST1 0001002 S=0C7 2004/03/04 16.18 RYARO02 . RYARO02P RUN PLITEST1 0001E22 S=0C7 2004/03/04 14.36 RYARO02 . RYARO02P RUN PLITEST1 0001C46 S=0C7 2004/03/04 14.35 RYARO02 . DAVSC01A RUN COMP2 00001E8 S=0C7 2004/02/25 17.46 DAVSC01 . DAVSC01A RUN COMP1 00003FE S=0C7 2004/02/24 18.06 DAVSC01 . DAVSC01A RUN COMP1 00003FE S=0C7 2004/02/24 17.46 DAVSC01 . DAVSC01A RUN COMP1 00003FE S=0C7 2004/02/24 17.37 DAVSC01 . DAVSC01A RUN COMP2 00001E8 S=0C7 2004/02/24 11.51 DAVSC01

2. Fill in the fields as described below, then press Enter to update the PROTSYM

file:

PROTSYM Dsname

Enter the data set name of any PROTSYM file. When fully qualified, you

must enter the name in single quotation marks. Otherwise, the value of

ZPREFIX is added as the high-level qualifier.

Listing Dsname

Enter the data set name of your listing data set or library. When fully

qualified, you must enter the name in single quotation marks.

Otherwise, the value of ZPREFIX is added as the high-level qualifier.

Page 185: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Symbolic Utilities

Chapter 5: Using the CAIPRINT Repository Viewer 185

Library Type

Enter one of the following supported listing library types:

PDS

Partitioned data sets

SEQ

Sequential listing file

PAN

CA Panvalet library

LIB

CA Librarian library

NDV

CA Endevor SCM library

From Member

To add a single member, enter the member name in this field. For

multiple members whose names share a common prefix, enter the prefix

in this field with a single trailing asterisk (*) to indicate wild-carding. To

add a range of members, enter the first member of the range.

To Member

To add a range of members, enter the name of the last member in this

field. Otherwise, leave this field blank.

View Messages

Select one of the following options:

ALL

To view all messages generated while the listings are being added to

the PROTSYM file.

RC

To view a single message for each member containing the highest

return code produced while adding the member.

NONE

To suppress all messages.

Page 186: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Symbolic Utilities

186 User Guide

If you have requested to view output messages from the utility, the output

appears automatically once the utility has completed, as shown next:

CA Optimizer/II r8.5-- Add to PROTSYM ----------------- Line 1 of 28 Command ===> Scroll ===> CSR ------------------------------------------------------------------------------- PROTSYM Dsname: AD1DEV.MIKED.PROTSYM From: COB2DEMO Listing Dsname: MIKED.QA.LST2 To: ------------------------------------------------------------------------- Lvl 2 ....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+.... COB2DEMO POST-PROCESSING ENDED, IN25COB2 RETURNED 00000000 IN25COB2 6.2 - 02/18/2004 10.25 SYM036 PASSED PARAMETER STATEMENTS COB2DEMO,LISTER=ALL,CUTPRINT=ALL SYM010 PROCESSING HAS BEGUN FOR PROGRAM - COB2DEMO SYM006 LISTER=ALL REQUESTED SYM007 CUTPRINT=ALL REQUESTED NESTED PROGRAMS ID WS LS PD EP ------------------------------ ------ ------ ------ ------ ------ COB2DEMO 000003 000023 000864 000875 000000 SYM024 INPUT FILE PROCESSED SYM020 SYMBOLIC FILE UPDATED SUCCESSFULLY SYM021 117 SOURCE STATEMENTS SAVED SYM022 143 TOTAL RECORDS INSERTED INTO SYMBOLIC FILE SYM023 POST-PROCESSOR TERMINATED -----------------------------------------------------------------------------

3. Press END to return to the Add Listing to Protsym pop-up window.

Page 187: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Symbolic Utilities

Chapter 5: Using the CAIPRINT Repository Viewer 187

List Globally Defined Symbolic Files

Select SYM option 3 to list the names of the symbolic files which have been

globally defined in your installation defaults member, CAOUDFRX. These

symbolic files are automatically available for report formatting by any user or

job.

CA Optimizer/II r8.5-- Global Symbolic Files ----------- Line 1 of 5 Command ===> Scroll ===> CSR ------------------------------------------------------------------------- Lvl 2 Cmd Symbolic File Dsname Type . 'AD1DEV.OPT31.PROD.PROTSYM' Protsym . 'AD1DEV.OPT31.DEVL.PROTSYM' Protsym . 'AD1DEV.UTILITY.RROTSYM' Protsym . 'AD1DEV.OPT30.PROD.CSL' CSL . 'AD1DEV.UTILITY.CSL' CSL -------------------------------------------------------------------------------

Globally defined symbolic files can be PROTSYM or CSL format, and there is no

limit to the number of files that can be defined for your installation.

The following additional functions can be performed by entering line commands

in the Cmd column on this panel:

A

Adds listings to this symbolic file. This command displays the Add Listing To

PROTSYM pop-up window. Only listings can be added to PROTSYM files.

S

Selects a symbolic file for viewing. This command displays the PROTSYM

Directory or CSL Directory panel, depending on the file format.

To globally define additional symbolic files, contact your system administrator.

List Supplemental Symbolic Files

Select SYM option 4 to list the names of the symbolic files which you have locally

defined for your use. This option allows you to maintain and use your own

personal symbolic files for your own testing environments without affecting

other users.

Page 188: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Repository Viewer Commands

188 User Guide

Your locally defined supplemental symbolic files are stored in your user profile.

CA Optimizer/II r8.5-- Supplemental Symbolic Files ---- Line 1 of 16 Command ===> Scroll ===> CSR ------------------------------------------------------------------------- Lvl 2 Cmd Symbolic File Dsname Type . 'DAVSC01.TEST.PROTSYM' Protsym . 'AD1DEV.MIKED.PROTSYM' Protsym . 'CDE.DEVL.IB31.PROTSYM' Protsym . 'CDE.PROD.IB31.PROTSYM' Protsym . . . . . . . 'MIKED.QA.CSL' CSL . 'DAVSC01.CSL' CSL . 'RYARO02.CSL' CSL . . . -------------------------------------------------------------------------------

Locally defined supplemental symbolic files can be PROTSYM or CSL format, and

you can have up to 16 supplemental files defined at any one time.

To add a new file, enter the data set name on an empty line. When fully qualified,

you must enter the name in single quotation marks. Otherwise, the value of

ZPREFIX is added as the high-level qualifier.

To remove a supplemental symbolic file, clear the data set name from the line.

The following additional functions can be performed by entering line commands

in the Cmd column on this panel:

A

Adds listings to this symbolic file. This command displays the Add Listing To

PROTSYM pop-up window. Only listings can be added to PROTSYM files.

S

Selects a symbolic file for viewing. This command displays the PROTSYM

Directory or CSL Directory panel, depending on the file format.

Repository Viewer Commands

This section contains an alphabetical listing of the CAIPRINT Repository Viewer

primary commands.

Page 189: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Repository Viewer Commands

Chapter 5: Using the CAIPRINT Repository Viewer 189

FIND

Use the FIND command to locate a string in the current display.

Syntax

Find <string> [P|F|L] [col1 [col2]]

Synonyms

None.

Parameters

String

Lets you specify a 1- to 32-character text string (including quotes) that you

can use as a search argument. If it contains blanks or commas, it must be

enclosed in quotes.

P

Lets you locate the string by searching backward from the current cursor

position.

Values:

P or PREV

F

Lets you locate the first occurrence of the string by searching forward from

the top of the data.

Values:

F or FIRST

L

Lets you locate the last occurrence of the string by searching backward from

the bottom of the data.

Values:

L or LAST

col1

Lets you specify a 1-origin column number in which the string must begin, or

the 1-origin column number which begins the range of columns in which the

entire string must be found.

col2

Specify the 1-origin column number which ends the range of columns in

which the entire string must be found.

Page 190: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Repository Viewer Commands

190 User Guide

Usage Notes:

■ If the string is found, the cursor is positioned to the start of the string.

■ If the string was found on a line or in a column that was not previously in

view, the display is scrolled just enough to display the string.

■ Use the RFIND command, or FIND without an argument, to repeat the

previous search from the current cursor position.

■ If the previous search reached the top or bottom of the file without

successfully locating the search argument, a repeat find command starts

searching from the other end of the display, but always in the same direction

as the previous search.

■ Following a successful FIND command using the FIRST or LAST options,

RFIND can be used to locate the next or previous occurrence, respectively.

■ Searching for non-displayable data is not supported.

HELP

Use the HELP command to display information about any command, message,

topic, or panel.

Syntax

Help <arg |COMMANDS|MESSAGES|SCREENS|TOPICS|ALL>

Synonyms

None.

Parameters

Arg

Specifies the name of any Repository Viewer command, message, panel, or

other help topic. For example, to request help for the PRINT primary

command, enter HELP PRINT on the command line and press Enter.

COMMANDS

Requests a list of all Repository Viewer commands, from which you can

select any command to request HELP.

MESSAGES

Requests a list of all Repository Viewer messages, from which you can select

any message to request HELP.

SCREENS

Requests a list of all Repository Viewer panels, including pop-up windows,

from which you can select any panel to request HELP.

Page 191: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Repository Viewer Commands

Chapter 5: Using the CAIPRINT Repository Viewer 191

TOPICS

Requests a list of all Repository Viewer help topics other than commands,

messages, or panels, from which you can select any topic to request HELP.

ALL

Requests a list of all Repository Viewer help topics, from which you can select

any topic to request HELP.

Usage Notes:

■ To request HELP for any Repository Viewer message currently displayed on

your panel, no argument is required. Simply press the PF key you have set

for HELP, or enter HELP on the command line and press Enter.

■ If no message is currently displayed on your panel, entering a HELP

command without any argument produces the help topic for the current

panel or pop-up window.

KEEP

Use the KEEP command to add a data line from the current display to the Keep

Window, to remove a previously added data line from the Keep Window, or to

change the display status of the Keep Window.

Syntax

Keep [ON|OFF]

Synonyms

None.

Page 192: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Repository Viewer Commands

192 User Guide

Parameters

ON

Enables the Keep Window display, if the window is not empty.

OFF

Disables the Keep Window display, suppressing the contents without

discarding it.

Usage Notes:

■ If no argument is specified, the KEEP command is sensitive to the current

cursor position. When the cursor is positioned on a data line within the

display, that line is added to the Keep Window. When the cursor is positioned

on a line within the Keep Window, that line is removed from the Keep

Window.

■ Data cannot be added or removed from the Keep Window when the window

is disabled.

LOCATE

Use the LOCATE command while viewing an abend report to position your display

to a previously established tag.

Syntax

Locate <name>

Synonyms

None.

Parameters

Name

Enter the 1- to 32-character name of the previously defined tag that will be

used to reposition your display.

Usage Notes:

None.

NOTES

Use the NOTES command to open the Electronic Notepad for the current report.

Page 193: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Repository Viewer Commands

Chapter 5: Using the CAIPRINT Repository Viewer 193

Syntax

Notes

Synonyms

None.

Parameters

None.

Usage Notes:

■ If a notepad does not exist for a report, you are prompted for confirmation

before a new notepad is created.

■ Notes are stored in your profile, which is keyed by abending program name,

abending program offset, and completion code. Therefore, two or more

reports which share these attributes will also share a notepad.

■ You can launch the electronic notepad for any report from the Report Index

panel using the n line command.

OPTIONS

Use the OPTIONS command to view a report of your system-wide installation

options, including component genlevels and current status.

Syntax

Options

Synonyms

Opts

Parameters

None.

Usage Notes:

The same report can be obtained in batch by executing program CAOUOPTS

using the sample JCL provided in CAI.SAMPJCL.

Page 194: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Repository Viewer Commands

194 User Guide

PRINT

Use the PRINT command at any time to print all or part of the current display to

a printer, node. userid destination, your TSO userid, or a data set.

When you type a PRINT command, your print options appear in the Print Options

pop-up window.

Modify the following values and press Enter to print, or press END to cancel the

request.

Syntax

PRint

Synonyms

None.

Parameters

The PRINT command prompts you for input parameters using the Print Options

pop-up window with the following fields:

Printer

Displays the destination to which the printed output should be routed. This

can be specified as a printer name, node.userid, or blank to spool the printed

output to your TSO userid.

Dsname

Displays the name of a data set to which the printed output is written. If this

field is non-blank, it overrides the Printer field. When entering a data set

name, it must be fully qualified and enclosed in single quotation marks.

Otherwise, your ZPREFIX value is used as the high-level qualifier.

Member

Displays the member name if you are printing the listing to a partitioned data

set.

Disposition

Displays the disposition of the data set to which the output should be

printed. This field is relevant only if printing to a data set. If the value is NEW

or MOD, a second window pops up to request allocation parameters.

Values: SHR, OLD, NEW, and MOD

Title

Specifies the 1- to 32-character title that appears at the top each page.

Page 195: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Repository Viewer Commands

Chapter 5: Using the CAIPRINT Repository Viewer 195

Print Lines

Displays the starting and ending lines to be printed. By default the starting

line is set to one and the ending line is set to the number of lines in the

report.

Copies

Displays the number of copies to be printed.

Class

Displays the sysout class that will be used to allocate the print output

dataset.

Lines / Page

Displays the number of logical lines per page, including the title and header

lines.

Record Size

Displays the logical record length that will be used for the print dataset. By

default this is the maximum width of the data being printed. You can

increase or decrease this value to fit your printer as needed. Decreasing the

record size may result in truncation of data.

PageDef

Displays the name of the library member that PSF uses to define the page

layout for printing on a 3800 Printing Subsystem Model 3.

FormDef

Displays the name of the library member that PSF uses to define the form

layout for printing on a 3800 Printing Subsystem Model 3.

Page 196: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Repository Viewer Commands

196 User Guide

Chars

Displays the name of the character arrangement tables for printing on a

3800 Printing Subsystem Model 3.

Usage Notes:

■ When one or more fields are changed before pressing Enter, the fields are

validated and redisplayed along with the message Press Enter to Print. To

continue, press Enter one more time.

■ At the top of each printed page, the AllFusion page header appears. The

header contains your specified title, centered on the line, and the page

number at the far right.

■ On the first page only, following the header line, the information area is

printed with double-space carriage control.

■ On every page, the contents of the panel header line is printed next, also

with double-space carriage control. This may consist of column headings for

a member list, report index or report tree display, or a ruler for listings and

abend report contents.

PROFILE

Use the PROFILE command to view or update your personal viewer preferences.

Syntax

PROfile

Synonyms

None.

Parameters

The PROFILE command displays the Profile Settings pop-up window. You are

prompted for input parameters using the following fields:

Confirm Exit from Reports

Enter Y to request a confirmation pop-up window whenever you attempt to

exit an open report, or N to suppress the confirmation.

Confirm Report Deletes

Enter Y to request a confirmation pop-up window whenever you attempt to

delete a report, or N to suppress the confirmation.

Confirm Sym Member Deletes

Enter Y to request a confirmation pop-up window whenever you attempt to

delete a member from a symbolic file, or N to suppress the confirmation.

Page 197: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Repository Viewer Commands

Chapter 5: Using the CAIPRINT Repository Viewer 197

Force Upper Case Viewer

Enter Y in this field to force all output from the Repository Viewer, including

output form the PRINT command, to be displayed entirely in uppercase.

Enter N to allow mixed-case displays and printing.

Display Information Area

Enter Y in this field to allow the information area to be displayed immediately

below the command line in every viewer display. Enter N to suppress the

information area on all displays.

Note: Filters are part of the information area. If this field is set to N, the

filters will not be displayed. However, their values will still affect the Report

Index selection list.

Message Alarm Severity

Enter the lowest message severity I, W, or E which should trigger the alarm

to sound when messages of equal or greater severity are displayed on your

panel.

PROTSYM Password (Hidden)

Enter the one- to eight-character password for your PROTSYM files that was

created by your system administrator when this product was installed. If

omitted, you are prompted for a PROTSYM file in each session.

Usage Notes:

■ Press End to cancel the update request, or Enter to save your changes.

■ When one or more fields are changed before pressing Enter, the fields are

validated and redisplayed. To continue, press Enter one more time.

■ Profile changes take effect immediately.

REFRESH

Use the REFRESH command from the Report Index panel to refresh the contents

of the current display.

This has the same effect as using a SETINDEX command to reload the repository

index without changing the repository data set name.

Syntax

REFresh

Synonyms

None.

Page 198: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Repository Viewer Commands

198 User Guide

Parameters

None.

Usage Notes:

None.

RFIND

Use the RFIND command to repeat a previous search.

Syntax

RFind

Synonyms

None.

Parameters

None.

Usage Notes:

■ Using RFIND produces exactly the same results as using FIND without a

search argument.

■ If no previous FIND existed, the RFIND command ends in error.

■ If the string was found on a line or in a column that was not previously in

view, the display is scrolled just enough to display the string.

■ If the previous search reached the top or bottom of the file without

successfully locating the search argument, a repeat FIND command starts

searching from the other end of the display, but always in the same direction

as the previous search.

■ Searching for non-displayable data is not supported.

SETINDEX

Use the SETINDEX command from the Report Index panel to switch your view to

another repository data set.

Syntax

SETindex <dsname>

Page 199: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Repository Viewer Commands

Chapter 5: Using the CAIPRINT Repository Viewer 199

Synonyms

None.

Parameters

dsname

If specified, this value is used to populate the dsname field in the Enter

Repository Dsname pop-up window that displays when a SETINDEX

command is entered.

Enter the data set name of the new repository file enclosed in single

quotation marks if fully qualified. If no quotes are used, your ZPREFIX value

is used for the leading qualifier.

Usage Notes:

■ If you enter an invalid repository name, or the repository contains no abend

reports, you are presented with a blank index display. Repeat the command

using a valid data set name.

■ To select the installation default repository data set for your system, do not

enter a data set name when prompted.

■ The repository data set name is stored in your personal profile and retrieved

again the next time you start the viewer.

SORT

Use the SORT command to sort the current display in ascending or descending

order on any column header. The SORT command is only valid from the following

displays:

■ Report Index panel

■ Symbolic File Member select list panel

Syntax

Sort <column-header> [A|D] [H]

Synonyms

None.

Page 200: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Repository Viewer Commands

200 User Guide

Parameters

column-header

The name of the column on which the sort should be performed, from the

header line at the top of the display.

A|D

Specify A to sort the display in ascending order or D for descending order.

H

Specify H if the column contains hexadecimal numeric values. This allows

digits A - F to compare greater than 0 - 9.

Usage Notes:

After sorting a display, SORT * returns the display to its original order.

SYM

Use the SYM command to display the Symbolic Utilities menu.

Syntax

SYM <option>

Synonyms

CSL, CPP, LISTcsl, PROTsym, Utilities

Parameters

Option

Use this parameter to prime the selection field to any of the valid menu

items:

■ List the contents of a PROTYSM or CSL symbolic file. Once the list is

displayed, you can browse, print, or delete members using line

commands from the selection list.

■ Add listings to a PROTSYM file.

Page 201: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Repository Viewer Commands

Chapter 5: Using the CAIPRINT Repository Viewer 201

■ List symbolic files defined globally in your installation options table

CAOUDFRX. Once the list is displayed, use the S line command to list the

contents of any symbolic file, or the A line command to add members to

a PROTSYM file.

■ Add or Remove supplemental symbolic files defined locally to your

viewer profile. Once the list is displayed, use the S line command to list

the contents of any symbolic file, or the A line command to add members

to a PROTSYM file.

■ View or change the CA Endevor SCM symbolic support options defined

locally to your viewer profile. After the options display, overtype the

values to change them.

Usage Notes:

■ The last symbolic file referenced by any of the symbolic utilities is

automatically saved in the Symbolic File Dsname field.

■ For online help for a symbolic utility, select the option for that utility and

press PF1.

TAG

Use the TAG command while viewing a report to equate a line number to your

current position within the report.

Syntax

TAG <name>

Synonyms

.name

Parameters

name

Any 1- to 32-character name that will become equated with your current

position within the report you are viewing.

Usage Notes:

■ Entering a duplicate tag name replaces the previous tag with the new report

position. Two tags cannot share the same name.

■ Use the LOCATE command to position your display using a previously

defined tag.

■ All tags are automatically deleted when you close and exit a report.

Page 202: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Repository Viewer Commands

202 User Guide

VIEW

Use the VIEW command while viewing a report to display the listing for a

specified program.

The VIEW command displays the version of the listing that was used to provide

symbolic information when the report was formatted. If no symbolic information

was provided for the program in the report you are viewing, use the SYM

command instead.

Syntax

View <program-name>

Synonyms

None.

Parameters

Program-name

The name of any program that was formatted with symbolic information in

the report you are viewing.

Page 203: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Chapter 6: Using Analyzer 203

Chapter 6: Using Analyzer

This chapter describes the Analyzer component.

Overview

Analyzer helps you debug your COBOL programs with speed and assurance.

When your programs go into production, you will have confidence that testing

was thorough.

The count and timing data for each statement reveals exactly how many times

the statement was executed and how much CPU time was required. The count

and timing data might be representative of a single execution or of the

consolidation of multiple executions. In any case, all of this information prints

beside each statement on your source listing.

For testing and debugging, Analyzer:

■ Flags the statement causing the abend

■ Locates the statement where the time-out occurred

■ Identifies:

– Untested verbs

– IF tests that are always true or always false

– The path of an infinite loop

– All possible control paths into each paragraph

– Related logic (groups of code that have the same count)

■ Shows:

– What additional test data is needed

– The number of records read and written

– PERFORM ranges that can be fallen into or out of

– PERFORM ranges which can be branched out of

Page 204: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Overview

204 User Guide

In source level tuning, Analyzer:

■ Locates the most frequently executed code

■ Helps locate unexecutable code which can be removed

■ Identifies:

– Data distribution

– Code being executed more often than necessary (for instance, code

which can be moved outside a loop)

– Infrequently used code that can be overlaid

– Subroutines in need of tuning and modules in a multimodule program in

need of tuning

■ Pinpoints:

– Statements and paragraphs where the most CPU time is spent

– Statements or groups of statements in non-COBOL CSECTS which

should be tuned

■ Shows:

– Inefficient ordering of nested IF tests

– Time differences resulting from different data usages

– Time differences resulting from the use of various COBOL verbs

For maintenance, Analyzer:

■ Verifies that new code is tested

■ Shows:

– Whether additional test data is needed after a source code change

– Obsolete code

– The number of records read and written

■ Helps identify initialization, error, exception, and termination routines

■ Identifies:

– Main line logic

– Inner loops

– Data distribution (record types, number and types of errors, etc.)

With quality assurance, Analyzer:

■ Verifies that all code has been tested

■ Indicates that the program is doing what it is supposed to do

■ Identifies any unexpected changes in the processing performed by the

program

Page 205: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Counts

Chapter 6: Using Analyzer 205

In programmer training, Analyzer:

■ Reinforces good programming techniques through

– Timings on inefficient verbs

– Generated statements showing the PERFORM logic is always exited

– Comparative timings on various data usages

■ Clarifies what a new program does through counts which identify main logic:

initiation, termination, exception routines, and so on.

For dynamic program documentation, Analyzer documents:

■ What a program does

■ Where time is spent

■ Data distribution when modifications are made to program code changing

the data in the files

Counts

The Counts facility lets you identify executed (and unexecuted) paragraphs and

source statements in one program, several programs, or the whole application.

Counts can be used with or without Timings. In addition, the counts data can be

accumulated so that a single set of reports can be produced summarizing the

execution results of a whole battery of test cases.

Timings

The Timings facility lets you identify CPU-time concentrations in a hierarchical

fashion. You can look at the CPU time for the whole application, one load module,

one program, one paragraph, or one source statement. Timings can be used with

or without counts. Additionally, the Timings data can be accumulated so that a

single set of reports can be produced summarizing the Timings results of a whole

battery of test cases.

The flowchart shown next depicts the Analyzer component of CA Optimizer/II.

Page 206: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Analyzer Options

206 User Guide

Analyzer Options

Analyzer consists of two facilities: Counts and Timings. The two facilities can be

used independently or together. Pictorially:

Analyzer

┌────────────────────────────┐

│ │

(XCOUNT) (XTIME)

Executed (and Unexecuted) CPU-time analysis by

Paragraph and Source Application, Load Module

Statement Counts Program, Paragraph, and

Source Statement

Analyzer control may be needed at compile-time, execution-time, and

report-time. The following table provides a listing of Analyzer control options

available to you at compile-time, execution-time, and report-time:

Compile-time Execution-time Report-time

XCOUNT

XTIME

STIMERM

XCOUNT

XREPORT

XTIME

CNTXREF

INSTRMAP

PROCDIV

SOURCEMAP

USERID

You may freely combine Analyzer compile-time options with COBOL compiler

options and with other CA Optimizer/II options. The options above have both

compile-time and execution-time uses. Their execution-time applications are

discussed later in this chapter. See Options Listing later in this chapter for a

complete listing of all CA Optimizer/II options, their defaults, usage, and special

considerations.

The following table summarizes how you can use Analyzer's more commonly

used facilities.

To Specify at

compile-tim

e

Specify at

execution-time

Report on the paragraphs and source

statements that were executed or not

executed.

XCOUNT

Report on where the CPU time is

concentrated in your program.

XTIME

Page 207: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Analyzer Options

Chapter 6: Using Analyzer 207

To Specify at

compile-tim

e

Specify at

execution-time

Turn OFF Counts & Timings, even if

they were specified at compile-time.

XCOUNT OFF

XTIME OFF

Defer Counts and/or Timings reports

to a separate Analyzer Reporter job

step.

XCOUNT

and/or XTIME

XREPORT OFF

Begin Timings with the first program

optimized with any Analyzer or

Detector

Any analyzer

or Detector

facility option

XTIME FIRST

Produce the Execution Count

Cross-Reference report for a single

program only (for example

PGMNAME).

XCOUNT CNTXREF PGMNAME

Suppress the Source Map report for all

programs

XTIME NOSOURCEMAP ALL

Report-time Considerations

The Analyzer Reporter can be run as a separate job step any time after the

application has executed, or it can be automatically invoked in the same job step

as the application. The option that controls this is XREPORT.

The options you use to control the Analyzer Reporter are the same whether

XREPORT is ON or OFF. When using XREPORT ON, the report-time options can be

mixed freely with other execution-time options for Analyzer or Detector.

However, when XREPORT OFF is in effect at execution-time, the Analyzer

Reporter is not automatically invoked in the same job step when the application

is terminated. Instead, the Analyzer Reporter must be executed as a separate

job step. In this case, the JCL for the separate job step includes a CAIOPTS DD

statement in which only report-time options are specified.

All report-time options, except USERID, are intended for use in special

circumstances and are not needed in straightforward applications of Analyzer

where default values suffice. The USERID option permits you to associate a

unique page heading line with each Analyzer run.

Analyzer correlates all count and timing measurement data it has gathered and

uses it to produce various Analyzer reports. The measurement data prints next

to the source statements of the programs, if the SYM (or CSL) option was used

during optimization. If symbolic information is not available, you can only obtain

the Run Summary, Module Summary, and Instruction Detail reports.

Page 208: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Analyzer Options

208 User Guide

At report-time you can consolidate the measurement data from several

executions of the same programs to produce a single set of reports. The Analyzer

Run Summary report identifies the various executions that are consolidated for

the reporting run. The Run Summary shows how report-time options were used

and provides additional diagnostic information on report-time input.

JCL

To invoke Analyzer, you must specify one or more of the Analyzer options in the

compile/optimize step. To execute the Optimizer component, see the copy of

your installation's cataloged procedures for a procedure to compile/optimize/and

link (or compile/optimize/link, and go).

Compile-time

The standard procedure provided for optimization is called CAOPTII. Use this JCL

to invoke the Optimizer component.

//STEP1 EXEC CAIOPTII,

// LISTLIB='Your PROTSYM file name',

// COBOPT='XTIME'

In the above example, LISTLIB and COBOPT are symbolic options defined in the

CAIOPTII procedure. LISTLIB gives the library name of the PROTSYM (or CSL)

file which is used to produce the Analyzer reports. COBOPT passes the PARM

options for the compile/optimize step. If the cataloged procedure at your

installation does not have these symbolic options, you can specify the PROTSYM

(or CSL) library name and pass the Analyzer options using the JCL shown below:

//STEP1 EXEC CAIOPTII,

// PARM.COB='XTIME'

//COB.PROTSYM DD DSN=your.protsym.library-name,DISP=SHR

Page 209: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Analyzer Options

Chapter 6: Using Analyzer 209

Execution-time

The standard CA procedure is for compile and link only. If you are using this

procedure, you need to execute your program directly. The following JCL

executes your application and produces the Analyzer reports in the same job

step:

//STEP2 EXEC PGM=your-program-name,REGION=xxxK

//STEPLIB DD DSN=your.optii.loadlib-name,DISP=SHR

// (Concatenate the STEPLIB for your program's

loadlib name to the previous STEPLIB.)

//

.

. Your program's DD statements

.

//

//CAIPRINT DD SYSOUT=A

//CAITIMSV DD DSN=&&TIMSV.,DISP=(MOD,PASS),

UNIT=SYSDA,SPACE=(TRK,(1,1),RLSE),

DCB=(LRECL=20,BLKSIZE=4320,RECFM=FB)

//CAIOPTS DD *

XCOUNT ON

XTIME FIRST

XREPORT ON

/*

//CAISYM DD DSN=your.protsym.file-name,DISP=SHR

//CAIPRNT1 DD SYSOUT=A

//CAIPRNT2 DD SYSOUT=A

//CAISTATS DD DSN=your.optii.statistics-file,DISP=SHR

The following JCL statement descriptions are used by Analyzer and Analyzer

Reporter. The region size on the above EXEC statement should be increased a

minimum of 1 MB to accommodate the Analyzer Reporter when it is

automatically invoked following the termination of the application.

DDname Description

STEPLIB Points to the CA Optimizer/II load library. This is not

necessary if CA Optimizer/II is in your concatenated LINKLIB.

CAIPRINT Retains Analyzer (and Detector) printed output. This DD is

optional and is dynamically allocated, if omitted.

CAITIMSV Holds Analyzer's count and timing measurement data; a

MODed, OLD or NEW data set can be specified. If you only

want Analyzer reports for data from this run, omit the TIMSV

DD statement. It is then automatically dynamically allocated.

CAIOPTS Specifies Detector, Analyzer, and Analyzer Reporter options.

You can omit this DD if no options need to be specified.

Page 210: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Analyzer Options

210 User Guide

DDname Description

CAISYM Identifies a symbolic (PROTSYM or CSL) file which has not

been defined in your installations defaults. Your installation

may have selected an alternate name for the CAISYM DD, so

check with your system administrator before updating your

execution-time JCL. You can alternatively specify the SYMDSN

option in CAIOPTS to dynamically allocate your symbolic file.

CAIPRNT1

CAIPRNT2

Defines the two report data sets for Analyzer Reporter. If one

or both are omitted, they are dynamically allocated.

CAISTATS Specifies the name of your installation on the top of each page

of Analyzer Reporter output. If you do not want this facility,

omit the DD statement.

For a detailed discussion of dynamic allocation for Analyzer and Detector, see the

chapter "Usage Considerations."

Analyzer Reporter Job Step

Most of the discussion thus far has presented Analyzer Reporter as a reporting

function that is automatically invoked at a normal or abnormal end-of-job. This

automatic invocation is triggered by XREPORT ON and the reports produced by

Analyzer Reporter reflect that single execution only.

For advanced performance measurement studies, or for quality assurance

purposes, it may be desirable to combine many executions of an application. This

is achieved by concatenating the counts and timings data with prior runs. (For a

more detailed discussion of Analyzer Reporter execution, either as a job step or

automatically, see section Automatic Invocation of Analyzer Reporter.) When

reporting is deferred in this manner, the Analyzer Reporter function must be run

as a separate job or step.

See a copy of your installation's cataloged procedure for Analyzer Reporter. The

cataloged procedure supplied with CA Optimizer/II , is as follows:

// EXEC CAIARII,

// EXECDAT='your counts and timings data set name',

// LISTLIB='your PROTSYM file name'

//CAIOPTS DD *

Analyzer Reporter options (if required)

/*

Page 211: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Analyzer Reports

Chapter 6: Using Analyzer 211

EXECDAT and LISTLIB are symbolic options defined in the CAIARII procedure.

EXECDAT provides the data set name of the counts and timings data set and

LISTLIB gives the library name of the PROTSYM (or CSL) file. If the cataloged

procedure at your installation does not have these symbolics, specify these two

data sets in the execution JCL:

//stepname EXEC your-procedure-name

//CAITIMSV DD DSN=counts.and.timings.data-set-name,DISP=SHR

//CAISYM DD DSN=your.protsym.file-name,DISP=SHR

//CAIOPTS DD *

Analyzer Reporter options (if required)

/*

Example

This JCL is an example of how to use both Analyzer (with Counts and Timings)

and Detector (with subscript range checking) and get the MMAP and MXREF from

the Optimization step (STEP 1). Analyzer Reporter runs in the same job step

(STEP 2) immediately after the application terminates.

//STEP1 EXEC CAIOPTII,

// COBOPT='XCOUNT,XTIME,SUBRNGCK,MXREF,MMAP',

// LISTLIB='PAYROLL.PROTSYM'

//STEP2 EXEC PGM=FICAEXTR,REGION=512K

//STEPLIB DD DSN=PAYROLL.LOADLIB,DISP=SHR

// DD DSN=CAI.CARXLOAD,DISP=SHR *

//FILEIN DD DSN=PAYROLL.MASTER(0),DISP=OLD

//FILEOUT DD DSN=PAYROLL.MASTER(1),DISP=(NEW,CATLG),

// UNIT=TAPE

//PAYREPT DD SYSOUT=A

//CAISYM DD DSN=PAYROLL.PROTSYM,DISP=SHR **

* This is only needed when the PDS is not part of LINKLIB.

** This DD statement is only required if PAYROLL.PROTSYM has not been

defined in your installation defaults member, CAOUDFRX.

Analyzer Reports

This section explores each field in each report thoroughly. Reference it if you

have any questions concerning the fields in any of the reports.

Page 212: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Analyzer Reports

212 User Guide

CAIOPTS File Processing Report

The Execution Monitor produces this report at the start of application execution,

after the Execution Monitor has read and processed the Detector and/or Analyzer

runtime options. The report displays the input options read from the data set

defined by the CAIOPTS DD, if present. The body of the report is a display of the

80-byte records in the CAIOPTS data set exactly as read by the Execution

Monitor.

CA ANALYZER/REPORTER CAIOPTS FILE PROCESSING REPORT PAGE 1

CA OPTIMIZER/II r8.5 0404ARX00 20 FEB,2004 17.49.34

...+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8 INTERCEPTS 2 00281082

SNAP 1 00281100

PFLOW ON 00282000 PARMCHK ON 00282100

XTIME ON 00283099

XCOUNT ON 00284099 XREPORT ON 00285099

DUMP OFF 00286000

INPUT OPTION DISPLAY COMPLETE

Execution Monitor Summary Report

The Execution Monitor Summary report, which is generated at execution-time, is

separate from the Analyzer reports but accompanies each Analyzer run. The

Execution Monitor Summary report verifies that Analyzer was in operation during

the run and gives the version of each program running under Analyzer and the

CA Optimizer/II execution options specified.

CA EXECUTION MONITOR SUMMARY PAGE 21

CA OPTIMIZER/II r7 0404ARX00 20 FEB 2004 17.49.33

EXECUTION OPTIONS IN EFFECT: EXECUTION ON: OS/390K A

ACB OFF

ACTONLY OFF AMB OFF

AMBL OFF

ASMINST ON BINDER ON

BINFRMT DEC

CEEDUMP ON DB2ACTIV OFF

DCB OFF

DEB OFF DUMP OFF

EXCEED NOSTOP

FILES ON FIRST128 OFF

GRPADDR ON

IMS NO INTERCEPT 0

IOB OFF

LINKAGE ALL LOCALSTOR ALL

MEMMAP ON

MERGEDB ON

Page 213: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Analyzer Reports

Chapter 6: Using Analyzer 213

MRGAUTO ON

MRGBASED ON

MRGCNTLD ON

MRGDSECT ON

MRGFILES ON

MRGLINK ON

MRGLOCAL ON

MRGPARMS ON MRGSTAT ON

MRGWORK ON

MREPORT ALL MSAMPLE 10000

MSTAE ON

MTIME 0 OCCURS 5

PARMCHK ON

PFLOW ON PLH OFF

PRTLIB CAI.PRTLIB

PRTREPT BOTH REGMAX (128,256)

RPL OFF

SAVEAREA ON SAVEHEAP OFF

SHOWHEAP OFF

SHOWUNMRG TBLS SNAP 0

STIMERM OFF

SYMDSN CAI.PROTSYM

UCB OFF

VSAMIDX OFF

WORKSTOR ALL

XCOUNT ON

XREPORT ON

XTIME ON

LEGEND FOR OPTIMIZER OPTIONS:

B=DBGSLEEP F=FDCHECK S=SUBRNGCK

C=XCOUNT P=PFLOW T=XTIME D=DTECT R=PARMCHK W=WSINIT

B C D E F G H I J

COBOL COUNT NUMBER NUMBER RUN-TIME OPTIONS RUN-TIME OPTIONS PROGRAM COMPILATION COMPILER SPACE OF TIMES OF TIMES SPECIFIED AT SPECIFIED AT

NAME DATE AND TIME USED REL (BYTES) -> ALLOCATED EXECUTED COMPILE-TIME EXECUTION-TIME

CAO2DEMO 20 FEB,2004 17.49.25 COB OS390 1.2 3072 1 1 C,D,P,F,S,T,R,W

CAO2PCHK 11 OCT,1990 14.18.54 COBOL II r7 1024 1 1 C,D,F,S,T,R,W

Page 214: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Analyzer Reports

214 User Guide

The Execution Monitor Summary report provides the following information for

every COBOL program running under Detector or Analyzer:

A

The first part of the report lists in alphabetical order the options that were in

effect during this execution of the application.

B

The second part of the report lists various attributes of all the optimized

COBOL programs found by the Execution Monitor during the execution of the

application. Entry to any program compiled/optimized with the Detector or

Analyzer Option, causes it to be listed here.

C

Compile date, which helps identify the version of the program.

D

Compile-time, which helps identify the version of the program.

E

The COBOL compiler and release number used to compile this program.

F

The amount of main storage required to store XCOUNT data.

G

Number of times the Execution Monitor was required to allocate XCOUNT

space.

H

Number of times the program was executed during the run.

I

Compile-time options in effect for the program.

J

Runtime options in effect for the program.

K

The operating system under which the application executed is shown as

MVS, MVS/XA, MVS/ESA, OS/390, or z/OS.

Page 215: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Analyzer Reports

Chapter 6: Using Analyzer 215

Run Summary Report

This report prints every time an Analyzer reporting run is executed. It provides

EXCP counts for each ddname, a summary of the options specified, runs

consolidated, and other information. The example below shows the format for a

single execution:

CA ANALYZER RUN SUMMARY PAGE

1

CA OPTIMIZER/II r8.5 0404ARX00 20 FEB,2004 17.49.34

A ANALYZER RUN IDENTIFICATION 20 FEB,2004 17.49.34 CA

EXECUTION OPTIONS IN EFFECT:

B XTIME ON

XCOUNT ON

XREPORT ON SOURCEMAP ALL

CNTXREF ALL

LINECOUNT 60 TOTAL SAMPLES TAKEN 361C

IDENTIFICATION OF EXECUTIONS CONSOLIDATEDD

COUNT JOB STEP PROC STEP DATE TIME SAMPLES

001 XYZAB02A RUN 02/20/2004 17.49.31 361

EXCP COUNT BY DDNAMEE

DDNAME UNIT EXCP COUNT

CAITIMSV UCB 14 * STEPLIB UCB 106 *

SYS00003 UCB 6 *

SYS00004 UCB 6 * SYS00005 UCB 5 *

SYS00006 UCB 5 *

SYS00007 UCB 6 *

SYS00008 UCB 317 *

-------- ---------

TOTAL 465

A

The first line of the Run Summary report identifies the reporting run: the

current date and time, and any user identification information which was

specified in the USERID control statement.

B

This section displays the Analyzer reporting control statements (options)

which are in effect for this run. When certain statements have not been

specified, the default controls are listed.

The options which were specified to control the measurement gathering

process during program execution are listed for your reference. When

multiple executions have been consolidated, the measurement options could

be different for each execution. In this case, line B shows the options

specified for the first execution step. If any execution steps after the first

have different options, the options that are different from the original ones

print in the "Identification of Executions Consolidated" report section.

Page 216: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Analyzer Reports

216 User Guide

C

This line gives the total number of time samples taken for all of the

executions consolidated in this set of reports. If no time measurement data

is available, this line does not print.

D

This section identifies the executions that are consolidated in this report.

Each line represents a single execution step. The job name, step name,

procedure name, date, time, and total number of samples print for each

execution step. If there is no time measurement data available, the Samples

column remains empty. If the next job step has different execution options,

the options and their differing values will precede the next identification line

for the job step.

E

The EXCP count and the unit addresses are listed for every ddname. The

EXCP count is listed for each unit and its associated ddname, if the data set

has multiple volumes. If you have SYSIN/SYSOUT data sets under JES, the

EXCPs are added together and appear as a sum labeled JES.

The EXCP counts can give you some important insights into the efficiency of

your blocking and overlay structures. A blocking factor that is too low will

show up as a higher EXCP count. A high number in the EXCP COUNT field for

the STEPLIB ddname may indicate an inefficient overlay structure. This

section of the Run Summary report also shows how far your programs

progressed in terms of the number of records read in and the number that

were written out.

Note: The EXCP counts are taken from SMF internal counters.

Page 217: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Analyzer Reports

Chapter 6: Using Analyzer 217

Module Summary Report

The Module Summary report makes it possible to accomplish CPU time tuning on

a broader scale: at the load module and CSECT level. The report isolates those

CSECTs within load modules that consume the most execution-time. To generate

the Module Summary, XTIME (for timings) must have been used.

The Module Summary report shows how the total CPU time for the set of

executions in this Analyzer reporting run is distributed across all of the CSECTs

within each load module that has samples. The report lists timings for any

system module such as SORT, access methods, and so on. Supervisor modules

invoked by SVCs, such as OPEN, CLOSE, and EXCP, are not shown, but their CPU

time is charged to the SVC instructions within the CSECTs.

This example shows a multimodule execution:

CA MODULE SUMMARY PAGE 2

CA OPTIMIZER/II r8.5 0404ARX00A 20 FEB,2004 17.49.34

B C D E F G H I J

EXECUTIONS LOAD DATE TIME CPU TIME PERCENT OF

CONSOLIDATED MODULE CSECT COMPILED COMPILED COBOL COPT MIN.SEC.HUN MODULE TOTAL PERCENT OF TOTAL

1 0.01.26 100.00 .XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

CAO2DEMO 0.01.25 100.00 98.84* .XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX CAO2DEMO FEB 20,2004 17.49.25 OS390 OPT DA 0.01.25 100.00 98.84 .XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

CEEBINIT 0.00.01 100.00 .44* .

CEEBINIT NOT 0.00.01 100.00 .44 . IGZCPAC 0.00.01 100.00 .71* .

IGZCPAC NOT 0.00.01 100.00 .71 .

*REGN-00 0.00.00 100.00

Page 218: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Analyzer Reports

218 User Guide

A

The identification for each reporting run, the date and time of the reporting

run, and the user program-ID information (if provided).

B

The total number of sets of separate execution measurement data

consolidated for this run.

C

All load modules in this reporting run and the CSECTs within those load

modules are identified.

A load module may consist of one or more programs (CSECTs) grouped as

one entity by the linkage editor. It is possible that the same CSECT may

appear in more than one load module, and will therefore be listed separately

for each module.

Any timings which cannot be related back to a load module are resolved to

the 16 megabyte boundary of virtual storage in which they occurred. These

samples are reported under the module name *REGN-nn or *SYSTMnn,

where nn is the hexadecimal value of the high order byte of the 4-byte

address in which the sample occurred. *REGN-nn identifies all CPU time in

the region (Private User Area) that cannot be related to a load module.

*SYSTMnn identifies all CPU time outside of the region that was incurred on

your behalf and under your task, excluding SVC routines. A data

management routine is an example of the latter.

D

Date the program was compiled and optimized.

E

Time the program was compiled and optimized.

F

Since the Analyzer reporting facilities are oriented to COBOL execution

environments, each individual CSECT is identified as COBOL or NOT,

meaning not a COBOL CSECT. The compiler version (ANS2, ANS3, ANS4, VS,

COB2, COB3) for each COBOL CSECT is displayed.

G

Each COBOL CSECT is further classified as being optimized (OPT) or not

optimized (NOPT). This shows at a quick glance which COBOL programs have

yet to be compiled with CA Optimizer/II. Also, if a COBOL module has been

optimized with any of the Detector features, a D prints next to OPT. If it has

been optimized with any of the Analyzer features, an A prints next to OPT. A

blank indicates that this is not a COBOL program.

H

The CPU time for each load module and each CSECT within each load module

is displayed in minutes, seconds, and hundredths of seconds.

Page 219: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Analyzer Reports

Chapter 6: Using Analyzer 219

The first entry in the column is the total CPU time for the run (or set of

consolidated runs). This total CPU time is the sum of the time-weighted

samples and therefore approximates, and is less than, the job step CPU time

displayed on the JES job log. It is less because CPU time is not included for

processing:

■ The application before timings are started

■ The application after timings have ended

■ Analyzer to process and write the timings data

The CPU time for each load module is the sum total of the CPU time

measured for all CSECTs within the load module.

I

The first percentage column gives the percentage of this load module's time

that is consumed by each CSECT.

The percentage in the second column relates each CSECT to the total CPU

time reported. The load module lines give the percentage of the total CPU

execution-time that was devoted to each load module. The line for each

CSECT tells what percent of the total CPU time was devoted to that CSECT.

J

The percent histogram depicts the CPU time distribution by individual CSECT

and load module. This graph shows at a quick glance which CSECTs and load

modules used large amounts of CPU time.

Page 220: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Analyzer Reports

220 User Guide

Source Listing Count and Timing Report (SOURCEMAP)

On the COBOL source listing, both the count and timing measurement data print

in columns to the right of the source code.

Note: Heading lines pertain to the date and time of compilation, not the

report-time. This data is obtained from the symbolic file. The page numbering

also reflects that of compilation, rather than the page number associated with

Analyzer (reporter) output.

CA SOURCEMAP FOR PROGRAM CAO2DEMO PAGE 13 CA OPTIMIZER/II r8.5 0404ARX00 PP 5688-197 IBM COBOL for MVS & VM 1.2.0 10 OCT,1999 10.32.58

LineID ----+----1----+----2----+----3----+----4----+----5----+----6----+----7--

A B D

SENTENCES MOFFSET COUNTS PERCENT OF TIME SPENT

000477 PROCEDURE DIVISION USING PARMS. 001430 1 .2* ---FALL-THROUGH TO NEXT PARAGRAPH. 00162A 1 *

000478 ****************************************************************** *

000479 ** P R O C E D U R E D I V I S I O N ** *

000480 ****************************************************************** *

000481 * E

000482 ****************************************************************** *

000483 MAIN-PROGRAM-LOGIC SECTION. 001634 1 *

000484 *

000485 PERFORM PRE-INIT. 00163A 1 * 000486 PERFORM INITIALIZE-DEMO. 001648 1 *

---FALL-THROUGH TO NEXT PARAGRAPH. 001656 1 *

. .

.

001131 *

001132 WORKING-STORAGE-INIT SECTION. 00414C 1 * 001133 *

001134 * +--------------------------------------------------------------+ *

001135 * | ABEND FORCED BY ADDING NUMERIC TO AN UNINITIALIZED | * 001136 * | VARIABLE. | *

001137 * +--------------------------------------------------------------+ *

001138 * F 001139 ADD 5 TO NON-INITIALIZED-NUMBER. 004158 1 .1****ABEND HERE 001 *

C ***EXIT FROM PERFORMED PARAGRAPH(S). 004178 0 *

---FALL-THROUGH TO NEXT PARAGRAPH. 001656 * *

000511 *

001402 LOOP-PARAGRAPH SECTION. 004FDA * 001403 LOOP-BEGIN. 004FDA 149 *

001404 COMPUTE BINARY-CNTR-SAVE = 004FFA 149 .7*

001405 ((PACK-CNTR + SUB1 + B) * (PACK-CNTR + SUB1 + A)) *

001406 + ((PACK-CNTR + SUB2 * B) * (PACK-CNTR + SUB2 * A)) *

001407 + ((PACK-CNTR + SUB3 * B) * (PACK-CNTR + SUB3 * A)) *

001408 + (SUB1 * A * SUB2 * B * SUB3 * C * SUB * D) *

001409 + MASK3. *

Page 221: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Analyzer Reports

Chapter 6: Using Analyzer 221

A

The MOFFSET addresses print along with the count and timing measurement

data on the source listing.

B

This column contains the total execution count (XCOUNT) for each verb.

Each count represents the number of times the COBOL verb itself was

executed and not the number of times a loop was executed. Using the

PERFORM UNTIL as an example, Analyzer counts the number of times the

PERFORM verb was executed and not the number of times the PERFORM

Range was executed as a result of UNTIL.

C

Two types of paragraph exit indicators may appear. They are EXIT FROM

PERFORMED PARAGRAPH(S) and FALL-THROUGH TO NEXT PARAGRAPH

messages.

The EXIT FROM PERFORMED PARAGRAPH(S) message appears at the end of

each PERFORM Range. The execution count represents the number of times

control entered the PERFORM exit sequence as a result of a PERFORM verb.

Unlike the fall-through message, this message appears at each PERFORM

Range exit point even if its applicable count is zero.

The fall-through message indicates that control is passed from the

statement preceding the message to the paragraph name following the

message. If control does not fall through or the paragraph name is not

referenced, the message is omitted.

For example, suppose you have a paragraph that has a conditional GO TO

verb in it that transfers control to the exit verb for that paragraph. A FALL

THROUGH TO NEXT PARAGRAPH message is inserted before this label. This

is used to count the number of times that the exit paragraph label was fallen

through, as opposed to the number of times it was branched to. To

determine the number of times a label was branched to, subtract the counts

on the FALL THROUGH TO NEXT PARAGRAPH message from the counts on

the EXIT verb.

If both the fall-through and PERFORM exit messages appear together, their

respective counts indicate how many times the paragraphs exited through

the PERFORM linkage versus passing to the next statement.

D

The CPU time for each source statement is expressed as a percentage of the

program's total CPU time. When the percentage for a statement is less than

one-tenth of one percent, it is not listed.

If the program calls another program, all of the CPU time used in the called

program is charged to the CALL verb. All CPU time used by system functions

is charged to the verbs which invoked those functions, such as OPEN,

CLOSE, READ, WRITE, and so on.

Page 222: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Analyzer Reports

222 User Guide

Thus, all CPU time used by this program, including that of any program

subroutines and operating system functions it invokes, is ascribed to the

appropriate source statement.

The only exception to this is when READY TRACE is used in OS/VS COBOL.

When there is an unreferenced paragraph name, the TRACE time that

normally would be attributed to that paragraph name falls instead on the

preceding statement.

E

At a quick glance, the histogram shows any high concentrations of CPU time.

It also indicates which statements received little or no CPU time

concentration. The source statement containing the highest concentration of

CPU time shows a full histogram line, and all other source statements are

proportional to it.

F

If the program abends during execution, a message prints at the far right,

flagging the statement that caused the abend. If the abend occurred in a

called program or system module, Analyzer flags the statement responsible

for the call.

If multiple executions are being consolidated and multiple abends have

occurred, each abend is identified by the message to the right containing an

abend number. The abend number relates directly back to the Run Summary

report and matches the number assigned to the execution step in which the

abending program is contained.

Change Summary Report

This report contains a brief extract from the SOURCEMAP report that targets

selected source statements that have been tagged with a change.

The Change Summary report is generated immediately following the

SOURCEMAP report for each program. It contains only those statements that

have been tagged as changed during application development.

CA YEAR 2000 CHANGE SUMMARY REPORT PAGE 1

CA OPTIMIZER/II r8.5 0404ARX00 10 OCT,1999 12.01.29

A B C D E F

PAGE# STMT# TYPE COUNTS SOURCE IMAGE % HISTOGRAM

----- ------ -------- ------ ..1....+....2....+....3....+....4....+....5....+....6....+....7.. --- -------------------

11 000391 CAWINUP 3 CALL 'CAWINUP' 17.5 *XXXXXXXXXXXXXX

11 000397 CAWINUP 3 CALL 'CAWINUP' *

11 000403 Y2K 3 COMPUTE DAYS-BETWEEN = 365 * *

Page 223: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Analyzer Reports

Chapter 6: Using Analyzer 223

The report displays the following information:

A

The page number where the statement resides in the SOURCEMAP report or

the listing file for the program.

B

The sequence number for the statement.

C

The token that was used to tag the statement.

D

The number of times that the statement was executed.

E

The 80-byte source image for the statement.

F

The CPU percentage, including the histogram report, if timings were taken

for the program during execution.

The entries in the tag table are processed sequentially, so the first tag to be

identified on any line is reported in the Change Summary report. Even if a source

statement matches more than one tag, only the first matching tag is reported.

The percentage and histogram fields in the Change Summary report are not

available if XTIME is not in effect for the execution, or if none of the source

statements in the report have any timings attributed to them.

The Change Summary report cannot be produced without a SOURCEMAP report

or without the XCOUNT option in effect.

Page 224: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Analyzer Reports

224 User Guide

Report of Unexecuted Paragraphs

This report lists each paragraph name that did not execute (received no counts)

for this Analyzer run. This information can be very valuable in debugging and

testing. There are many possible reasons why a paragraph may not have

executed, including logic errors or inadequate test data. The report is organized

in a two-up fashion from left to right.

CA UNEXECUTED PARAGRAPHS PAGE 1 CA OPTIMIZER/II r8.5 0404ARX00 20 FEB,2004 17.49.34

PROGRAM-ID = (CAO2DEMO)

A B C D A B C D PAGE STATEMENT # PAGE STATEMENT #

NO COMP/SOURCE *------PARAGRAPH NAME----------* NO COMP/SOURCE *------PARAGRAPH NAME----------*

22 000669/ GTNN3 22 000671/ GTY3 22 000676/ GTY1 22 000678/ GTY4

22 000683/ GTNN4 22 000685/ GTY2

22 000689/ GTYY5 22 000693/ GTYN5 22 000695/ GTYY6 29 000832/ ID4-2

33 000887/ CHECK-0 37 001056/ PARAGRAPH-5

38 001071/ PARAGRAPH-9 39 001112/ FD-CHECK

39 001121/ SUBRANGE-CHECK 39 001132/ WORKING-STORAGE-INIT

41 001144/ PRINT-LIST-2 41 001150/ PRINT-LIST-3

41 001156/ PRINT-RL1 41 001164/ PRINT-RL2

41 001172/ PRINT-RL3 41 001180/ PRINT-RL4

42 001188/ PRINT-RL5 43 001199/ PRINT-ARRAY

43 001204/ LINE-LOOP 43 001207/ ELEM-LOOP 43 001218/ LINE-RITE

TOTALS FOR (CAO2DEMO):E 27 UNEXECUTED PARAGRAPHS 106 EXECUTED PARAGRAPHS

133 TOTAL PARAGRAPHS

This report displays the following information:

A

The source listing page number where the paragraph begins.

B

The compiler assigned statement number.

C

The programmer assigned statement number.

D

The paragraph name.

E

Counts of total executed and unexecuted paragraphs.

Page 225: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Analyzer Reports

Chapter 6: Using Analyzer 225

Paragraph Execution-time Summary

This report identifies the ten most time-consuming paragraphs in the program.

Analyzer lists them in order by the amount of time consumed, with the

paragraphs consuming the most time appearing first. These may be the

paragraphs most worthwhile to tune. The report will show less than ten

paragraphs, when the program itself contains less than ten, or when less than

ten have executed.

When the Sourcemap report consolidates multiple executions of a program, the

time measurement data is consolidated to show the overall ten most

time-consuming paragraphs.

CA PARAGRAPH EXECUTION-TIME SUMMARY PAGE 2

CA OPTIMIZER/II r8.5 0404ARX00 20 FEB,2004 17.49.34

PROGRAM-ID = (CAO2DEMO) A B C D E F G

PAGE STATEMENT # CPU TIME

NO COMP/SOURCE *------PARAGRAPH NAME----------* (SECONDS) PERCENT 35 000968/ MLT-SUB-1 .54 42.6 * XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

25 000746/ PARAGRAPH-4600 .41 32.6 * XXXXXXXXXXXXXXXXXXXXXXXXXXXXX

36 000998/ MLT-SUB-3 .10 8.1 * XXXXXXX

35 000984/ MLT-SUB-2 .01 1.1 *

48 001367/ ABEND-PARAGRAPH .01 .9 *

36 001014/ MLT-SUB-3-EXIT .01 .8 *

24 000725/ PARAGRAPH-4100 .01 .5 *

18 000561/ START-PGM-DISP .01 .4 *

49 001403/ LOOP-BEGIN .01 .4 *

23 000705/ PARAGRAPH-4000 .00 .3 *

CPU OVERHEAD FOR PARAGRAPH FLOW (PFLOW) SUPPORT 7.0%

CPU OVERHEAD FOR EXECUTION COUNT (XCOUNT) SUPPORT 4.6% END OF PARAGRAPH EXECUTION-TIME SUMMARY FOR (CAO2DEMO)

Page 226: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Analyzer Reports

226 User Guide

These are the contents of the Paragraph Execution-time Summary:

A

The source listing page number where the paragraph begins.

B

The compiler statement number.

C

The COBOL line number. If the source sequence numbers are not coded in

the program identified by PROGRAM-ID, this field is blank.

D

The paragraph name.

E

The CPU time (in seconds) consumed by each paragraph.

F

The percentage of the total program CPU time devoted to each paragraph.

G

The histogram showing the CPU-time distribution. The paragraph name with

the highest time consumption shows a full histogram line, the other lines are

proportional to it.

Execution Count Cross-Reference Report (CNTXREF)

This report groups all the source statement numbers by the number of times

they were executed. You can tell at a glance which groups of statements were

executed the same number of times and are therefore possibly related. You can

use the Execution Count Cross-Reference report in maintenance by comparing

counts between runs to make sure changes were made correctly.

Page 227: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Analyzer Reports

Chapter 6: Using Analyzer 227

This report is your major quality assurance tool. If the count field on the first line

of the report is not zero, then every program statement was executed at least

once. Thus, a quick look at the first line of the report's first page tells you how

thoroughly the program has been tested.

CA EXECUTION COUNT CROSS REFERENCE PAGE 1

CA OPTIMIZER/II r8.5 0404ARX00 (CNTXREF) 20 FEB,2004 17.49.34 A B C PROGRAM-ID = (CAO2DEMO)

COUNT TOTAL COBOL LINE NUMBERS

0 000527 000559 000663 . 000669 GTNN3

. 000670

. 000671 GTY3

. 000672 000675

. 000676 GTY1

. 000677

. 000678 GTY4

. 000679-000680

. 000683 GTNN4

. 000684

. 000685 GTY2

. 000686 . 000689 GTYY5

. 000690

. 000693 GTYN5 . 000694

. 000695 GTYY6

. 000696 000765-000766 000779 000780 000782 000783 000784 000785 000786 000802-000803 . 000805-000806 000808-000809 000810-000811 000814-000819 000827-000828 000831

. 000832 ID4-2

. 000833-000835 000837-000838 000847 000851 000860 000862 000864 000866 000885 . 000887 CHECK-0

. 000888-000894 000896 000901 000902 000905 000906 000928 000929 000930 000931 000932

. 000933-000935 000938-000940 000943-000945 001047 001054 . 001056 PARAGRAPH-5

. 001057 001061 001065 001069

Page 228: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Analyzer Reports

228 User Guide

A

This column is the execution count (XCOUNT) value. A series of lines

showing the same count values begin and end with the count number.

Intervening dots indicate that the same count prevails.

Note: When a count range extends beyond a page, the new page repeats

the count column digit in parentheses indicating that the count is continued

from the previous page.

B

The last line of a count group gives the total number of program statements

having the specified execution count.

C

The six-digit compiler statement numbers belonging to each count category

are listed. Groups of consecutive statements with the same counts are

shown by the first statement number, one hyphen (-), and the last

statement number.

When the statement number represents a paragraph name, that name prints

following the statement number on a separate line.

If the NUM option is specified at compile-time, Analyzer uses six-digit source

statement numbers.

Instruction Detail Report (INSTRMAP)

This address-oriented report is language-independent and can be produced for

any CSECT. The Instruction Detail report lists only those instructions, known as

hot spots, that use a significantly greater amount of CPU time than the others in

the program. A hot spot may be a single, high CPU-time instruction, such as a

move long (MVCL) or it may be a group of instructions performing some very

frequently executed function. Knowing the location of these instruction hot spots

can help you reduce the program's total execution-time.

Page 229: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Analyzer Reports

Chapter 6: Using Analyzer 229

The following is a sample of the Instruction Detail report.

CA INSTRUCTION DETAIL REPORT PAGE 1

CA OPTIMIZER/II r8.5 0404ARX00 (INSTRMAP) 23 FEB,2004 17.58.50

REPORTER RUN IDENTIFICATION 23 FEB,2004 17.58.50 CAA

CPU TIME BY INSTRUCTION IN CSECT (CAO2DEMO)B

C D E F G H CSECT PERCENT OF CUMULATIVE PERCENT OF INSTRUCTION

- 6 HEX LOC + 6 HEX ADDRESS CSECT MODULE TOTAL CSECT MODULE TOTAL CLUSTERING PERCENT OF CSECT

--------------------- ----------------------- 000000000000 * 5810E0185001 000000 0.682 0.682 0.667 0.682 0.682 0.667 . .

000000000000 * 5A10E0005800 000000 0.891 0.891 0.872 1.573 1.572 1.539 . .

00005810E018 * 5001E0204110 000000 0.638 0.638 0.625 2.211 2.210 2.164 . . 00005A10E000 * 580010140600 000000 1.185 1.185 1.160 3.396 3.395 3.324 . .

10045410E01C * 5010E01818E0 000000 1.412 1.412 1.383 4.808 4.808 4.707 . .

E0185001E020 * 411010045410 000000 0.936 0.936 0.916 6.406 6.405 6.272 . . E01C5010E018 * 18E007FE0000 000000 1.736 1.736 1.700 8.142 8.142 7.972 . .X

E02041101004 * 5410E01C5010 000000 0.758 0.758 0.742 8.900 8.900 8.714 . .

05E100000228 * 5850934858E0 00275C 0.329 0.329 0.322 9.748 9.748 9.545 . . 050E5810D358 * 05E10000022C 00276A 0.336 0.336 0.329 10.406 10.406 10.189 .XXXX .

180F4C00C10A * 59F092B84720 002788 0.566 0.566 0.555 11.286 11.285 11.050 . .

18EF8BE00002 * F2F5D20876B0 0027A0 0.326 0.326 0.320 11.933 11.933 11.684 . . F2F5D20876B0 * FA33D214D2FC 0027A6 2.885 2.885 2.825 14.818 14.818 14.509 .XXXXXXXX .X

FA33D214D2FC * 1AE7FC73D210 0027AC 0.435 0.435 0.426 15.253 15.252 14.935 .XXXXXXXX .

FC73D210E85C * FA75D210502A 0027B4 12.210 12.210 11.957 27.463 27.463 26.891 .XXXXXXX .XXXXXXXX FA75D210502A * 594092B84720 0027BA 0.866 0.866 0.848 28.329 28.328 27.739 .XXXXXXXX .

F2F5D21876B0 * FA33D224D2FC 0027D8 2.393 2.393 2.343 31.437 31.437 30.783 . .X

D224D2FC1AE7 * FC73D220E85C 0027E0 0.309 0.309 0.303 31.966 31.966 31.301 .XXXXXXX .

FC73D220E85C * FB76D210D221 0027E6 10.108 10.108 9.898 42.074 42.074 41.199 .XXXXXXXX .XXXXXX

FB76D210D221 * 580093445900 0027EC 0.526 0.526 0.515 42.599 42.599 41.713 .XXXXXXXX .

F2F5D21876B0 * FA33D224D2FC 00280E 1.919 1.919 1.879 44.721 44.721 43.791 . .X

FA33D224D2FC * 1AE7FC73D220 002814 0.535 0.535 0.524 45.257 45.256 44.315 .XXXXXXXX .

FC73D220E85C * FA86D20FD221 00281C 9.441 9.441 9.245 54.800 54.800 53.660 .XXXXXXX .XXXXXX

. .

. .

D262435CE68F * 5810D35805E1 003BF2 0.679 0.679 0.665 98.684 98.684 96.632

100.000 100.000 97.922

CAO2DEMO INSTRMAP PROCESSING COMPLETED

Page 230: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Analyzer Reports

230 User Guide

A

Identifies the Analyzer reporting run that produced this report.

B

The CSECT identification appears in the heading.

C

The contents of storage, six bytes before and six bytes after, help to further

identify the instruction.

Except for branch destinations, the -6 HEX column contains the hexadecimal

instruction that used the CPU.

The hexadecimal data should match the hexadecimal instruction of that part

of the code on your CSECT listing. If not, the code may be from a different

listing, or the program may have modified its own instruction code during

execution.

If your program contains instructions modified during runtime, and if both

the original and modified instructions use large amounts of CPU time,

Analyzer will print the original and modified instructions on separate lines.

D

Analyzer identifies each instruction appearing in this report by its offset

relative to the CSECT origin.

E

The percent columns relate the CPU time spent at each CSECT address as a

percentage of the total CPU time spent in the CSECT, load module, and entire

execution run.

F

The data in the "Cumulative Percent Of" columns shows the amount of CPU

time spent at all addresses up to and including this one. As a result, the last

figure in the CSECT column of the "Cumulative Percent Of" heading is always

100%. The last figure in the MODULE column under the "Cumulative Percent

Of" heading is the percentage of the load module CPU time used by the

CSECT. The percentage of the entire execution run consumed by the CSECT

appears at the foot of the "Cumulative Percent Of" TOTAL column.

G

The instruction-clustering histogram shows tight clusters of hot spot

instructions in the program's code. There may be groups of instructions that

perform some heavily executed function. If a group of instructions appearing

in this report forms a cluster of consecutive addresses, the

instruction-clustering histogram will show high values for these instructions.

On the other hand, an instruction which appears on this report and is

relatively isolated from any of the others, indicates a single high-CPU-time

instruction in an otherwise low-CPU-time set of code. The clustering

histogram value for this instruction will be low.

Page 231: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Usage Considerations

Chapter 6: Using Analyzer 231

H

The Percent Of CSECT histogram graphically represents the CSECT column in

the "Percent Of" heading.

Usage Considerations

This section provides the following information:

■ Using Analyzer with IMS (see page 231)

■ Analysis of counts results (see page 231)

■ Interpretation of timings (see page 232)

■ Automatic invocation of Analyzer Reporter (see page 234)

■ Relationship between XTIME and DBGSLEEP/DBGAWAKE (see page 235)

■ Tagging a source statement for the Change Summary report (see page 235)

■ Restrictions (see page 236)

Analyzer with IMS

Analyzer can be used in IMS environments. A complete discussion on how to use

Analyzer under IMS can be found in the Installation Guide.

Analysis of Counts Results

Each process in a program is usually associated with a distinctive count, and

each distinctive count is usually associated with only one process. If a statement

exhibits a distinctive count, it is probably part of the indicated process.

The patterns of the counts as they relate to the various routines in your

programs are significant and can help you bridge the gap between what your

program is supposed to be doing and what it is doing. Certain types of routines

normally exhibit certain count characteristics.

Types of Routines Count Values

Initialization 1

Termination 1

Some Error 0

Main Loop A distinctive count usually tied to the number of input

records.

Page 232: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Usage Considerations

232 User Guide

Types of Routines Count Values

I/O A distinctive count equivalent to the number of

records read or written, or the number of lines

printed.

Inner Loops Distinctive counts considerably higher than the Main

Loop Count.

Record Type, Exception

Case, and Control Break

Distinctive counts lower than the Main Loop Count.

Other Routines Often sums or multiples of distinctive counts.

Interpretation of Timings

This section analyzes timing considerations for multimodule environments and

multirun reports.

For Multimodule Environments

The timings on the Analyzer Sourcemap report take on a different meaning in a

multimodule environment than in single module executions. For example,

assume that in the diagram below, program B is the only COBOL program

compiled using XTIME.

A

┌──────────────────┬───┴───┬─────┐

│ │ │ │

│ │ │ │

B <-----COBOL C D E

│ program

┌───┴───┐ being

│ │ ANALYZED

F G

The Execution Monitor begins to gather CPU-time samples when program B gets

control. It collects sampling information on program B and its CALL statements.

It only gathers CPU-time samples on A, C, D, or E if they are given control after

B first gained control. The total time reported is the CPU time consumed by

program B, the programs downstream from it (programs F and G), and possibly

some portion of A, C, D, and E. This means that when a verb in program B is

reported to have used 10% of the CPU time, it has used 10% of the total CPU

time consumed by programs B, F, and G. The CPU time for a verb which includes

a transfer of control out of the program, for example CALL, WRITE, or SORT,

includes the CPU time consumed by the routines that were called by that verb. It

is important to remember this when you use the Sourcemap report in

conjunction with the Module Summary report which shows CPU time by CSECT

and load module.

Page 233: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Usage Considerations

Chapter 6: Using Analyzer 233

Using the same example, assume that you want to get timings for the entire

application starting with program A. If A was optimized with any of the Detector

or Analyzer options then simply include the following in the JCL at

execution-time:

// CAIOPTS DD *

XTIME FIRST

/*

Finally, using the same example, assume you want to get timings for the entire

application starting with program A, but A is an Assembler program. You can

accomplish this by executing the Execution Monitor (CAOCEM00) and then

passing the application job-step program name using the PGM option. Assuming

the application job-step program name is APP1, the following execution-time JCL

is displayed:

//STEP2 EXEC PGM=CAOCEM00

//STEPLIB DD DSN=your.optii.loadlib-name,DISP=SHR *

// DD DSN=your.app1.loadlib-name,DISP=SHR

//

.

. APP1's DD statements

.

//

//CAIOPTS DD *

XTIME FIRST

PGM APP1

/*

* This is only necessary if the PDS containing CA Optimizer/II is not part of

LINKLIB.

If your application passes options using PARM on the EXEC statement, you can

still do so. CAOCEM00 passes the options to the application exactly as you coded

them in the PARM keyword.

For Multi-run Reports

For effective use of an Analyzer Sourcemap report based on execution statistics

from multiple runs, it is important to understand how the consolidation is done.

Normally, the CPU percentages are based on the number of samples obtained for

a verb divided by the total number of samples obtained (see note). When several

runs are consolidated, the reporting phase simply adds together the number of

weighted samples for that verb from each execution and divides by the total

number of weighted samples from all the runs. If this is not taken into account,

misleading interpretations could result.

Note: Above is a simplified explanation. The weight of the samples actually

varies as a result of the CPU time used by each timing interval.

Page 234: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Usage Considerations

234 User Guide

Automatic Invocation of Analyzer Reporter

The Analyzer Reporter is that part of the Analyzer that reads the Counts and

Timings (TIMSV) data set(s) and the symbolic file. It produces all the Counts and

Timings reports. The Analyzer Reporter can be either automatically invoked

upon normal or abnormal termination of the application, or it can be executed as

a separate job step.

In most cases, you will want to have it automatically invoked as soon as the

application has completed. There are times, however, when you will want to

execute it as a separate job step. For example:

■ When you have a concatenated TIMSV DD statement. In this case several

TIMSV data sets have been produced over a period of time and you want to

obtain a consolidated set of reports.

■ When you want to perform in-depth CPU-Time analysis. Once the data has

been captured the Analyzer Reporter can be run any number of times against

that same input data. This is very useful for large systems consisting of tens,

even hundreds, of modules and where there is a mix of COBOL and

Assembler. In this case, in the initial run you might specify NOCNTXREF ALL

and NOSOURCEMAP ALL to get just the summary reports. These reports tell

you what modules to look at in more detail. If they are COBOL modules, use

the SOURCEMAP option to get one or more detail reports. If they are

Assembler modules, use INSTRMAP to get your detail reports.

The conditions under which automatic invocation will occur in the same job step

as the application are as follows:

■ When Counts and/or Timings (XCOUNT and/or XTIME) are active for one or

more programs in the application.

■ XREPORT is ON. (This is the default).

Automatic invocation is designed primarily for a onetime use of Analyzer where

TIMSV data is not kept when the job is completed. If you do not supply a TIMSV

DD statement in the execution JCL one is dynamically allocated for you.

Therefore, if you want to save the TIMSV data you must supply your own DD

statement. For more details on the TIMSV file and on dynamic allocation, consult

section Usage Considerations.

Page 235: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Usage Considerations

Chapter 6: Using Analyzer 235

The Relationship Between XTIME and DBGSLEEP/DBGAWAKE

If XTIME is specified at compile/optimize time with DBGSLEEP, XTIME is not

activated at runtime unless one of the following occurs:

■ If DBGAWAKE is specified at runtime, XTIME is activated upon entry to the

first program

– compiled and optimized with XTIME and

– specified in the list of programs in the DBGAWAKE option.

■ If XTIME FIRST is specified at runtime, XTIME is turned on the first time the

Execution Monitor is called from any program in the application. The

Execution Monitor is called at runtime from any program compiled/optimized

with any combination of the following options:

– DTECT

– FDCHECK

– PARMCHK

– PFLOW

– SUBRNGCK

– WSINIT

– XCOUNT

– XTIME

The call to the Execution Monitor when one or more of these options is specified

at compile/optimize time is independent of the

■ DBGSLEEP specification at compile/optimize time and

■ DBGAWAKE specification at runtime.

Place tag on a Source Statement for the Change Summary Report

When source changes are made during application development, the affected

statements may be tagged by placing a user-defined token in the sequence (1

through 6) or serial (73 through 80) columns. Tags must be placed on

executable COBOL statements, not on separate comment lines.

In the sequence columns, a tag may consist of any characters and may be any

length from 1 through 6 characters. It may begin in any of the first six columns.

In the serial columns, a tag may consist of any characters and may be any length

from 1 through 8 characters. It may begin in any of the last eight columns, 73

through 80.

Page 236: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Usage Considerations

236 User Guide

A typical tag may contain the programmer's initials followed by the year and

month in which the changes were made. This type of tag is particularly useful

when isolating changes made by a specific programmer, or in a specific month or

year. In the example below, the tag SD0404 is used for a new paragraph that

was added in April, 2004.

SD0404 NEW-PARAGRAPH.

SD0404 CALL 'NEWSUB' USING NEW-DATA NEW-RC.

SD0404 IF NEW-RC > ZERO

SD0404 DISPLAY 'ERROR IN NEW SUBROUTINE, RC=' NEW-RC

SD0404 MOVE SPACES TO LS-DATA

SD0404 MOVE 8 TO LS-RC

SD0404 ELSE

SD0404 MOVE NEW-DATA TO LS-DATA

SD0404 MOVE ZERO TO LS-RC.

To include this enhancement in the Change Summary report, you could define

any number of tags, including the entire tag (SD0404), the programmer's initials

(SD), or the date (0404). Any of these tag definitions would cause the

statements to be included in the Change Summary report.

Restrictions

Analyzer cannot operate under CICS, CMS, HOGAN, IDMSDC, SHADOW, or when

using multitasking, with the exception of IMS/VS message processing regions.

For more information on using Analyzer in IMS environments, see the chapter

"Special Environments" in the Installation Guide.

The Analyzer Reporter is upwardly compatible with TIMSV files and CSL libraries

produced by CA Optimizer OS version 4.2 and higher.

Page 237: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Chapter 7: Using Extended Optimization Support for CICS 237

Chapter 7: Using Extended Optimization

Support for CICS

Extended Optimization Support (EOS) is a runtime optimization facility for CICS

application programs that have been compiled by CA Optimizer/II using the EOS

compile-time option.

The EOS compile-time option is no longer supported during optimization.

However, the EOS runtime facility is still provided to support those programs

that have already been optimized using the EOS option. For these programs

only, the optimization provided by the EOS runtime facility works in cooperation

with the compile time optimization techniques to provide even greater reduction

of CPU utilization for your CICS COBOL applications.

EOS Execution-time Options

The runtime options for EOS are not specific to your program or application but

apply to all EOS programs. These options are under the control of your CICS

systems programmer and are discussed in the Installation Guide.

JCL Requirements

Changes to your CICS startup JCL are required to use EOS. This JCL is under the

control of your CICS systems programmer. The installation of EOS, including its

initialization and termination within a CICS region, are discussed in the

Installation Guide.

Page 238: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Execution-time Messages

238 User Guide

Execution-time Messages

EOS performs services on behalf of the transaction. For example, obtaining

storage for the COBOL program's TGT and working storage. If an error is

encountered while EOS is performing one of these services for the transaction,

one or more messages are produced that describe the problem. Your CICS

systems programmer decides whether messages are written to a Temp Storage

Queue or to a Transient Data Queue. EOS writes the messages to a Temp

Storage Queue using a TS Queue name of CAOZxxxx where xxxx is your terminal

ID. If the task has no terminal ID then xxxx is x'F0F0F0F0'. If your CICS systems

programmer has chosen to have EOS messages written to a Transient Data

Queue, EOS uses a TD Queue name of CAOZ.

If a Temp Storage Queue is being used by EOS, any messages for your

transaction can be found by using the CEBR transaction with a Queue name as

described above. Your Queue can be purged after viewing, if you want, by using

the PURGE command of the CEBR transaction. If the Transient Data Queue is

being used, consult your CICS systems programmer for access.

EOS messages always begin with CAPZnnnx.

where nnn can range from 001 to 999 and x can be I, W, or E indicating

informative, warning, or error, respectively. The message numbers 001 to 099

are reserved for RXnn abend messages. For example, if EOS abends a

transaction with a RX11 abend (see Execution-time Abends below), a CAPZ011E

message is written by EOS.

Each record written to the TS or TD Queue contains an 80-byte message plus a

20-byte trailer that can be used for sorting the records. The trailer consists of the

terminal ID, trans ID, date, and time in the following format:

aaaabbbbyymmddhhmmss

where aaaa is the terminal ID and bbbb is the transaction ID.

An EOS runtime option controls the maximum number of records EOS writes on

behalf of any transaction. Consult your CICS system programmer for the

maximum number allowed per transaction at your installation.

Page 239: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Execution-time Abends

Chapter 7: Using Extended Optimization Support for CICS 239

Execution-time Abends

If a transaction abends and one or more of the COBOL programs in the

transaction are EOS COBOL programs, EOS reports on the abend. (Note that a

transaction can also abend because EOS itself issued the abend. For example, if

an EOS COBOL program is about to be recursively entered, EOS abends the

transaction with a RX11 abend.) The EOS abend report is written to the

CAOZxxxx TS Queue or the CAOZ TD Queue depending on the setting of the

runtime message destination option. (See Execution-Time Messages above.) A

CICS transaction dump is always produced in addition to the EOS abend report.

Abends that occur in non-EOS COBOL programs are still reported on by the

COBOL II or LE runtime system, whichever is initialized in the CICS region.

EOS produces two types of reports depending on the error: one for abends within

EOS itself and another for any abend within an EOS COBOL program. The EOS

abend reporting has two purposes: first, to provide essential diagnostic

information to CA in the event of a failure within EOS itself and second, to

provide a short diagnostic report in the event of a failure within an EOS COBOL

program. The first type of report is discussed in Installation Guide.

For an EOS COBOL program abend report, the following is displayed:

■ Date, time, trans ID, and terminal ID

■ Abend code

■ PSW at the time of the abend (if program check)

■ Registers at the time of the abend

■ Name and address of the last EOS COBOL program in control

■ TGT and working storage addresses of that program

■ Program offset (if available) of the program check if the program check

occurred within an EOS COBOL program

■ Program offset (if available) of the last command if the last command

occurred within an EOS COBOL program

■ Program offset (if available) of the last static CALL if the last CALL occurred

within an EOS COBOL program

The report is not only written to the TS or TD Queue; user storage is also

obtained and each line of the report is copied to this storage so that the report is

also displayed in the CICS transaction dump. The abend report can be found by

looking for it in the 32-byte EBCDIC display column on the right-hand side of the

dump. The following immediately precedes the report in the dump:

***EOS DIAGNOSTIC REPORT***

Page 240: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Usage Considerations

240 User Guide

Each line of the abend report starts a new line in the dump so it is quite readable.

The report in the dump does not include the trailer on each record.

Note: If EOS produced an abend report (that is, the abend was either in EOS

itself or in an EOS COBOL program) and LE is initialized in the CICS region, and

one or more non-EOS COBOL programs were also active in the transaction, the

abend report that is also produced by LE should be ignored. (The LE report to be

ignored can be identified by LE having reported that the abending module was

CEECRINV or IGZECI5.)

A sample EOS abend report follows:

CAPZ142E AN EOS COBOL TRANS HAS ABENDED. THIS REPORT SUMMARIZES THE ERROR. DATE(DD-MM-YY)=03-11-04, TIME(HH:MM:SS)=15:21:34, TRANSID=EA06, TERMID=L4A7

THE ABEND CODE WAS ASRA. THE PSW WAS 078D1000 84D1D496.

THE REGISTERS AT THE TIME OF THE ABEND WERE:

0-3 0001B56C 00000000 0001B8E0 0001B660

4-7 00342A40 04D1D3F0 00001000 00002000

8-11 00342A40 0001B430 000384D0 00038408

12-15 04D1D1D8 0001B430 84D1D48C 00000000

THE LAST EOS COBOL PROGRAM IN CONTROL WAS EAC06P00 AT ADDRESS 04D1D108.

THE FOLLOWING APPLY TO PROGRAM EAC06P00:

THE PROGRAM CHECK OCCURRED AT OFFSET 00038E.

THE LAST STATIC CALL OCCURRED AT OFFSET 000384.

CAPZ143I THE DIAGNOSTIC REPORT IS COMPLETE.

Usage Considerations

Inter-language Communication Between COBOL and C

Inter-language communication between COBOL and C is not supported by EOS.

Do not attempt to execute EOS COBOL programs which call or are called by any

C program. EXEC CICS LINK or EXEC CICS XCTL between EOS COBOL programs

and C programs, in either direction, is allowed.

Mixing of EOS and Non-EOS COBOL Programs

There are no restrictions on the mixing of EOS COBOL programs and non-EOS

COBOL programs within a CICS application. A load module can be composed of

any combination of EOS and non-EOS COBOL programs. A non-EOS COBOL

program can also be optimized. There are also no restrictions on the use of

Assembler subroutines.

Page 241: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

System Requirements

Chapter 7: Using Extended Optimization Support for CICS 241

EOS in CICS Region

EOS must be initialized and enabled in the CICS region before EOS COBOL

programs can run. This is handled by your CICS systems programmer. If EOS

was never initialized and an EOS COBOL transaction is run, it abends with an

ASRA (0C1). The PSW at abend points to the following message:

CAPZ138E THE EOS CBL BOOTSTRAP WAS ENTERED BUT EOS HAS NOT

BEEN INITIALIZED.

If EOS is initialized but is currently disabled (by your CICS systems programmer)

and an EOS COBOL transaction is run, it abends with an RX03 abend. In-flight

EOS COBOL transactions at the time of disabling are allowed to continue.

System Requirements

To use the EOS runtime facility, the following system requirements must be met:

■ MVS/XA, MVS/ESA, OS/390 or z/OS

■ CICS TS Version 1.1 or higher

■ COBOL II Runtime Library version 1.3.0 through 1.4.0 or any version of

Language Environment

Page 242: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel
Page 243: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Chapter 8: TSO Support and Help Facilities 243

Chapter 8: TSO Support and Help

Facilities

This chapter describes how to use the TSO/ISPF product menus, product help

and COBOL language help facilities provided with CA Optimizer/II.

TSO Support

The TSO Support feature allows you to optimize COBOL programs interactively.

To invoke the CA Optimizer/II TSO facility, select it from your ISPF Master Menu

panel. This facility guides you in optimizing, linking, and executing COBOL

programs. It also guides you in using CA Optimizer/II and in using the COBOL

language. Sample panels are provided on the following pages.

Primary Option Menu

The Primary Option Menu displays when you first enter the CA Optimizer/II TSO

Facility and after you have completed each function. The return code from the

last requested function displays unless the return code was zero, in which case

the return code display area is left blank.

--------------- CA OPTIMIZER/II PRIMARY OPTION MENU ------------------ SELECT OPTION ===> 1 OPTIMIZE - Invoke CA OPTIMIZER/II (foreground or background) 2 BROWSE - Browse Optimized Listing 3 ERRORS - Browse COBOL Error Listing 4 PRINT - Print Optimized Listing 5 DELETE - Delete Optimized Listing and Error Listing 6 EXECUTE - Invoke Optimized Program in the foreground 7 MRS - Run the Management Reporting System in background 8 PRODUCT HELP - Information regarding CA OPTIMIZER/II usage 9 LANGUAGE HELP - Information regarding the COBOL language V REPOSITORY VIEWER - View reports in your central repository X EXIT - Terminate ISPF using log and list defaults Enter END command to terminate ISPF.

Page 244: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Primary Option Menu

244 User Guide

The following table describes the Primary Option Menu functions:

Option Function Description

1 OPTIMIZE Initiates an optimization run. You can supply

options to override those set in the default option

CSECT before proceeding with optimization.

2 BROWSE Displays the CA Optimizer/II listing file on the

terminal.

3 ERRORS Displays the COBOL compiler's error listing file on

the terminal.

4 PRINT Sends the CA Optimizer/II listing file to the

printer.

5 DELETE Deletes the CA Optimizer/II listing file.

6 EXECUTE Invokes the optimized program in the

foreground.

7 MRS Executes the CA Optimizer/II Management

Reporting System in the background.

8 Product help Provides information for all CA Optimizer/II

options and product panels.

9 Language help Covers COBOL reserved words, their format, and

usage. Usage examples and a COBOL topic HELP

is also provided.

V Repository

Viewer

Launches the Repository Viewer, allowing you to

view Detector reports and use the symbolic

utilities.

X EXIT Terminates ISPF using log and list defaults.

Page 245: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Primary Option Menu

Chapter 8: TSO Support and Help Facilities 245

Invocation Panel

You invoke this panel from the Primary Option Menu by selecting Option 1

(Optimize). It allows you to run the product in the foreground or in the

background. Additionally, you can specify the name of the CA Optimizer/II load

library which is required for foreground processing, but is optional for

background processing. The COBOL load library is also optional for background

processing, and is ignored for foreground processing. The PROTSYM and STATS

files are optional.

---------------------- CA OPTIMIZER/II INVOCATION ------------------------- SELECT OPTION ===> 1 BACKGROUND - Background Compile/Optimize 2 FOREGROUND - Foreground Compile/Optimize CA OPTIMIZER/II Data Sets OPTIMIZER/II Load Library ===> 'CAI.OPTU.DEVL.OPTII' Volume Serial ===> (if not cataloged) COBOL Load Library ===> 'CAI.OPT.SMPE.COB2COMP' Volume Serial ===> (if not cataloged) PROTSYM File ===> 'CA00.OPTII.PROTSYM' Volume Serial ===> (if not cataloged) Statistics File ===> 'CA00.OPTII.STATS' Volume Serial ===> (if not cataloged) COBOL Copy Libraries LIB1 ===> LIB2 ===> LIB3 ===> Enter END command to return to Primary Option Panel

Page 246: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Primary Option Menu

246 User Guide

Output File Information Panel

This panel displays when you select Option 1 (Background) or Option 2

(Foreground) on the Invocation Panel. It allows you to specify the type of file

output you desire (hard copy or disk), the name of the data set which is to

contain the object module, and the JOB statement information which is required

for background submissions.

----------------- CA OPTIMIZER/II OUTPUT FILE INFORMATION ---------------- COMMAND ===> Enter DSNAME which will contain the OBJECT module (Required): Object Data Set ===> 'CA0000.PDS.OBJ(VLC301)' Enter a Member Name (Optional: for Partitioned Object Data Set ONLY): Object Member ===> To print your listing, enter the SYSOUT Class: SYSOUT Class ===> To save the output listing to disk, enter the DSNAME: Listing Data Set ===> 'CA0000.' JOB STATEMENT INFORMATION: (Required for background compile) ===> //CA0000A JOB (ACCOUNT),'NAME' ===> //* ===> //* ===> //* Enter END to exit

Page 247: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Primary Option Menu

Chapter 8: TSO Support and Help Facilities 247

Defaulted Options Panel

The Defaulted Options panel is the last panel displayed before CA Optimizer/II is

invoked. It displays the CA Optimizer/II release and genlevel, as well as default

compile-time options. It also prompts you for the input data set that contains the

COBOL source code and any option overrides to the defaults.

Note: Separate options with commas as shown in the following example:

MXREF,APOST,MMAP

Do not code apostrophes ( ' ); the dialog automatically inserts them for you.

--------------------- CA OPTIMIZER/II R8.5 GENLEVEL 0411 ---------------------- COMMAND ===> Enter Options PARM Information ===> ===> Source Data Set ===> 'MY.COBOL.SRC(TESTPGM)' Volume Serial===> (if not catalogued) DEFAULTED OPTIONS (An * indicates the option is Fixed and may not be overridden) CASORT NO DTECT NO MMAP NO PRTCOPY YES TPMON NO CICS NO EOS NO MOFFSET NO PUSHPOP YES WSCLEAR NO CSL NO EZTEST NO MXREF NO SOURCE YES WSINIT NO CXREF NO FDCHECK NO OBJECT YES SPM NO XCOUNT NO DBGSLEEP NO IDMS NO OFFSET NO STATS YES XMMAP NO DCRDISP NO LIST NO PARMCHK NO SUBRNGCK NO XREF NO DECK NO MAP NO PFLOW NO TITLE NO XTIME NO Enter END to exit

Note: The defaulted options are set at installation time by your systems

programmer. At that time, the systems programmer may fix an option so that it

cannot be overridden. Any option that was fixed has an asterisk (*) next to it on

this panel.

Page 248: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Primary Option Menu

248 User Guide

Browse CA-Optimizer/II Output Panel

You invoke this panel from the Primary Option Menu by selecting Option 2

(Browse). It allows you to browse CA Optimizer/II output. However, you can

only use this panel if the output data set has been placed on disk. The dialog

remembers the name of the last output data set used and displays it on the panel

prior to invoking browse. If you would like to browse a different data set, specify

the data set name in the Listing Data Set field before pressing Enter.

---------------------- BROWSE CA-OPTIMIZER/II OUTPUT ---------------------- COMMAND ===> To use this option, output from the compilation step (option 1) must have been routed to a data set (not a SYSOUT Class). Verify the listing data set information below, then press Enter to BROWSE output Listing Data Set ===> 'CA0000.' Enter END to exit

Page 249: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Primary Option Menu

Chapter 8: TSO Support and Help Facilities 249

Browse CA-Optimizer/II Errors Panel

You invoke this panel from the Primary Option Menu by selecting Option 3

(Errors). It allows you to browse the compile time errors that may have

occurred. The CA Optimizer/II dialogs automatically generate a data set name

and allocate it to the system. This data set name is then displayed on the panel.

You can change the name, if you want, before pressing Enter.

---------------------- BROWSE CA-OPTIMIZER/II ERRORS ---------------------- COMMAND ===> Verify the data set name listed below. If you want to BROWSE another data set enter its name at the prompt Errors Data Set ===> 'CA0.OX32767.ERRLIST' Enter END to exit

Page 250: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Primary Option Menu

250 User Guide

Print CA-Optimizer/II Listing Panel

You invoke this panel from the Primary Option Menu by selecting Option 4

(Print). It prompts you for information necessary to print the listing data set. The

listing must have been saved to disk. You must enter the SYSOUT class and JOB

statement information. When you press Enter, an IEBGENER job is submitted to

allow you to print the data set.

Note: Enter END to exit without submitting the job.

---------------------- PRINT CA-OPTIMIZER/II LISTING ---------------------- COMMAND ===> Verify the information below. The data set is printed (but not deleted). Listing Data Set ===> 'CA0000.' Enter SYSOUT class ===> B JOB STATEMENT INFORMATION: ===> //JOHNB JOB ('11700000B.SARAH',423),'JOHNB Q.',CLASS=K, ===> // MSGCLASS=B,MSGLEVEL=(1,1),NOTIFY=JOHNB ===> /*ROUTE PRINT MVSE ===> Enter END to exit

Page 251: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Primary Option Menu

Chapter 8: TSO Support and Help Facilities 251

Delete CA-Optimizer/II Listing Data Sets Panel

You invoke this panel from the Primary Option Menu by selecting Option 5

(Delete). It allows you to delete one or two data set listing files. The data sets are

deleted after you press Enter. The listing data set is optional.

---------------- DELETE CA-OPTIMIZER/II LISTING DATA SETS ----------------- COMMAND ===> Verify the two data set names listed below. If you do not want to delete these data sets: Enter the END command, or press Enter to delete them both. Errors Data Set ===> CA000. Listing Data Set ===> Enter END to exit

Page 252: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Primary Option Menu

252 User Guide

Execute Optimized Program Panel

You invoke this panel from the Primary Option Menu by selecting Option 6

(Execute). It allows you to test (execute) a program that you optimized earlier.

The system prompts you for the COBOL or LE runtime library, the

CA Optimizer/II non-reentrant library, and the CA Optimizer/II reentrant library.

These libraries are used by the LOADER to resolve external references only.

------------------------ EXECUTE OPTIMIZED PROGRAM ------------------------ COMMAND ===> COBOL Runtime Library: ===> CA-Optimizer/II Non-Reentrant Library: ===> 'CAI.OPTU.DEVL.OPTII' CA-Optimizer/II Reentrant Library: ===> LE/370 Link Library: (If applicable) ===> Enter the ALLOCATE commands below for the files and data sets that your COBOL programs require. ===> Session Manager Installed ===> (YES or NO) Enter END to execute your program. Enter CANCEL to exit without executing

Notes:

If any modules are to be dynamically loaded, they must be present in the link

list, link pack area, STEPLIB, or ISPLLIB.

Enter END or press PF3/15 to execute the program. Use CANCEL to exit.

Page 253: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Primary Option Menu

Chapter 8: TSO Support and Help Facilities 253

Invoke Management Reporting System Panel

You invoke this panel from the Primary Option Menu by selecting Option 7

(MRS). It prompts you for information needed to invoke the Management

Reporting System (MRS). Information requested includes the name of the

CA Optimizer/II load library (optional), the load library to be analyzed

(required), the SYSOUT class or listing data set, and JOB statement information.

When you press Enter, the job is submitted for background processing.

------------------ INVOKE MANAGEMENT REPORTING SYSTEM --------------------- COMMAND ===> CA-Optimizer/II Load Library: ===> Volume Serial ===> (if not cataloged) Load Library for Analysis: ===> Volume Serial ===> (if not cataloged) Enter SYSOUT class (if you desire the listing to be printed): ===> Enter DSNAME (if you desire the output listing to be saved on disk): ===> JOB STATEMENT INFORMATION: ===> //CA000000 JOB (ACCOUNT),'NAME' ===> //* ===> //* ===> //* Enter END to exit

Product HELP Facility

You can invoke CA Optimizer/II HELP in two ways:

■ Select Option 8 (Product Help) from the Primary Option Menu and receive

HELP with CA Optimizer/II components, options, reports, and option

processing.

■ Press PF1 or PF13 for HELP with the currently displayed product panel.

Using HELP

The HELP utility provides immediate online assistance, presenting detailed

information about the product facilities. You can call HELP from any panel by

pressing PF1 or PF13, or by typing HELP and pressing Enter.

Page 254: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Primary Option Menu

254 User Guide

HELP is designed so that each CA Optimizer/II panel leads to a specific branch of

HELP. The top of each branch is a main menu of HELP choices. The choices on the

menu branch downward and outward to other HELP panels. A sample menu

panel is shown next.

Sample HELP Menu Panel

HELP A --------------------------------------------C----------- CA OPTIMIZER/II

===> B D CAOHHLPP

Enter the name of the option for which you require help, or the number of the topic you wish to view.

E

.-----------------------------------.-------------------------------.

| Specifying Options | Controlling Reports |

¦=================================== ¦===============================¦

| 1- Optimizer | 6- Optimizer |

| 2- Detector | 7- Detector |

| 3- Extended Detector Support | 8- Extended Detector Support | | 4- Analyzer and Reporter | 9- Analyzer and Reporter |

| 5- Extended Optimization Support | |

¦=================================== '===============================¦ | Other Topics |

| 10- Compile Time Option Coding 13- Utilities |

| 11- Option Processing Sequence 14- r7 Enhancements | | 12- Execution Time Option Coding 15- Unsupported Features |

'-------------------------------------------------------------------'

A

Identifies the panel as a HELP panel.

B

Points to the CA Optimizer/II HELP command line. Enter the options or menu

choice number here.

C

Specifies the product name.

D

Indicates the KEY NAME of the HELP database. The suffix is the panel ID

number of the panel you wanted help with.

E

Instructs you on selecting options from this menu.

To choose an item from a main menu like the one shown, type the number of

your choice in the command area and press Enter. Once you are in HELP, you can

move around within the HELP database by pressing PF (program function) keys

or entering HELP commands.

Page 255: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Primary Option Menu

Chapter 8: TSO Support and Help Facilities 255

Program Function Keys

The following is a list of program function (PF) keys and their definitions. If your

terminal does not have PF keys, enter the HELP commands described in the

command area.

PF Key Function Description

PF1/13 HELP Calls HELP from any CA Optimizer/II panel; calls HELP

for using HELP from within the utility.

PF3/15 END Returns to the previous HELP panel.

HELP Commands

Use the following HELP commands in place of PF keys:

Command Description

HELP Calls HELP from any CA Optimizer/II panel; calls HELP for using

HELP from within the utility.

END Returns to the previous HELP panel.

Use these commands exactly as you see them here. HELP must be entered in all

capital letters.

Note: By repeatedly pressing Enter, you can browse sequentially through the

HELP panels that branch from a specific CA Optimizer/II panel.

Page 256: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Primary Option Menu

256 User Guide

Getting Help with HELP

If at any time you need help with HELP, press PF1 or P13. If your terminal does

not have PF keys, enter HELP in the command area.

HELP ---------------------------------------------------- CA OPTIMIZER/II ===> CAOHHELP _ PF Key Usage In HELP Use PF keys to control your movement within HELP. If your terminal does not have PF keys, enter commands in the command area. Use PF keys to control your movement within HELP. If your terminal does not have PF keys, enter commands in the command area. .------------------------------------------------------------------------. | To: | Press: | Or Enter: | .------------------------------------------------------------------------. | end HELP and return to work in progress | PF3 or PF15 | END | | (returns through previous menus) | | | | | | | | find HELP menus | | | | * Main HELP menu | PF4 or PF16 | RETURN | | * previous HELP menu | PF7 or PF19 | UP | | | | | | move to the next topic | PF8 or PF20 | DOWN | | | | | | scroll through a series of panels | | | | * Previous Panel (Backward) | PF10 or PF22 | LEFT | | * Next Panel (Forward) | PF11 or PF23 | RIGHT | '------------------------------------------------------------------------'

This panel serves as a reminder of the steps you should take to move around

within HELP or to return to the CA Optimizer/II panel from which you called

HELP.

Exiting HELP

To exit HELP, press PF3 or PF15 repeatedly until you return to the Primary Option

Menu. Remember, however, that the TSO/ISPF environment permits you to split

your screen and toggle back and forth between functions.

COBOL Language HELP

CA Optimizer/II provides TSO users with a COBOL Language HELP facility

provided under TSO/ISPF. This facility permits you, while using TSO/ISPF EDIT,

to temporarily split your screen, displaying your source program on one portion

of the screen and the COBOL Language HELP on the other. This HELP is designed

to assist you in finding quick answers to your COBOL language questions.

Page 257: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Primary Option Menu

Chapter 8: TSO Support and Help Facilities 257

Significant improvements have been made to the COBOL facility. Two new major

topics have been created as follows:

■ COBOL Options gives you HELP for COBOL compile-time options (not

controlled by CA Optimizer/II) and runtime options.

■ Migration Guidelines includes information related to easing the pain of

migration from OS/VS COBOL. Some of the topics included are Significant

New Features and Available Publications.

Using COBOL Language HELP

To invoke COBOL language help, enter Option 9 (Language Help) from the

Primary Option Menu. The COBOL Language HELP panel displays.

COBOL LANGUAGE HELP -----A --------------------------------C CA-OPTIMIZER/II ===> D CAOCHLPL B Enter a Reserved Word or the number of the topic you wish to view. 1 - RESERVED WORD Locator 14 - VSAM I-O Example 2 - COBOL Language Character Set 15 - QSAM I-O Example 3 - COBOL Program Structure 16 - Sorting 4 - From OS/VS COBOL To COBOL II 17 - Tables 5 - User-Defined Words 18 - Declaratives 6 - Figurative Constants 19 - Subprogram Linkage 7 - Special Registers 20 - Compiler Options 8 - Separators 21 - Migration Guidelines 9 - Class Tests 22 - CMPR2 10 - Relation Conditions 23 - COBOL II Release 3 Changes 11 - Sign Conditions 24 - What's New in COBOL/370? 12 - Complex Conditions 25 - What's New in IBM COBOL? 13 - VSAM & QSAM Status Keys X - EXIT

The field descriptions are described next:

A

Identifies this panel as a COBOL language HELP panel.

B

Indicates the TSO command area. Enter reserved words or menu choice

numbers here.

C

Identifies the product name.

D

Indicates the HELP Panel ID.

Page 258: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Primary Option Menu

258 User Guide

From this main panel, you can obtain COBOL language HELP in three ways:

■ Enter the number of the topic you want to view.

■ Enter the name of the COBOL reserved word you want assistance with.

■ Press PF1 to get HELP for COBOL language Help.

Using COBOL Language HELP

COBOL language HELP provides information about reserved word formats and

descriptions, and usage examples. This is available by typing in the COBOL

reserved word on the command line. The COBOL Language HELP panel displays

the format for the reserved word. From this panel, you can view the reserved

word description and/or examples.

However, COBOL Language HELP has been designed to provide you with

maximum efficiency. Therefore, if you want HELP with only one portion of a

COBOL reserved word, enter the reserved word followed by one of the following

suffixes. Then only that portion of HELP is displayed.

reserved word.1

Provides you with the FORMAT of the specified reserved word

reserved word.2

Provides you with a DESCRIPTION of the specified reserved word

reserved word.3

Provides you with EXAMPLES of the specified reserved word

If you enter an incorrect or incomplete reserved word, an informational message

is displayed.

Topic HELP for COBOL

You can display a topic by entering the number of the topic you want to view.

Note: Topic 1, Reserved Word Locator, is designed to assist you when you are

uncertain of the reserved word you are seeking. Once you have found and

selected the reserved word, you can go directly to its Format panel.

HELP for COBOL Language HELP

Wherever you are in COBOL Language HELP, additional HELP is only one PF key

away. Pressing PF1 from the main COBOL Language HELP panel provides

information on how to move within COBOL HELP and default PF key assignments.

CA Optimizer/II utilizes a new, simplified syntax notation for online format

presentations which is always available by pressing PF1 when viewing reserved

word format panels.

Page 259: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Primary Option Menu

Chapter 8: TSO Support and Help Facilities 259

COBOL Reserved Word Syntax

A new and simplified syntax is used in COBOL Language HELP. It has five rules

which are presented on the following sample HELP Format Notation panel.

COBOL LANGUAGE HELP --------------------------------------- CA-OPTIMIZER/II ===> CAOC0010 HELP Format Notation / \ / \ COMMAND | literal-1 | | option-1 | ... TO identifier-2. | identifier-1 | | option-2 | \ / \ / .-----------------------.----------------------------------------------. | UPPERCASE words | identify COBOL reserved words. | | | | | lowercase words | identify values that must be supplied. | | | | | Highlighting (Bolding)| identifies REQUIRED words. | | | | | Brackets | enclose choices to be made by the user. If a | | | choice MUST be made, all choices are bolded. | | | | | ... | indicates that the immediately preceding | | | word or item in brackets may be repeated. | '-----------------------'----------------------------------------------'

Exiting COBOL Language HELP

To exit HELP, press PF3 or PF15 repeatedly until you return to the Primary Option

Menu. Remember, however, that the TSO/ISPF environment permits you to split

your screen and toggle back and forth between functions.

Page 260: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Primary Option Menu

260 User Guide

Repository Viewer

To launch the Repository Viewer, enter Option V (Repository Viewer) from the

Primary Option Menu. The Report Index panel displays.

CA Optimizer/II r8.5 ------------- Report Index ---------------- Line 1 of 68

Command ===> Scroll ===> CSR

CAPI100I Repository contains 68 report(s) -------------------------------------

Repository Dsname: CAI.PRTLIB

1754 Data Records 680 Used 38.7% Full

Filter: Jobname * Step/Tsk * Program * Offset *

Comp * UserID * Lock * System *

------------------------------------------------------------------------- Lvl 1

Cmd JobName StepName Program Offset Comp Date Time UserId

. DAVSC01A RUN ASM0C7 000005E S=0C7 2004/03/15 14.51 DAVSC01 . DAVSC01A RUN CAODPREC 000098A U=1098 2004/03/15 12.02 DAVSC01

. DAVSC01A RUN ASM0C7 000005E S=0C7 2004/03/15 10.56 DAVSC01

. OPT31 GO n/a n/a RC=0000 2004/03/12 16.36 MIKED . RYARO02S RUN PLITEST1 0001002 S=0C7 2004/03/05 15.07 RYARO02

. RYARO02A RUN CAO2DEMO 00041B6 S=0C7 2004/03/05 15.07 RYARO02

. RYARO02S RUN PLITEST1 0001002 S=0C7 2004/03/05 14.50 RYARO02 . RYARO02A RUN CAO2DEMO 00041B6 S=0C7 2004/03/05 14.47 RYARO02

. RYARO02S RUN PLITEST1 0001002 S=0C7 2004/03/04 16.29 RYARO02

. RYARO02S RUN PLITEST1 0001002 S=0C7 2004/03/04 16.18 RYARO02 . RYARO02P RUN PLITEST1 0001E22 S=0C7 2004/03/04 14.36 RYARO02

. RYARO02P RUN PLITEST1 0001C46 S=0C7 2004/03/04 14.35 RYARO02

. DAVSC01A RUN COMP2 00001E8 S=0C7 2004/02/25 17.46 DAVSC01 . DAVSC01A RUN COMP1 00003FE S=0C7 2004/02/24 18.06 DAVSC01

. DAVSC01A RUN COMP1 00003FE S=0C7 2004/02/24 17.46 DAVSC01

. DAVSC01A RUN COMP1 00003FE S=0C7 2004/02/24 17.37 DAVSC01 . DAVSC01A RUN COMP2 00001E8 S=0C7 2004/02/24 11.51 DAVSC01

The CAIPRINT Repository Viewer can be used to view Detector and Extended

Detector reports that have been written to your central VSAM repository. Once

the viewer has been entered, use the SYM primary command to display or

update symbolic information from your PROTSYM or CSL files.

The Repository Viewer and its primary commands are described in detail in the

chapter "Using the CAIPRINT Repository Viewer".

Page 261: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Chapter 9: Utilities 261

Chapter 9: Utilities

The following reporting facilities are provided to measure the use and

effectiveness of the product:

■ The Management Reporting System (MRS) provides a means for you to audit

your load module libraries.

■ The Statistics Report allows you to view the overall effectiveness of

optimization in your data center.

■ The Initialization Summary generates a report describing which

CA Optimizer/II modules are currently loaded in the CSA area of LPA.

■ The Options Summary reports on the options set as installation defaults.

■ The CSL Summary reports on the contents of a specified CSL or on all the

CSLs defined as installation defaults.

■ The CAIPRINT Repository Utility provides a facility to list and maintain the

contents of the central VSAM repository.

The following symbolic file (PROTSYM) utilities are also provided:

■ IN25UTIL-PROTSYM file initialization, maintenance and reporting

■ IN25SYMC-Listing postprocessor for OS/VS COBOL

■ IN25COB2-Listing postprocessor for COBOL II and above

■ IN25SYMA-Listing postprocessor for Assembler

■ IN25SYMP-Listing postprocessor for PL/I

■ IN25SYMD-Multi-listing postprocessor

For a description of these utilities, see the Symbolic Guide.

Page 262: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Management Reporting System (MRS)

262 User Guide

Management Reporting System (MRS)

The MRS system scans any load module library and reports on the COBOL

programs contained within each member. MRS produces two reports; a Detailed

Report and a Summary Report, indicating the size and characteristics of each

load module in a selected library.

MRS reads the members of a specified library, and identifies and lists COBOL

CSECTs and load modules that contain them. It also provides compilation and

size information for these CSECTS, and indicates whether they have been

processed by an CA Optimizer/II product. The program also checks for and flags

certain CA Optimizer/II options that you selected at compile/optimize time.

JCL

A procedure called CAIMRSII is provided to invoke MRS. To obtain detail and

summary reports for library PROD1.LOADLIB, specify:

// EXEC CAIMRSII,LIBRARY='PROD1.LOADLIB'

The MRS program, CAOUMRS, uses the following DD statements:

DD Statement Description

STEPLIB Defines the library containing CA Optimizer/II MRS.

SYSPRINT Defines the MRS report file.

SYSLIB Defines the library to be analyzed.

Note: The ddname for the library to be analyzed is an installation option with a

default of SYSLIB. If it has been modified at your installation, be sure that

procedure CAIMRSII has been modified as well.

Reports

MRS provides two reports for each scanned load library. The first report is a

detailed listing of all COBOL CSECTs in the library and the second is a summary

of all of the library's statistics.

Page 263: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Management Reporting System (MRS)

Chapter 9: Utilities 263

Load Library Analysis Detailed Report

The Load Library Analysis Detailed Report lists all load modules in the library

which contain COBOL CSECTs.

CA LOAD LIBRARY ANALYSIS: DETAILED REPORT PAGE 1

CA-OPTIMIZER/II r8.5 0404ARX00 DAXZA01.LOAD (SPDO01) 04/06/2004 15.39.12

A LEGEND FOR OPTIMIZER OPTIONS: D=DTECT C=XCOUNT X=XTIME P=PFLOW S=SUBRNGCK R=PARMCHK B=DBGSLEEP F=FDCHECK W=WSINIT I=CICS E=EOS L=WSCLEAR H=PUSHPOP O=CASORT

B C D E F G H I J K

MODULE MODULE-SIZE CSECT CSECT-SIZE PROC-SIZE DATA-SIZE COMPILER-ID REL DATE TIME CA-OPT REL DCXPSRBFWIELHO

CAO2PCHK 4,152 CAO2PCHK 2,168 414 1,754 C2 5668-958 3.0 10/12/1990 14.18.54 OPT/II 1.3 DCX.SR.FW..... IC101A 12,648 IC101A 9,440 3,864 5,576 C390 5648-A25 1.0 11/21/1997 15.56.40 OPT/II 2.1 DCXPSR.FW.....

IC102A 5,752 IC102A 2,544 298 2,246 C390 5648-A25 1.0 11/21/1997 15.56.50 OPT/II 2.1 DCXPSR.FW.....

IC103A 15,008 IC103A 11,800 5,244 6,556 C390 5648-A25 1.0 11/21/1997 15.56.57 OPT/II 2.1 DCXPSR.FW..... IC104A 5,976 IC104A 2,768 384 2,384 C390 5648-A25 1.0 11/21/1997 15.57.07 OPT/II 2.1 DCXPSR.FW.....

IC105A 5,168 IC105A 1,960 576 1,384 C390 5648-A25 1.0 11/21/1997 15.57.15 OPT/II 2.1 DCXPSR.FW.....

IC106A 15,224 IC106A 12,016 5,468 6,548 C390 5648-A25 1.0 11/21/1997 15.57.23 OPT/II 2.1 DCXPSR.FW..... IC107A 6,496 IC107A 3,288 916 2,372 C390 5648-A25 1.0 11/21/1997 15.57.33 OPT/II 2.1 DCXPSR.FW.....

IC108A 14,016 IC108A 10,808 4,378 6,430 C390 5648-A25 1.0 11/21/1997 15.57.41 OPT/II 2.1 DCXPSR.FW.....

IC109A 5,832 IC109A 2,624 360 2,264 C390 5648-A25 1.0 11/21/1997 15.57.55 OPT/II 2.1 DCXPSR.FW.....

IC110A 5,896 IC110A 2,688 400 2,288 C390 5648-A25 1.0 11/21/1997 15.58.05 OPT/II 2.1 DCXPSR.FW.....

IC111A 4,936 IC111A 1,728 320 1,408 C390 5648-A25 1.0 11/21/1997 15.58.13 OPT/II 2.1 DCXPSR.FW.....

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

IC112A 16,312 IC112A 13,104 5,824 7,280 C390 5648-A25 1.0 11/21/1997 15.58.21 OPT/II 2.1 DCXPSR.FW.....

IX103A 19,832 IX103A 16,624 7,442 9,182 C390 5648-A25 1.0 11/21/1997 16.02.22 OPT/II 2.1 DCXPSR.FW.....

IX104A 19,336 IX104A 16,128 6,542 9,586 C390 5648-A25 1.0 11/21/1997 16.02.33 OPT/II 2.1 DCXPSR.FW.....

L TOTALS 5,153,836 4,525,960 3,925,768 1,268,392

Page 264: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Management Reporting System (MRS)

264 User Guide

A

LEGEND FOR OPTIMIZER OPTIONS defines the meaning of each letter that

can appear under column K. These are all the options for execution-time

facilities that can be specified at compile/optimize time.

B

MODULE lists the names of the load modules which contain at least one

COBOL CSECT.

C

MODULE-SIZE specifies the total number of bytes in each load module listed.

Note: For overlay modules, the size specifies the maximum amount of

memory used by the module and not the sum of the CSECTs contained within

it.

D

CSECT lists all the COBOL CSECT names in each load module. Multiple

COBOL CSECTs within a given load module print on a separate line.

E

CSECT-SIZE specifies the total number of bytes in each COBOL CSECT.

F

PROC-SIZE specifies the number of bytes for the program's Procedure code.

See Usage Considerations for more information.

G

DATA-SIZE specifies the number of bytes of storage generated by the

compiler for the COBOL program's Data Division. For more information about

Data Division, see Usage Considerations.

H

COMPILER-ID identifies the type of COBOL compiler used and the compiler's

program product number and version number. MRS copies the program

product number and the version number directly from the COBOL module.

I

REL, DATE, and TIME specifies the release of the COBOL compiler used and

the date and time of the program's compilation (copied directly from the

COBOL module).

J

CA-OPT version release verifies whether the COBOL CSECT has been

processed with an CA Optimizer product. The release number indicates the

release with which the CSECT was optimized.

■ YES indicates that the CSECT was optimized with an earlier release that

did not retain release numbers in the load module.

Page 265: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Management Reporting System (MRS)

Chapter 9: Utilities 265

■ NONE indicates that the CSECT has not been processed with

CA Optimizer.

In some instances, the compiler program product number, version number,

and the date and time of compilation may not be available. In this case, an

UNAVAILABLE message prints in their place.

K

This column shows whether certain CA Optimizer/II execution-time options

were specified at compile/optimize time. If the program was optimized using

CA Optimizer OS, then only the letters for DTECT, PFLOW, or XCOUNT may

appear even though the options FDCHECK, SUBRNGCK, and/or WSINIT may

also have been specified at compile-time.

L

This line specifies the following totals in kilobytes (1024):

Load modules listed on the report

– COBOL CSECTs

– Number of data bytes

– Number of procedure bytes from the COBOL CSECTs

Load Library Analysis Summary Report

The Load Library Analysis Summary Report follows the Load Library Analysis

Detailed Report and provides summarized statistical information about the

library being scanned.

CA LOAD LIBRARY ANALYSIS: SUMMARY REPORT PAGE 9

CA-OPTIMIZER/II r8.5 0404ARX00 DAXZA01.LOAD (SPDO01) 04/06/2004 15.39.12

D E

COMPILER-ID REL MODULES CSECTS OPTOS OPTII DTE XCO XTI PFL SUB PAR DBG FDC WSI CIC EOS WSC PUS CAS

C

C2 5668-958 3.0 1 1 0 1 1 1 1 0 1 1 0 1 1 0 0 0 0 0 CMVS 5668-958 2.0 1 1 0 1 1 1 1 1 1 1 0 1 1 0 0 0 0 0

C390 5648-A25 1.0 377 378 0 377 377 377 377 377 377 377 0 377 377 0 0 0 0 0

VSR1 5740-CB1 2.4 1 1 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 FTOTALS: COBOL 380 381 1 379 380 379 379 378 379 379 0 379 379 0 0 0 0 0

A IGZ 379 379

CEE 379 3787 CAO 378 378

B ALL 380 4925

*--------------------------------------------------------------------------------------------------------------------------------* * For programs which have been compiled using CA-OPTIMIZER, only DTECT, XCOUNT, and CICS are reflected in these MRS reports. *

* More information regarding the options used during optimization is only available for programs compiled using CA-OPTIMIZER/II. *

*--------------------------------------------------------------------------------------------------------------------------------*

Page 266: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Management Reporting System (MRS)

266 User Guide

For programs which have been compiled using CA Optimizer, only DTECT,

XCOUNT, and CICS are reflected in these MRS reports. More information

regarding the options used during optimization is only available for programs

compiled using CA Optimizer/II.

A

IGZ, CEE, and CAO display the number of modules containing COBOL

CSECTs and the total number of COBOL CSECTs.

B

ALL displays the total number of modules and CSECTs in the library.

The next part of the Summary Report provides a summary of CA Optimizer

options in effect, by compiler type and version.

C

COMPILER-ID lists the compiler type and version used.

D

OPTOS displays the number of programs compiled under the listed compiler

version that were compiled and optimized with CA Optimizer.

E

OPTII displays the number of programs compiled under the listed compiler

version, which were compiled and optimized with CA Optimizer/II.

F

TOTALS displays the number of programs from columns (D and E) that were

optimized using the various options listed.

Usage Considerations

MRS analyzes any standard IBM load module library but does not support

concatenated load library data sets. Specify each load library to be analyzed in a

separate MRS execution run.

MRS recognizes COBOL CSECTs that are compiled using the following IBM

COBOL compilers: V2, V3, V4, OS/VS COBOL, COBOL II, COBOL 370, COBOL for

MVS and VM, COBOL for OS/390 and VM, Enterprise COBOL for z/OS and

OS/390, and Enterprise COBOL for z/OS.

Page 267: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Statistics Report

Chapter 9: Utilities 267

OS/VS COBOL Reporting

For OS/VS COBOL, MRS makes a distinction between data bytes and procedure

bytes in the Detail Report. Data bytes include the storage size in the CSECT

which is directly generated by the COBOL CSECTs Data Division plus the INIT1

code. (Data bytes are figured from the beginning of the program to the TGT.)

Procedure bytes include the storage size of the remainder of the CSECT. The

sections of the CSECT which make up the procedure bytes are:

■ TGT

■ PGT

■ Report Writer Routines

■ COBOL Procedure Division

■ Q Routines

■ INIT2

■ INIT3

COBOL II and Above

When reporting for COBOL II and above, MRS distinguishes between data and

procedure bytes.The data bytes include only the areas in the program generated

at compile-time, and do not include data areas acquired dynamically at

execution-time for a program compiled with the RENT option. The sections of the

CSECT, which make up the procedure bytes are:

■ Signature Code

■ INITD Code (for RENT programs)

■ Q Routines

■ Procedure Division

Statistics Report

The Statistics Report lets you monitor the results obtained by the

CA Optimizer/II Optimizer component. Each time a program is optimized, the

one-track statistics data set is updated. An independent procedure, CAISTRII,

retrieves this data upon request and prints a one-page report.

Page 268: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Statistics Report

268 User Guide

JCL

A procedure called CAISTRII is provided to invoke the Statistics Reporting

program. To obtain a Statistics Report for your data center, specify:

// EXEC CAISTRII

The statistics reporting program, CAOUSRPT, uses the following DD statements:

DD Statement Description

STEPLIB Defines the library containing CA Optimizer/II Statistics

Reporting program.

SYSPRINT Defines the report file.

CAISTATS Defines the permanent statistics file.

Note: The ddname for the statistic file is an installation option which can be

modified. If it has been modified at your installation, be sure that procedure

CAISTRII has been modified as well.

Page 269: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Statistics Report

Chapter 9: Utilities 269

Report

This sample shows the information and the format of the Statistics Report:

CA CA-OPTIMIZER/II STATISTICS & USAGE SUMMARY PAGE 1 CA-OPTIMIZER/II r8.5 0403AOX00 19 MAR,2004 11.18.02

LICENSED TO : CA Islandia, NY

A INSTALLED : 03/19/04

OPTIMIZATION RESULTS

CURRENT CURRENT SINCE MONTH (MAR) YEAR (2004) INSTALLATION

B AVERAGE PROGRAM SIZE

BEFORE OPTIMIZATION (BYTES) 18,940 18,940 18,940

AFTER OPTIMIZATION (BYTES) 21,041 21,041 21,041

PERCENTAGE SAVINGS 11.0- 11.0- 11.0-

C AVERAGE PROCEDURE SIZE

BEFORE OPTIMIZATION (BYTES) 14,036 14,036 14,036

AFTER OPTIMIZATION (BYTES) 13,640 13,640 13,640 PERCENTAGE SAVINGS 2.8 2.8 2.8

D AVERAGE INSTRUCTION COUNT

BEFORE OPTIMIZATION 3,087 3,087 3,087

AFTER OPTIMIZATION 3,150 3,150 3,150 PERCENTAGE SAVINGS 2.0- 2.0- 2.0-

CA-OPTIMIZER/II USAGE SUMMARY

NUMBER OF PROGRAMS OPTIMIZED

CURRENT CURRENT SINCE OPTIMIZATION TYPE MONTH (MAR) YEAR (2004) INSTALLATION

E DETECTOR FEATURES ONLY 1 1 1

ANALYZER FEATURES ONLY 1 1 1

DETECTOR AND ANALYZER FEATURES 3 3 3

NO DETECTOR AND ANALYZER FEATURES 1 1 1

======= ======= =======

F TOTAL PROGRAMS OPTIMIZED 6 6 6

Page 270: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Initialization Summary Report

270 User Guide

A

Date the statistics data set was initialized.

B

Average number of bytes in the program (includes Data Division) before and

after optimization and the percentage difference. The numbers are the

before and after compile-time sizes. They do not reflect the sizes of data

areas acquired dynamically at execution-time for programs with the RENT

option. All figures are reported for month-to-date, year-to-date, and since

installation.

C

Average number of bytes in only the Procedure Division before and after

optimization, and the difference in the percentages.

D

Average number of machine instructions in the program before and after

optimization and the difference in the percentages.

E

Breaks down the number of programs optimized by the combination of

Detector and/or Analyzer features specified during optimization. It shows

the relative usage of each of the components.

F

Total number of programs using CA Optimizer/II.

Note: These statistics are derived from all executions of the Optimizer

component without regard to the options specified at compile/optimize time.

Because the CA Optimizer/II optimization algorithms will sometimes trade space

for speed, smaller than expected percentage savings do not necessarily reflect

the actual reduced CPU time when the applications are executed.

Initialization Summary Report

The Initialization Summary Report allows you to verify that the modules loaded

into the CSA at initialization time are the correct versions.

Page 271: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Initialization Summary Report

Chapter 9: Utilities 271

JCL

A procedure called CAILPAQ is provided to invoke the Initialization Summary

program. To obtain an initialization summary for your data center, specify:

// EXEC CAILPAQ

The initialization summary program, CAOULPAQ, uses the following DD

statements:

DD

Statement

Description

STEPLIB Defines the library containing CA Optimizer/II Initialization

Reporting program.

SYSPRINT Defines the report file.

Page 272: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Initialization Summary Report

272 User Guide

Report

This sample shows the information and the format of the Initialization Summary

Report.

INITIALIZATION SUMMARY REPORT FOR SYSTEM XAD1 |-----------------------------------------------------| | MODULE | ADDRESS | REL | DATE | TIME | SIZE | |-A------ ----B ---- --C-- ---D------ --E--- ---F---| | CAOEPROL | 80C814F0 | 8.5 | 20091109 | 16.49 |000238| | CAOESNAP | 867FA418 | 8.5 | 20091109 | 16.50 |003C48| | CAOEWRTR | 00C88158 | 8.5 | 20091109 | 16.51 |000268| | CAOECEEI | 869F85E8 | 8.5 | 20091109 | 13.02 |0006A0| | CAOESQAT | 82A3D2F0 | | | |000038| | CAOSBID | 00CA03D8 | | | |000018| | CAOCEMCK | 00C96040 | 8.5 | 20091109 | 16.32 |000218| |-----------------------------------------------------| | G 7 MODULES WERE FOUND. | |-----------------------------------------------------| | H CONTENTS OF CAOESQAT | |-----------------------------------------------------| | +0|00000000|00000000|80C84158|000003F8| | | +10|83918000|867FA418|80C814F0|00C88158| | | +20|FFFFFFFF|00000000|00000000|00000000| | |-----------------------------------------------------| | CONTENTS OF CAOETABL | |-----------------------------------------------------| | +000|C3C1D6C5|E3C1C2D3|F0F361F2|F761F0F8| | | +010|F1F14BF2|F6404040|40404040|40404040| | | +020|40404040|40404040|4040C3C1|D6C5E2E3| | | +030|D6D7C3C1|C9D6D7E3|E2402A03|0007FDD9| | . . . . . . | +3E0|F8F0F0F8|F0F2C1D9|E7F0F0F8|4BF00000| | | +3F0|00000000|00000000|47F0F0A4|9FE2C1C6| | |-----------------------------------------------------|

Page 273: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Options Summary Report

Chapter 9: Utilities 273

A

Module name.

B

Address where module resides.

C

Release of module.

D

Date module was assembled.

E

Time module was assembled.

F

Size of module.

G

Number of CA Optimizer/II modules found.

H

Contents of module CAOESQAT (for support purposes).

Options Summary Report

The Options Summary produces a report detailing your installation's default

options.

JCL

A procedure called CAIOPTNS is provided to invoke the Options Summary

program. To obtain an options summary for your data center, specify:

//EXEC CAIOPTNS

The options summary program, CAOUOPTS, uses the following DD statements:

DD

Statement

Description

STEPLIB Defines the library containing CA Optimizer/II Options

Summary program and options modules.

SYSPRINT Defines the report file.

Page 274: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Options Summary Report

274 User Guide

Report

A sample of the Options Summary is as follows:

* * EXECUTION TIME DEFAULTS:

*

* CEEDUMP = OFF * DUPLIM = 5

* EXPDAYS = 0

. . . .

* SYSOUTD =

* UNIT = SYSDA *

* CAOUXMOD = CAO

* CAOUXMOD = CEE * CAOUXMOD = IGZ

* CAOUXMOD = ILBO

* CAOUXMOD = IN25 *

* CAOUSYM = CAI.PROTSYM

*

*************************************************************************

SUPPORT IS ACTIVE

SQA ANCHOR LOADED AT 82A3D2F0

REPORTING OPTIONS:

OPTION STATUS FIXED

ACB = OFF

ACTONLY = OFF

AMB = OFF . .

. .

WORKSTOR = ON WTOXCL = ON

LOGGING OPTIONS:

OPTION STATUS FIXED

LOGTSO = ON

LOGNET = OFF

LOGROS = ON LOGUNI = OFF

LOGWTO = ON

LOGWTL = OFF SMF = OFF

CONTROL OPTIONS:

MCHAR VALUE = ?

PCHAR VALUE = *

RCHAR VALUE = :

SYSOUT VALUE = *

MAXBLL = 512

DEFAULT DATA SET NAMES:

NTMGCCTL CAI.NTMMGCTL

NTMPI CAI.NTMPI

NTMSC CAI.NTMSC CAIOPTS FILE SUFFIX CAIOPTS

Page 275: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

CSL Summary Report

Chapter 9: Utilities 275

CSL Summary Report

The CSL Summary produces a report of all members in the Condensed Source

Listing library.

Note: CA Optimizer/II no longer writes symbolic information using the CSL

format. This utility provides summary information for CSL libraries that were

populated by earlier versions of the product. These CSL libraries may still be

used as input to Analyzer, Detector, and Extended Detector. However, as

programs are recompiled, their updated symbolic information can only be

written using the PROTSYM format.

JCL

A procedure called CAICSLD is provided to invoke the Condensed Source Listing

Summary program. To obtain a CSL Summary for your data center, specify:

// EXEC CAOUCSLD

The CSL summary program, CAOUCSLD, uses the following DD statements:

DD

Statement

Description

STEPLIB Defines the library containing CA Optimizer/II CSL Summary

program.

SYSPRINT Defines the report file.

CAISYM (Optional) Defines the Condensed Source Listing library to be

reported on.

Note: The ddname for the CSL is an installation option that can be modified. If it

has been modified at your installation, be sure to also change the ddname in

procedure CAOUCSLD. If omitted, CAOUCSLD reports on all of the CSLs defined

as installation defaults.

Page 276: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

CSL Summary Report

276 User Guide

Report

This sample report shows the information and the format of the Condensed

Source Listing Summary.

CA PAGE 1

CA-OPTIMIZER/II r8.5 0404ARX00 06 APR,2004 12:16:08

CA-OPTIMIZER/II CONDENSED SOURCE LIBRARY

DATA SET NAME = XYZAB01.TEST.OX30.CSL

A B C D E F

PROGRAM ID DATE COMPILED TIME COMPILED GENLEVEL RELEASE COMPILER

---------- ------------- ------------- --------- ------- ---------

A 31 May,2001 10:32:26 0106ARX00 3.0 COBOL II

B 16 Mar,2001 15:46:28 0106ARX00 3.0 COB OS390

C 16 Mar,2001 15:46:32 0106ARX00 3.0 COB OS390 CAO2DEMO 19 Jun,2001 10:41:52 0106AOX00 3.0 COBOL II

COBBDEMO 24 May,2001 11:16:00 0106ARX00 3.0 COBOL II

DB2ADD 29 Jun,2001 13:36:19 0106ARX00 3.0 COB OS390 DB2DEMO 29 Jun,2001 13:35:24 0106ARX00 3.0 COB OS390

IC101A 20 Jul,2001 10:54:31 0104OX220 2.2 COBOL II

IC102A 20 Jul,2001 10:54:49 0104OX220 2.2 COB OS390 NOABEND 19 Jun,2001 10:41:28 0106AOX00 3.0 COBOL MVS

PARMTEST 29 Aug,1996 10:20:45 0106ARX00 3.0 COBOL II

PGM1 11 May,2001 10:20:12 0106ARX00 3.0 COB OS390 PGM2 24 May,2001 11:16:12 0106ARX00 3.0 COBOL II

PGM3 24 May,2001 11:16:15 0106ARX00 3.0 COB OS390

PGM9 24 May,2001 11:16:15 0106ARX00 3.0 COB OS390 REFMOD 20 Mar,2001 12:44:41 0106ARX00 3.0 COB OS390

SQ133A 09 Jul,2001 16:28:39 0104OX220 2.2 COBOL II

STOPRUN 30 Mar,2001 10:05:24 0106ARX00 3.0 COBOL II SUB1 07 May,2001 12:37:59 0106ARX00 3.0 COB OS390

TESTFILE 14 May,2001 10:26:13 0106ARX00 3.0 COBOL II

TWLCB2I1 16 Mar,2001 15:56:26 0106ARX00 3.0 COB OS390 VTEST 03 Nov,2000 14:07:03 0106ARX00 3.0 COBOL II

TOTAL NUMBER OF COBOL II PROGRAMS = 10

TOTAL NUMBER OF COBOL FOR MVS PROGRAMS = 1 G

TOTAL NUMBER OF COBOL FOR OS/390 PROGRAMS = 11

TOTAL NUMBER OF PROGRAMS = 22

Page 277: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

CAIPRINT Repository Utility

Chapter 9: Utilities 277

A

Program ID.

B

Date the program was compiled.

C

Time the program was compiled.

D

The genlevel of CA Optimizer/II when the CSL was created.

E

The release of CA Optimizer/II when the CSL was created.

F

The compiler used.

G

Totals for each CSL reported on.

CAIPRINT Repository Utility

This section covers the JCL, commands, and usage considerations of the

CAIPRINT Repository Utility.

JCL

A procedure called CAIPRTU is provided to invoke the CAIPRINT Repository

Utility, CAOUPRTU. To display or maintain the contents of your repository,

specify:

// EXEC CAIPRTU

//PRTU.SYSIN DD *

(commands go here)

/*

CAOUPRTU uses the following DD statements:

DD

Statement

Description

STEPLIB Defines the library containing CA Optimizer/II.

SYSPRINT Defines the report file.

Page 278: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

CAIPRINT Repository Utility

278 User Guide

DD

Statement

Description

SYSUT1 Defines a work file used for some requests.

Commands

The syntax of any command is:

keyword <selection criteria>

where:

ERRSUM

Lists a summary of abend reports contained within a repository (DSN). The

summary includes the program name, offset, and abend code, and a count

indicating the number of reports found with the same information. The

entries are displayed in alphabetical order, by program name. Requires that

DSN be specified.

JOBSUM

Lists a summary of abend reports contained within a repository (DSN), by

job name. The summary includes the job name, program name, offset, and

abend code, and a count indicating the number of reports found with the

same information. The entries are displayed in alphabetical order by job

name and program name. Requires that DSN be specified.

keyword

Specifies one of the command keywords listed in this section.

selection criteria

Comprised of an argument and optionally an operator and a value.

Example

LIST DATE GT 2004/04/06

In this example, the keyword LIST is used to display a summary of reports that

were created in the repository after April 6, 2004. The selection criteria is

comprised of the argument DATE, the operator GT (for Greater Than) and the

value 2004/04/06.

Page 279: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

CAIPRINT Repository Utility

Chapter 9: Utilities 279

Command Keywords

Supported command keywords are:

COPY

Copy reports from a secondary repository (ODSN) to your primary repository

(DSN). Requires that both DSN and ODSN be specified.

DELETE

Delete selected reports from a repository (DSN). Requires that DSN be

specified.

DSN

Define the dsname for your primary CAIPRINT repository. Must be specified

prior to using any other commands.

INIT

Initialize a newly defined repository (DSN). Requires that DSN be specified.

LIST

List a summary of reports contained within a repository (DSN). Requires that

DSN be specified.

LOCK

Lock one or more reports in a repository (DSN) to prevent deletion. Requires

that DSN be specified.

ODSN

Define the dsname for a secondary CAIPRINT repository. Must be specified

prior to using the COPY command.

UNLOCK

Unlock one or more locked reports in a repository (DSN) to allow deletion.

Requires that DSN be specified.

Arguments

Valid arguments for selection criteria include:

AGE

Select reports by the number of days since they were created. This argument

requires an operator and a 1- to 3-digit value. Example:

DELETE GE GT 5

ALL

Select every report unconditionally, with no operator or value specified.

Example:

UNLOCK ALL

Page 280: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

CAIPRINT Repository Utility

280 User Guide

CODE

Select reports by the completion code of the step that produced the report.

This argument requires an operator and a 4- to 7-character value.

Examples:

LIST CODE EQ S0C7

(or) LIST CODE EQ U1125

(or) LIST CODE EQ RC0004

(or) LIST CODE EQ CEE3250

System abend codes must begin with S followed by three hexadecimal digits.

User abend codes must begin with U followed by four decimal digits. Return

codes must begin with RC followed by four decimal digits. IBM message

codes must be 1- to 7-characters.

DATE

Select reports by the date on which they were created. This argument

requires an operator and a value in the format yyyy/mm/dd. Example:

DELETE DATE LT 2004/04/06

JOB

Select reports by the name of the job that produced the report. This

argument requires an operator and a 1- to 8-character value. Example:

UNLOCK JOB NE OPTJOB1

LOCK

Select reports by the ID of the user that owns a lock on the report. This

argument requires an operator and a 1- to 7-character value. Example:

LIST LOCK EQ OPTUSER

PGM

Select reports by the name of the abending program that caused the report.

This argument requires an operator and a 1- to 8-character value. Example:

DELETE PGM EQ CAO2DEMO

STEP

Select reports by the name of the step that produced the report. This

argument requires an operator and a 1- to 8-character value. Example:

LIST STEP NE GO

Page 281: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

CAIPRINT Repository Utility

Chapter 9: Utilities 281

SYSTEM

Select reports by the 1- to 8-character name of the system on which the

report was created. Example:

COPY SYSTEM EQ PRODZ1

USER

Select reports by the ID of the user that submitted the job that produced the

report. This argument requires an operator and a 1- to 7-character value.

Example:

LOCK USER EQ OPTUSER

Operators

Valid operators include:

EQ

Select reports if the value of the argument is equal to the value specified.

GE

Select reports if the value of the argument is greater than or equal to the

value specified.

GT

Select reports if the value of the argument is greater than the value

specified.

LE

Select reports if the value of the argument is less than or equal to the value

specified.

LT

Select reports if the value of the argument is less than the value specified.

NE

Select reports if the value of the argument is not equal to the value specified.

RANGE

Select reports if the value of the argument is between the two values

specified.

Usage Considerations

None

Page 282: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel
Page 283: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Chapter 10: Dynamic Symbolic Support 283

Chapter 10: Dynamic Symbolic Support

This chapter discusses how dynamic symbolic support works and how you can

take advantage of its functionalities to enhance your diagnostic experience.

Activate Dynamic Symbolic Support

The dynamic symbolic support feature, when activated, dynamically retrieves

the compiler or assembler listing of the program being printed or viewed from a

listing data set managed by CA Endevor SCM and loads it into the designated

PROTSYM file. For this feature to work, the load module library (JOBLIB or

STEPLIB) where the load module is loaded and the listing data set containing the

module listing must be under the control of CA Endevor SCM.

To activate the dynamic symbolic support feature

1. Specify the option NDVRDSS=ON in your installation options table

CAOUDFRX using the CAIOPTS DD statement, or in the SYM Option 5 panel.

2. Designate a PROTSYM file to receive the dynamic populated symbolic using

the NDVRDSN option.

The designated PROTSYM file can be any existing PROTSYM file and is

searched ahead of all other PROTSYM files specified.

When the dynamic symbolic support feature is activated, it loads the correct

symbolic information whenever a matching symbolic version is not found.

You can reload the symbolic files associated with programs that do not contain a

time stamp in the executable, such as non-LE-enabled Assembler programs,

every time they are printed or viewed. You can activate this behavior using the

additional option NDVRASM=ON. Default is not to refresh the symbolic. This

option, when suppressed (NDVRASM=OFF), never refreshes the symbolic of a

non-LE-enabled Assembler program.

Note: The dynamic symbolic support feature cannot differentiate between

multiple listing outputs created by a single CA Endevor SCM processor for the

same element. Thus, dynamic symbolic support using listing outputs from

multiple compiles or assemblies from a single CA Endevor SCM GENERATE or

MOVE action for the same element may produce unpredictable results.

Page 284: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Activate Dynamic Symbolic Support

284 User Guide

Dynamic Symbolic Support Return Codes

Dynamic symbolic support provides an integrated service using API calls that

deploy various proven components including CA Endevor SCM, PROTSYM post

processors, z/OS dynamic allocation, CSVQUERY, and binder services.

For specific information about the return codes, see message CAPU309E in the

Message Reference Guide.

C1DEFLTS Consideration

Following are the considerations for single and multiple C1DEFLTS:

■ Single C1DEFLTS—In a CA Endevor SCM single C1DEFLTS environment,

dynamic symbolic support invokes CA Endevor SCM API directly, provided

the C1DEFLTS data set and CA Endevor SCM AUTHLIB and CONLIB data sets

are in the LNKLIST.

■ Multiple C1DEFLTS—In a CA Endevor SCM multiple C1DEFLTS environment,

dynamic symbolic support normally invokes CA Endevor SCM API through a

listing server dedicated to a unique C1DEFLTS. For more information, see

the Installation Guide.

Page 285: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Chapter 11: Using Options 285

Chapter 11: Using Options

This chapter summarizes CA Optimizer/II component option usage and

alphabetically lists all the CA Optimizer/II options.

Whenever an option has both a compile-time and an execution-time usage, the

compile-time usage is presented first. The term option refers to the control of

functions at compile-time, execution-time, report-time, and view- time.

Compile-time

This section provides information on the following:

■ Different coding options

■ Synonyms and their abbreviations

■ Overriding defaults

■ Order of precedence

■ Usage considerations

Page 286: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Compile-time

286 User Guide

Coding Options

Optimizer options, like COBOL II options, can be specified in three ways:

■ CBL opt1 opt2 opt3... in the source file,

nPARM='opt1,opt2,opt3,...' on your EXEC statement, or

■ as specified in your installation defaults.

You can freely combine your Optimizer options with COBOL II options on the

EXEC and CBL statements. The processing of Optimizer options takes place on

three separate levels. The order of precedence for specified options is the same

as for the COBOL II compiler:

■ CBL options

■ PARM='OPTION'

■ Default options

Any conflicting options are processed on each level individually. The levels are

then processed together for conflicts. See Order of Precedence in Establishing

Option Values later in this chapter for more information.

For example, if you specify PARM='LIST,OFFSET' on your EXEC statement,

OFFSET is turned on. However, if you also specify CBL NOOFFSET in your source,

OFFSET is turned off because the CBL statement takes precedence over the

PARM statement.

Note: Any options not specified on the EXEC or CBL statement are determined

by their values in the installation defaults. Any options that have been fixed in

the installation defaults cannot be changed on any other level.

Using Synonyms and Abbreviations

CA Optimizer/II allows you to abbreviate all compile-time options to the first

three characters of their name. For example:

Compile-time Option Abbreviation

MOFFSET MOF

NOMOFFSET NOMOF

Page 287: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Compile-time

Chapter 11: Using Options 287

Overriding Defaults

You can override the default values at compile/optimize time by specifying

options in one of the following:

■ The options list in the EXEC statement

■ The CBL statement in your COBOL program

Note: You can override defaults only if the option has not been fixed by your

systems programmer at installation. The product is shipped with all defaults

unfixed.

Order of Precedence in Establishing Option Values

At compile-time, once all options have been scanned, their processing takes

place in the following order of precedence:

Order Scanned Compile-time

Options

Force

1 FDCHECK

PARMCHK

PFLOW

SUBRNGCK or WSINIT

DTECT*

2 ICICS CICS

3 CICS

DCI

HOGAN**

IDMSDC

SHADOW** or TPMON

NODTECT

NOXCOUNT

NOXTIME and

NODBGSLEEP

4 NODTECT NOPFLOW and NOPARMCHK

5 XCOUNT or XTIME SYM and MOFFSET

6 MOFFSET NOOFFSET

7 OFFSET NOLIST

8 LIST NOSELECT

9 CXREF NOXREF

10 NOCOMPILE

NOCOMPILE(w)

NOCOMPILE(e)

NOCOMPILE(s)

COBCC=0

COBCC=0

COBCC=4

COBCC=8

11 MMAP NOMAP

Page 288: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Compile-time

288 User Guide

If the EDS option is set to EDS=YES at installation (in source member

CAOUDFOX), the DTECT option will not be forced by WSINIT, FDCHECK, or

SUBRNGCK.

**These options are no longer supported, but, if specified, they will force the

TPMON option.

Usage Considerations

The following options, if specified on the PROCESS (CBL) statement, produce

COBOL II warning message(s) (RC=4) but are processed by CA Optimizer/II:

■ DECK

■ NOLIST

■ NOMAP

■ OFFSET

■ NOOBJECT

■ NOSOURCE

■ SSRANGE

Any options that are specified on the PROCESS(CBL) statement and are

recognized only by CA Optimizer/II produce a compiler error message (RC=8).

The ICICS option will only take effect when it is specified on the JCL parameter

list. If it is specified on the PROCESS(CBL) statement, it will produce a compiler

error message (RC=8) and will not enable the integrated CICS translator of

Enterprise COBOL for z/OS.

When compiling with Enterprise COBOL for z/OS, if the CICS option is specified

on the PROCESS(CBL) statement, it will be processed as both the CICS option of

the compiler (that is, it will enable the integrated CICS translator) and CICS

option of CA Optimizer/II.

Page 289: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Execution, Report, and View-time

Chapter 11: Using Options 289

Execution, Report, and View-time

The following discussions on coding options and overriding defaults do not apply

to the EOS runtime options. The EOS runtime options apply globally to all

transactions containing EOS COBOL programs and cannot be overridden at the

transaction level. The EOS runtime options are discussed in detail in the

Installation Guide.

Coding Options

The general rules for coding keywords and their options at execution and

report-time are:

■ One or more spaces as delimiters for options.

■ An equal sign (=) to separate a keyword from its option value. For example,

DUMP=ON and DUMP ON are both acceptable.

■ Positions 1 through 72 and ignore positions 73 through 80.

You can specify:

■ Options in any order; if you repeat an option, the last specified occurrence is

applied.

■ Any number of options on a line; however, do not split options between two

lines.

You can also:

■ Denote a comment line with an asterisk in position 1.

■ Input an option associated with a keyword when you specify the keyword. To

obtain the total default value of the keyword, omit the entire keyword and

option.

Overriding Defaults

You can override option default values by specifying options in the card-image

data set defined by the CAIOPTS DD statement. You can specify this DD

statement at execution-time and report-time. If the Analyzer Reporter is to be

automatically invoked at execution-time, the report-time options for Analyzer

can be mixed freely with the execution-time options for both Detector and

Analyzer.

Page 290: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Execution, Report, and View-time

290 User Guide

You can override any option as long as it has not been fixed by your systems

programmer at product installation time. The product is shipped with all defaults

unfixed.

At view-time, you can override options through the Report Options panel of the

CAIPRINT Repository Viewer. See the chapter ―Using the CAIPRINT Repository

Viewer‖ for more information.

Optimizer Options

The following table lists the options available at compile/optimize time:

Compile-time Options

To invoke Optimizer: COPT IDMSDC TPMON ICICS

Environmental options: CICS MMAP

MOFFSET

MXREF

OFFSET

PRTCOPY

SELECT

SOURCE

TITLE

XMMAP

XREF

Output producing

options:

CXREF

DCRDISP

LIST

MAP

XTIME

Analyzer features: XCOUNT

Detector features: DBGSLEEP

DTECT

FDCHECK

PARMCHK

PFLOW

SUBRNGCK

WSINIT

Other options: COBCC

DECK

EXIT

INTERTST

LINECOUNT

LOWER

OBJECT

OPTRC

SPM

STATS

SYM

XDATA

Execution Time Options

PRTLHCT=80|nn

Specifies the percent full the PRTLIB dataset must reach to trigger a health check

exception condition. If this percentage is reached the health check program will

go into exception state and issue consol messages every 15 minutes until the

problem is corrected.

Page 291: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Detector Options

Chapter 11: Using Options 291

Detector Options

The following table lists all Detector options available at compile-time,

execution-time, and view-time:

Detector Options

Compile-time Execution-time View-time

DBGSLEEP

DTECT

FDCHECK

PARMCHK

PFLOW

SUBRNGCK

WSINIT

Standard Options

ACTONLY PGM

CEEDUMP PRTLIB

DBGAWAKE PRTREPT

DB2ACTIV REGMAX

DUMP SAVEHEAP

INTERCEPTS SNAP

PARMCHK SYMDSN

PFLOW

Formatting Options

ASMINST MRGDATA

BINFRMT MRGDSECT

FILES MRGFILES

FIRST128 MRGLINK

GRPADDR MRGLOCAL

LINECNT MRGPARMS

LINKAGE MRGSTAT

LOCALSTOR MRGWORK

MEMMAP OCCURS

MRGAUTO SAVEAREA

MRGBASED SHOWHEAP

MRGCNTLD SHWUNMRG

MERGEDB WORKSTOR

Data Management Control

Blocks

BLOCKS IOB

DCB UCB

DEB

VSAM Control Blocks

ACB PLH

AMB RPL

AMBL VSAMIDX

ASMINST

BINFRMT

FILES

FIRST128

GRPADDR

LINECNT

LINKAGE

LOCALSTOR

MEMMAP

MRGAUTO

MRGBASED

MRGCNTLD

MERGEDB

MRGDSECT

MRGFILES

MRGLINK

MRGLOCAL

MRGPARMS

MRGSTAT

MRGWORK

OCCURS

SAVEAREA

SHOWHEAP

SHWUNMRG

WORKSTOR

Some Detector features have both a compile-time and execution-time options.

Also, the formatting options can be specified either at execution-time or at

view-time.

Page 292: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Extended Detector Options

292 User Guide

Specifying Detector Compile-time Options

You can specify the Detector compile-time options in one of the following ways:

■ In the PARM list in the EXEC statement

■ In a CBL statement in your COBOL program

You can freely combine Detector compile-time options with COBOL compiler

options and other CA Optimizer/II options. The following is a list of Detector

compile-time options. Their execution-time applications are discussed in detail in

the chapter ―Using Detector.‖

■ DBGSLEEP

■ DTECT

■ FDCHECK

■ PARMCHK

■ PFLOW

■ SUBRNGCK

■ WSINT

Indicating Detector Execution-time and View-time Options

Detector execution-time options are provided to the Execution Monitor by the

CAIOPTS data set. The view-time options are specified through the Report

Options panel in the CAIPRINT Repository Viewer.

For more information on overriding Detector options, see the chapter ―Using

Detector.‖

Extended Detector Options

The following table lists all Extended Detector options available at compile -time,

execution-time, and view-time:

Extended Detector Options

Execution-time

View-time

Standard Options

BLLMAX REGMAX

DB2ACTIV RPTSZ80

DUMP SAVEHEAP

PRTLIB SNAP

Data Management

Control Blocks

BLOCKS IOB

DCB UCB

ASMINST

BINFRMT

FILES

FIRST128

GRPADDR

Page 293: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Extended Detector Options

Chapter 11: Using Options 293

Extended Detector Options

Execution-time

View-time

PRTREPT SYMDSN

Formatting Options

ASMINST MRGDATA

BINFRMT MRGDSECT

FILES MRGFILES

FIRST128 MRGLINK

GRPADDR MRGLOCAL

LINECNT MRGPARMS

LINKAGE MRGSTAT

LOCALSTOR MRGWORK

MEMMAP OCCURS

MERGEDB SAVEAREA

MRGAUTO SHOWHEAP

MRGBASED SHWUNMRG

MRGCNTLD WORKSTOR

DEB

VSAM Control Blocks

ACB PLH

AMB RPL

AMBL VSAMIDX

Log and Notify Options

LOGROS LOGUNI

LOGTSO WTO

LINECNT

LINKAGE

LOCALSTOR

MEMMAP

MERGEDB

MRGAUTO

MRGBASED

MRGCNTLD

MRGDSECT

MRGFILES

MRGLINK

MRGLOCAL

MRGPARMS

MRGSTAT

MRGWORK

OCCURS

SAVEAREA

SHOWHEAP

SHWUNMRG

WORKSTOR

Specifying Extended Detector Compile-time Options

You can specify the Extended Detector compile-time options in one of the

following ways:

■ In the PARM list in the EXEC statement

■ In a CBL statement in your COBOL program

You can freely combine Extended Detector compile-time options with COBOL

compiler options and other CA Optimizer/II options. The following is a list of

Extended Detector compile-time options:

■ FDCHECK

■ SUBRNGCK

■ WSINT

Note: The EDS option must be specified in the compile-time default CSECT,

CAOUDFOX, to prevent these options from forcing DTECT.

Page 294: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Analyzer Options

294 User Guide

Indicating Extended Detector Execution-time and View-time Options

Extended Detector execution-time options are provided to the Execution Monitor

by the CAIOPTS data set. The view-time options are specified on the Report

Options panel in the CAIPRINT Repository Viewer.

For more information on overriding Extended Detector options, see the chapter

―Using Extended Detector.‖

Analyzer Options

Analyzer consists of two facilities: Counts and Timings. The two facilities can be

used independently or together. Pictorially:

Analyzer

____________________________________

| |

(XCOUNT) (XTIME)

Executed (and Unexecuted) CPU time analysis by

Paragraph and Source Application, Load Module,

Statement Counts Program, Paragraph, and

Source Statement

You control Analyzer at compile-time, execution-time, and report-time. The

following table lists the Analyzer Control options whose use is discussed in the

chapter ―Using Analyzer.‖

Analyzer Options

Compile-time Execution-time Report-time

XCOUNT

XTIME

BINDER

STIMERM

XCOUNT

XREPORT

XTIME

CNTXREF

SOURCEMAP

INSTRMAP

USERID

PROCDIV

Compile-time Options

You can specify the Analyzer compile-time options in one of the following ways:

■ In the PARM list in the EXEC statement

■ In a CBL statement in your COBOL program

Page 295: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Analyzer Options

Chapter 11: Using Options 295

You can freely combine Analyzer compile-time options with COBOL compiler

options and with other CA Optimizer/II options.

The following is a list of Analyzer compile-time options. Their execution-time

applications are discussed in detail in the chapter ―Using Analyzer.‖

■ XCOUNT

■ XTIME

Execution-time Options

Analyzer execution-time options are provided to the Execution Monitor by the

CAIOPTS data set. You can freely combine Analyzer execution-time options with

Detector execution-time options.

The following is a list of Analyzer execution-time options. Their applications are

discussed in the chapter ―Using Analyzer.‖

■ BINDER

■ STIMERM

■ XCOUNT

■ XREPORT

■ XTIME

Report-time Options

Analyzer report-time options are provided to Analyzer Reporter using the

CAIOPTS data set at report-time. If the Analyzer Reporter is to be automatically

invoked at execution-time using XREPORT, you may freely combine Analyzer

report-time options with both Detector and Analyzer execution-time options in

the execution-time CAIOPTS data set.

The following is a list of the Analyzer report-time options. Their applications are

discussed in detail in the chapter ―Using Analyzer.‖

■ CNTXREF

■ INSTRMAP

■ PROCDIV

■ SOURCEMAP

■ USERID

Page 296: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Analyzer Options

296 User Guide

Guidelines for Using Report-time Options

Generally, you can supply options in any order, but sometimes the order in which

keywords appear can be significant. For example, if the same program-ID

appears on both the SOURCEMAP and PROCDIV options, the last keyword

processed is the controlling option.

The defaults for the keyword options cover all programs. Any overriding

specification, such as SOURCEMAP PGMA, overrides the default, SOURCEMAP

ALL in this instance. Of all the programs in the reporting step, only the one

specified, in this case PGMA, will produce full source listing reports. Once you

override an options' default, you must specify each parameter you want for the

given option.

To reverse the option request, prefix each keyword option with NO. Do not insert

a space between NO and the keyword. The following are some examples showing

how to reverse the option request:

■ If you want SOURCEMAP reports for all programs except PGMA, you can

specify:

SOURCEMAP ALL

NOSOURCEMAP PGMA

■ Or if you want CNTXREF reports for all programs except PGMA, you can

specify:

CNTXREF ALL

NOCNTXREF PGMA

This feature is very useful when you are running several programs.

Relationship of program-ID and CSECT Name

It is important to be aware of the possible differences between options using

program-ID and those using CSECT to identify programs.

For those reports relating to the COBOL source listing (SOURCEMAP, CNTXREF,

and PROCDIV), the name specified following the keyword must be identical to

the name specified on the first program-ID statement of the COBOL program.

The CSECT name is the control section name actually assigned by the linkage

editor. It is used mainly for reporting time measurement data for non-COBOL

programs (INSTRMAP).

CSECT names are not necessarily associated with load module names. For

COBOL programs, the first program-ID in the source program is the CSECT

name. There are exceptions, however, where the load module name can be

changed during link-edit. For this reason, the three source options SOURCEMAP,

PROCDIV, and CNTXREF must use the COBOL program-ID for ―name,‖ and the

INSTRMAP option must use the CSECT name for ―CSECT.‖

Page 297: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Options Listing

Chapter 11: Using Options 297

Options Listing

This section lists the CA Optimizer/II options. The underlined options indicate

the default values.

Option

ACB ON|OFF

Prints access method control blocks for open VSAM files

in an Abend or Snap report.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time

ACTONLY ON|OFF

Used primarily for initial debugging in a multi-module

environment. During Abend reporting, it indicates to

print reports only for the program in the calling

sequence which was most recently executed and is still

active (when it has not yet executed its GOBACK).

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time

AMB ON|OFF

Prints access method blocks for open VSAM files in

Abend or Snap Reports.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time

AMBL ON|OFF

Prints an access method block list for open VSAM files in

an Abend or Snap report.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time

ASMINST ON|OFF

Displays the abending assembler instruction and

associated operands on an Abend or Snap report.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time, view-time

BINDER ON|OFF

Specifies whether user load modules are accessed

through the binder API function calls or the standard I/O

macros. This option must set to ON for programs that

reside in PDSE libraries.

Synonym:

Component:

When used:

None

Analyzer, Detector, Extended

Detector

Execution-time

BINFRMT DEC|HEX

Specifies whether to display binary data values in

decimal display or hexadecimal format on the merged

Data Division displays of an Abend or Snap report.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time, view-time

Page 298: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Options Listing

298 User Guide

Option

BLLMAX 512|nnnn

Because the length of an 01-item in the linkage section

cannot always be determined, this option specifies the

maximum number of bytes which are formatted for a

BLL cell whose range is unknown. The maximum value

is 4096.

Synonym:

Component:

When used:

None

Extended Detector

Execution-time

BLOCKS ON|OFF

A data management control block option which sets all

control block options, including all VSAM control block

options, either ON or OFF for an Abend or Snap report.

This option overrides any previous control block

options.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time

CEEDUMP ON|OFF

Specifies whether Detector forces the Language

Environment (LE) option TERMTHDACT(MSG) after

writing a Detector report for an application executing

under LE. If TERMTHDACT(QUIET) or

TERMTHDACT(MSG) are already in effect, this option is

ignored.

Synonym:

Component:

When used:

None

Detector

Execution-time

CICS|NOCICS

Determines if the program is optimized for a CICS

environment. CICS suppresses DBGSLEEP, DTECT,

PARMCHK, PFLOW, XCOUNT, and XTIME.

When compiling with Enterprise COBOL for z/OS,

specifying the CICS option on the PROCESS(CBL)

statement is not recommended, as it will be processed

as both the CICS option of the compiler (that is, it will

enable the integrated CICS translator) and CICS option

of CA Optimizer/II.

To enable the integrated CICS translator of Enterprise

COBOL for z/OS under CA Optimizer, use the ICICS

option.

Synonym:

Component:

When used:

CIC

Optimizer

Compile-time

name

CNTXREF|NOCNTXREF (name1,name2,…)

ALL

Indicates by program-ID the programs for which the

Execution Count Cross-Reference report prints. You can

produce this report only for those programs in which

you are also obtaining a SOURCEMAP.

Synonym:

Component:

When used:

None

Analyzer

Report-time

Page 299: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Options Listing

Chapter 11: Using Options 299

Option

COBCC=8|nnnn

This option is normally set at installation. It specifies the

highest return code from the compiler that is acceptable

to Optimizer. Optimizer must ordinarily work only with

executable modules (no severe or terminating

diagnostics). For this reason, you should not change this

option except under special conditions.

Synonym:

Component:

When used:

None

Optimizer

Compile-time

COPT|NOCOPT

Instructs the Run Executive to invoke Optimizer after

the compile. If you specify NOCOPT, only the compiler is

invoked.

Synonym:

Component:

When used:

COP

Optimizer

Compile-time

CXREF|NOCXREF

Specifies that Optimizer produces a condensed

cross-reference of referenced data items. CXREF is

exclusive of XREF and produces the procedure name

XREF with all procedure names listed. CXREF will be

turned off if it is specified on the PROCESS(CBL)

statement and XREF was not produced by the COBOL

compiler.

Synonym:

Component:

When used:

CXR

Optimizer

Compile-time

name

DBGAWAKE ( name1,name2,…)

ALL

Activates debugging facilities at execution-time for one

or more programs that were compiled using the

DBGSLEEP compile-time option and any or all of the

following compile-time options: XCOUNT, PFLOW, and

SUBRNGCK.

where name is the name of a COBOL CSECT

(program-ID) which was compiled with DBGSLEEP. ALL

may be specified in lieu of a list. ALL results in the

activation of the debugging facilities in all programs

optimized with the DBGSLEEP feature. See

Production-time Enabling of Debugging Facilities

(DBGSLEEP/DBGAWAKE) in the chapter ―Using

Detector‖ for a detailed discussion of

DBGSLEEP/DBGAWAKE.

Synonym:

Component:

When used:

None

Detector

Execution-time

Page 300: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Options Listing

300 User Guide

Option

DBGSLEEP|NODBGSLEEP

Controls the masking of Detector facilities and is

intended for a program's final compilation prior to being

placed in production-status. DBGSLEEP causes PFLOW,

DTECT, and XCOUNT (or any subset of these facilities)

to be disabled in such a way that, should they ever be

needed at a later time, they are available without

requiring recompilation. When used with its companion

execution-time option, DBGAWAKE, you can enable

debugging facilities in otherwise production status

programs without performing a recompile/relink of the

program.

Synonym:

Component:

When used:

DBG

Detector

Compile-time

DB2ACTIV ON|OFF

Indicates whether Detector or Extended Detector

displays summary information for only those packages

and DBRMs that are active at the time of an Abend or

Snap. If the option is set to OFF, Detector displays

summary information for all of the packages and DBRMs

defined to the DB2 plan.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time

DCB ON|OFF

Prints data control blocks for all open files in an Abend or

Snap report.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time

DCRDISP|NODCRDISP

Indicates whether Optimizer produces a relative

decimal byte displacement on the data map or merged

data map listing instead of the hexadecimal relative

byte displacement produced by the compiler.

Synonym:

Component:

When used:

DCR

Optimizer

Compile-time

DEB ON|OFF

Prints data extent blocks for all open files in an Abend or

Snap report.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time

DECK|NODECK

Determines whether Optimizer produces the optimized

object module on SYSPUNCH.

Synonym:

Component:

When used:

D or DEC

Optimizer

Compile-time

Page 301: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Options Listing

Chapter 11: Using Options 301

Option

DTECT|NODTECT

Specifies to invoke the CA Optimizer/II Detector feature

at execution-time. If you select DTECT, Detector

automatically generates the CSL option so that the

source is available for the Abend, Snap, and Intercepts

reports. Unless NOCSL is specified, DTECT forces on

CSL, MOFFSET, and MMAP. NODTECT suppresses

PARMCHK and PFLOW. If CICS, IDMSDC, or TPMON is

specified, DTECT is suppressed.

Synonym:

Component:

When used:

DTE

Detector

Compile-time

DUMP ON|OFF

Specifies whether Detector or Extended Detector forces

or suppresses a system dump after it has completed its

processing. If DUMP ON is in effect and a SYSUDUMP DD

statement was not specified in the JCL, Detector

dynamically allocates it.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time

FDCHECK|NOFDCHECK

Specifies whether Optimizer causes a user 1128 Abend

at execution-time if a program attempts to move data to

or from if a record of a file which is not OPEN or, for an

input file, is at end-of-file. This option forces the DTECT

option except when CICS, IDMSDC, or TPMON is

specified at compile-time, or EDS=YES is specified in

the defaults. For more details, see Detection of Invalid

Record Area References in the chapter ―Using Detector.‖

Synonym:

Component:

When used:

FDC

Detector, Extended Detector

Compile-time

FILES ON|OFF

Specifies whether Detector or Extended Detector

displays all open files not already shown in the File

Section display of an Abend or Snap report.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time, view-time

FIRST128 ON|OFF

Controls whether Detector or Extended Detector prints

only the first 128 bytes of the current record of each

open file or the entire record. This option affects both

the File Section display and Open Files report of an

Abend or Snap report.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time, view-time

GRPADDR ON|OFF

Controls whether Detector or Extended Detector

displays the base locator, displacement and address of a

group item on the merged Data Division displays of an

Abend or Snap report.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time, view-time

Page 302: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Options Listing

302 User Guide

Option

ICICS | ICICS('translator options') | NOICICS

CA Optimizer/II synonym for the CICS option of

Enterprise COBOL for z/OS. This option will enable the

compiler's integrated CICS translator. Option overrides

for the CICS translator may be passed as a suboption

string, delimited by either quotes or apostrophes.

ICICS should only be used with the Enterprise COBOL

for z/OS compiler, to compile programs that contain

EXEC CICS statements and that have not been

processed by a separate CICS translator. ICICS may

only be specified on the JCL parameter list and will not

be recognized if specified on the PROCESS(CBL)

statement. ICICS forces the CA Optimizer/II CICS

option.

For more information on using the integrated CICS

translator of Enterprise COBOL for z/OS, see IBM's

Enterprise COBOL for z/OS Programming Guide.

Synonym:

Component:

When used:

None

Optimizer

Compile-time

IDMSDC|NOIDMSDC

Indicates whether to optimize the program for an

IDMSDC environment. IDMSDC suppresses XCOUNT,

DTECT, PFLOW, XTIME, DBGSLEEP, and PARMCHK.

Synonym:

Component:

When used:

IDM

Optimizer

Compile-time

CSECT

INSTRMAP|NOINSTRMAP (CSECT1,CSECT2,…)

ALL

Indicates the programs by CSECT name for which the

Instruction Detail report prints.

Synonym:

Component:

When used

None

Analyzer

Report-time

INTERCEPTS 0|nnnnn

Specifies whether Detector intercepts program interrupt

processing when data exceptions (0C7s) or decimal

divide-by-zero exceptions (0CBs) occur. Detector prints

the Intercepts report and continues processing. You

must set nnnnn to the total number of INTERCEPTS in

the run that you will permit. The maximum number

allowed is 32,767.

If the number of exceptions goes beyond the limit you

have specified, a Detector Abend report generates and

the run terminates. To use INTERCEPTS, the DTECT,

FDCHECK, PFLOW, SUBRNGCK, and/or WSINIT options

must be specified at compile-time. You can use the

INTERCEPTS feature in the same run with the SNAP

feature.

Synonym:

Component:

When used:

None

Detector

Execution-time

Page 303: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Options Listing

Chapter 11: Using Options 303

Option

INTERTST

Specifies whether to optimize the program for use with

CA InterTest.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time

IOB ON|OFF

Prints input/output blocks for all open files in an Abend

or Snap report.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time

LINECOUNT (60)|(nnn)

Indicates the number of lines on each page of output at

compile-time. where nnn can be any integer from 10 to

255, inclusive.

Synonym:

Component:

When used:

LC

Optimizer

Compile-time

LINECOUNT 60|nnn

Specifies the number of lines on each page of output at

execution-time. where nmn can be any integer from 10

to 255, inclusive.

Synonym:

Component:

When used:

LINECNT

Execution Monitor

Execution-time, report-time,

view-time

LINKAGE ALL|NONE

Specifies whether to display (ALL) or suppresses

(NONE) the program's Linkage Section in an Abend or

Snap report.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time, view-time

LIST|NOLIST

Indicates whether Optimizer produces an object code

listing. LIST and OFFSET options are mutually

exclusive; LIST and MOFFSET are not. If both LIST and

OFFSET are specified, OFFSET takes precedence.

Synonym:

Component:

When used:

PMAP

Optimizer

Compile-time

LOCALSTOR ALL|NONE

Specifies whether to display (ALL) or suppress (NONE)

the program's Local-Storage Section in an Abend or

Snap report.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time, view-time

LOGROS ON|OFF

Specifies whether to send a message describing the

abend to the Advantage CA-Roscoe user who submitted

the job. You must establish a list of Advantage

CA-Roscoe job names in the Extended Detector defaults

using the ROSCOE parameter.

Synonym:

Component:

When used:

None

Extended Detector

Execution-time

LOGTSO ON|OFF

Indicates whether to send a message describing the

abend to the TSO user who submitted the job.

Synonym:

Component:

When used:

None

Extended Detector

Execution-time

Page 304: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Options Listing

304 User Guide

Option

LOGUNI ON|OFF

Indicates whether to send a message describing the

abend to the Unicenter Network and Systems

Management console.

Synonym:

Component:

When used:

None

Extended Detector

Execution-time

LOWER|NOLOWER

Specify LOWER only under the direction of CA Technical

Support. LOWER may cause a decrease in optimization

results. It is necessary only under certain conditions

which are identifiable by CA Technical Support.

Synonym:

Component:

When used:

LOW

Optimizer

Compile-time

MAP|NOMAP

Indicates whether Optimizer produces a compiler data

map. The MAP option is mutually exclusive of the MMAP

option. If both are specified, the MMAP option takes

precedence.

Synonym:

Component:

When used:

DMAP

Optimizer

Compile-time

MMAP|NOMMAP

Indicates whether to merge the compiler data map with

the source listing. MMAP is mutually exclusive of the

MAP option, with MMAP taking precedence. MMAP may

be forced on by Detector or Analyzer options. For

details, see Order of Precedence in Establishing Option

Values earlier in this chapter.

Synonym:

Component:

When used:

MMA, MDMAP, or MDM

Optimizer

Compile-time

MEMMAP ON|OFF

Produces a display of the memory map (TGT, PGT, and

DSA) in an Abend or Snap report.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time, view-time

MERGEDB ON|OFF

Indicates whether Detector or Extended Detector

symbolically maps DB2, IDMS, and IMS data. If the

option is set to ON, data item information such as the

name, picture clause, and usage type is merged with

the dump output for those areas.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time, view-time

MOFFSET|NOMOFFSET

Indicates whether to merge the Optimized condensed

object listing onto the source listing. MOFFSET is

exclusive of OFFSET, with MOFFSET taking precedence.

You can use MOFFSET in addition to LIST or SELECT.

MOFFSET is forced on by Analyzer options. For details,

see Order of Precedence in Establishing Option Values

earlier in this chapter.

Synonym:

Component:

When used:

MOF, MLIST or MLI

Optimizer

Compile-time

Page 305: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Options Listing

Chapter 11: Using Options 305

Option

MRGAUTO ON|OFF

Indicates whether Detector or Extended Detector

symbolically maps the data for PL/I automatic storage.

If this option is ON, data item information such as name

and definition is merged with the data.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time, view-time

MRGBASED ON|OFF

Indicates whether Detector or Extended Detector

symbolically maps the data for PL/I based variables. If

this option is ON, data item information such as name

and definition is merged with the data.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time, view-time

MRGCNTLD ON|OFF

Indicates whether Detector or Extended Detector

symbolically maps the data for PL/I controlled variables.

If this option is ON, data item information such as name

and definition is merged with the data.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time, view-time

MRGDATA ON|OFF

Indicates whether to set all data merging options either

ON or OFF for an Abend or Snap report. This option

overrides any previous merging options.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time

MRGDSECT ON|OFF

Indicates whether Detector or Extended Detector

symbolically maps the data for Assembler storage areas

when a USING is active. If this option is ON, data item

information such as name and definition is merged with

the data.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time, view-time

MRGFILES ON|OFF

Indicates whether Detector or Extended Detector

symbolically maps the data in the File Section display of

an Abend or Snap report. If the option is set to ON, data

item information such as the name, picture clause, and

usage type is merged with the data for the current

logical record.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time, view-time

MRGLINK ON|OFF

Indicates whether Detector or Extended Detector

symbolically maps the data in the Linkage Section

display of an Abend or Snap report. If the option is set to

ON, data item information such as the name, picture

clause, and usage type is merged with the data.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time

Page 306: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Options Listing

306 User Guide

Option

MRGLOCAL ON|OFF

Indicates whether to symbolically map the data in the

Local-Storage Section display of an Abend or Snap

Report. If this option is ON, data item information such

as the name, picture clause, and usage type is merged

with the data.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time

MRGPARMS ON|OFF

Indicates whether Detector or Extended Detector

symbolically maps the data for PL/I parameter storage.

If this option is ON, data item information such as name

and definition is merged with the data.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time, view-time

MRGSTAT ON|OFF

Indicates whether Detector or Extended Detector

symbolically maps the data for PL/I static storage. If

this option is ON, data item information such as name

and definition is merged with the data.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time, view-time

MRGWORK ON|OFF

Indicates whether Detector or Extended Detector

symbolically maps the data in the Working-Storage

Section of an Abend or Snap report. If the option is set

to ON, data item information such as the name, picture

clause, and usage type is merged with the data.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time

MXREF|NOMXREF

Allows you to obtain a merged cross-reference on your

source listing for both Data and Procedure Divisions.

MXREF is turned off if it is specified on the

PROCESS(CBL) statement and XREF was not produced

by the compiler

Synonym:

Component:

When used:

MXR

Optimizer

Compile-time

OBJECT|NOOBJECT

Specifies whether to write an optimized object module

to SYSLIN. Specify NOOBJECT when you want only the

results of the Optimizer's source and object code

analysis, but do not want to link and execute the

program.

Synonym:

Component:

When used:

OBJ

Optimizer

Compile-time

OFFSET|NOOFFSET

Indicates whether Optimizer produces a condensed

procedure map listing. OFFSET is mutually exclusive of

MOFFSET and LIST. You can, however, use OFFSET and

SELECT together, and Optimizer integrates the two

outputs.

Synonym:

Component:

When used:

OFF, CLIST, or CLI

Optimizer

Compile-time

Page 307: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Options Listing

Chapter 11: Using Options 307

Option

OCCURS 1|nnnnnnnn|MAX

Specifies to Detector the maximum number of table

occurrences to symbolically map when using the

merging options. If the option is set to a value lower

than the number of occurrences in the table, the

remainder of the table occurrences are dumped in

hexadecimal format. If OCCURS MAX is specified, the

option is set to its maximum value of 16777215.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time, view-time

OPTRC= 0|nn

This parameter is normally set at installation. It

specifies the return code that Optimizer returns if any

statements have been flagged unexecutable (UNEXEC)

or unconditional (UNCOND). You can specify any integer

from 0 to 99 inclusive.

Synonym:

Component:

When used:

None

Optimizer

Compile-time

PARMCHK|NOPARMCHK

Indicates whether Detector validity-checks the option

list on entry to the COBOL program. A message is

produced and execution is resumed if an invalid option

list is found. Validity checking of the option list is not

performed on calls to nested programs. PARMCHK

forces the DTECT option. If NODTECT, CICS, TPMON, or

IDMSDC is specified, PARMCHK is suppressed.

Synonym:

Component:

When used:

PAR

Detector

Compile-time

PARMCHK ON|OFF

Specifies whether option list validity checking is ON at

execution-time. It is ON by default, which means that

PARMCHK processing occurs for any program compiled

using COBOL II or above with the PARMCHK option, or

for any program compiled using OS/VS COBOL with the

DTECT option. Specifying PARMCHK OFF at

execution-time turns off the option for all programs

compiled with PARMCHK.

Synonym:

Component:

When used:

None

Detector

Execution-time

PFLOW|NOPFLOW

Requests a Detector Paragraph Flow report of the last

64 paragraphs executed. It follows the Detector Abend

or Snap report. You can override it by specifying the

PFLOW OFF option at execution-time. PFLOW turns on

DTECT. If NODTECT, CICS, IDMSDC, or TPMON is

specified, PFLOW is suppressed.

Synonym:

Component:

When used:

PFL

Detector

Compile-time

Page 308: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Options Listing

308 User Guide

Option

PFLOW ON|OFF|64|nnnn|mmk

Turns PFLOW on or off at execution-time and optionally

changes the size of the PFLOW table for each program

optimized with PFLOW. The default (ON) results in up to

64 paragraph names being reported in a wraparound

table for each program. You can specify ON or OFF, or

you can specify a number in the format nnnnn or mmK.

Specifying a number other than 0 or 0K turns PFLOW on

at execution-time and changes the number of entries in

the wraparound PFLOW table for each program.

Specifying 0 or 0K turns PFLOW off at execution-time. If

a number in the format nnnnn or mmk is specified, the

number is rounded up to the nearest power of 2, not

exceeding 32768. For example, specifying ―PFLOW

1000‖ yields a PFLOW table for each program with 1024

entries; specifying ―PFLOW 3K‖ yields a PFLOW table for

each program with 4096 entries. In all cases, PFLOW

must have been specified at compile-time.

Synonym:

Component:

When used

None

Detector

Execution-time

PGM xxxxxxxx

Specifies the job step program name of the application

to be executed under the Execution Monitor. The

Execution Monitor is part of the runtime system which

sets up the execution environment for applications

using any of the Detector or Analyzer features. This

option is only used in special circumstances. It is only

specified when the Execution Monitor (CAOCEM00) is

the program being executed as the job step program. It

identifies the load module name of the program you

ordinarily specify as the job step program.

For more information, see the chapter ―Using Analyzer‖

and the Installation Guide.

Synonym:

Component:

When used:

None

Detector

Execution-time

PLH ON|OFF

Prints place holders for open VSAM files in an Abend or

Snap report.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time

Page 309: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Options Listing

Chapter 11: Using Options 309

Option

name

PROCDIV|NOPROCDIV (name1,name2,…)

ALL

Indicates by program-ID the program for which only the

Procedure Division prints. All measurement data for all

programs specified with this option prints next to the

Procedure Division; the other divisions are omitted.

This option allows you to make several Analyzer runs for

the same program without having to produce the full

program source listing each time.

Synonym:

Component:

When used:

None

Analyzer

Report-time

PRTCOPY|NOPRTCOPY

This Optimizer option prints (PRTCOPY) or suppresses

(NOPRTCOPY) the printing of copy books (COPY

statements encountered in the processing of programs)

in the source listing.

PRTCOPY does not override a COPY SUPPRESS

statement in the source. Therefore, the PRTCOPY option

only works for standard COPY statements (no

SUPPRESS).

Synonym:

Component:

When used:

PRT

Optimizer

Compile-time

PRTLIB repository_library_name

Defines the data set name of the CAIPRINT repository

library. When used, this option must name a repository

library that has already been created and cataloged.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time

PRTREPT BOTH|REPOS|PRTDD

Indicates whether to write the CAIPRINT report to the

central VSAM repository (REPOS), the CAIPRINT DD

(PRTDD), or both.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time

REGMAX (xxx,yyy)|(128,256)

Indicates how many bytes of addressable storage to

display before and after the address in each register for

an Assembler program. xxx represents the number of

bytes before, and must be within the range 0-4096. yyy

represents the number of bytes after and must be within

the range 0-32767.

The REGMAX values must be enclosed in parentheses,

and if both xxx and yyy are specified, they must be

separated by a comma. If only xxx is specified, yyy is

assumed to have the same value.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time

Page 310: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Options Listing

310 User Guide

Option

RPL ON|OFF

Prints a Request Parameter List for open VSAM files in

an Abend or Snap report.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time

RPTSZ80 ON|OFF

Indicates whether Extended Detector forces all data in

dump format to appear in an 80-column format.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time, view-time

SAVEAREA ON|OFF

Produces the Save Area Trace on an Abend report. The

Save Area Trace displays the chained register save

areas starting at the abending module.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time, view-time

SAVEHEAP ON|OFF

Indicates whether Detector or Extended Detector saves

the LE heap storage when a report is created.

SAVEHEAP ON is required at execution-time in order to

use SHOWHEAP ON for LE enabled COBOL or Assembler

programs.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time

Page 311: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Options Listing

Chapter 11: Using Options 311

Option

SELECT=(stmnt1,stmnt2-stmnt6,stmnt9,...)

Specifies that a procedure map (PMAP or LIST) prints for

only certain (selected) statements. When you indicate

the statement number, Optimizer formats, in procedure

map form, the entire Optimizer block of code that

contains that statement number. It is possible to format

multiple blocks. If PMAP is specified, SELECT is

suppressed.

Notes:

You cannot specify more than 10 statement numbers in

the option, but you can specify a range of statements by

indicating the starting and ending statement numbers.

For example, 600-650 is counted as two statement

numbers but provides PMAP information for 51 lines.

The statement numbers must appear in ascending

order.

If you specify only one statement or one group

statement, omit the parenthesis.

The statement numbers are the compiler-generated

statement numbers, unless you have specified the

compiler NUM option, in which case they are the user

source statement numbers.

Optimizer ignores the SELECT option if you have also

specified PMAP or LIST. You can use SELECT with CLIST

or MLIST, and Optimizer integrates the two outputs.

Synonym:

Component:

When used:

None

Optimizer

Compile-time

SHOWHEAP ON|OFF

Indicates whether Detector or Extended Detector

displays the LE or PL/I heap storage when a report is

displayed. SAVEHEAP ON is required at execution-time

in order to use SHOWHEAP ON for LE enabled COBOL or

Assembler programs.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time, view-time

SHOWUNMRG ON|OFF|TBLS

Indicates whether to display storage for unmerged data

when symbolic merging has been requested for the

section. If the section is being displayed in the standard

dump format, SHOWUNMRG has no effect.

Specify ALL to always display unmerged data, NONE to

never display unmerged data, or TBLS to display

unmerged data only for table elements after the

OCCURS limit has been reached for each table.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time, view-time

Page 312: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Options Listing

312 User Guide

Option

SNAP 0|nnnnn|ON|OFF

Indicates whether Detector or Extended Detector

generates a Snap report. You must specify the number

of SNAPs to allow using nnnnn. The maximum number

allowed is 32,767.

To use SNAP, you must include a call to CAODSNAP in

your source code wherever you want a snapshot to be

taken. You may use the SNAP feature in the same run

with the INTERCEPTS feature. If your program contains

SNAP calls and you want to run it without them, you do

not need to recompile; simply do not specify the SNAP

option at all.

WARNING! When using SNAP with Extended Detector,

each call to CAODSNAP generates a separate SNAP

report in your central VSAM repository. If your program

contains multiple SNAP calls (or a SNAP call within a

loop), you can write the output to the CAIPRINT DD

alone, to avoid flooding the repository. See the

PRTREPT option.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time

SOURCE|NOSOURCE

Specifies whether Optimizer produces a source listing

on the standard SYSPRINT data set. NOSOURCE

suppresses the source listing. However, the options,

diagnostic messages, compiler statistics, and Optimizer

statistics pages still appear.

Synonym:

Component:

When used:

S or SOU

Optimizer

Compile-time

name

SOURCEMAP|NOSOURCEMAP ( name1,name2,…)

ALL

Specifies the programs by program-ID for which the full

Analyzer source listing prints.

Synonym:

Component:

When used:

None

Analyzer

Report-time

SPM|NOSPM

Specifies whether Optimizer generates the compiler

generated code for restoring the program mask, on

return from external subroutine calls. SPM causes

Optimizer to generate the code. The SPM option's

default value is ordinarily set at installation time and

need not be specified thereafter.

Synonym:

Component:

When used:

None

Optimizer

Compile-time

STATS|NOSTATS

This Optimizer option is normally set at installation. It

indicates whether the Optimizer component updates the

statistics data set with the optimization results.

Synonym:

Component:

When used:

STA

Optimizer

Compile-time

Page 313: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Options Listing

Chapter 11: Using Options 313

Option

STIMERM ON|OFF

Specifies whether Analyzer uses STIMERM instead of

STIMER for time sampling. If XTIME OFF is specified,

this option is ignored.

Synonym:

Component:

When used:

None

Analyzer

Execution-time

SUBRNGCK|NOSUBRNGCK

Specifies whether Optimizer generates code which tests

each subscript or index value before it is used to ensure

that it lies within the range defined for the subscripted

data item. A subscript or index range violation results in

a User 1125 abend from Detector or Extended Detector,

or a S0C1 if neither Detector nor Extended Detector is in

effect at execution-time. Consult the section on

subscript range checking in the chapter ―Using

Detector‖ for details on usage. This option also forces

the DTECT option except when CICS, IDMSDC, or

TPMON is specified at compile-time or EDS=YES is

specified in the defaults.

Synonym:

Component:

When used:

SUB, SSRANGE, or SSR

Detector

Compile-time

SYM|NOSYM

Indicates whether Optimizer writes symbolic

information for the program to the PROTSYM file. If SYM

is specified, a valid initialized PROTSYM file must be

allocated to the PROTSYM DD. Analyzer options

XCOUNT and XTIME force the SYM option.

Synonym:

Component:

When used:

CSL

Optimizer

Compile-time

SYMDSN dsname

Specifies to dynamically allocate the data set name of a

symbolic file for retrieving symbolic information. The

data set can be a PROTSYM file or a CSL library. The

DDNAME used for dynamic allocation is determined by

the value of SYMDD in the installation defaults module

CAOUDFRX. SYMDSN is ignored when that DDNAME is

already allocated. Using SYMDSN does not prevent the

searching of other symbolic files defined in your

installation defaults.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time

TITLE[=xxxxxxxx]|NOTITLE

Specifies to produce a title banner page using the

COBOL program ID or a title name that you specify. The

valid value is eight alphanumeric characters.

Synonym:

Component:

When used:

None

Optimizer

Compile-time

Page 314: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Options Listing

314 User Guide

Option

TPMON|NOTPMON

Specifies to optimize the program for a teleprocessing

environment other than CICS or IDMSDC. This includes

DCI, HOGAN, and SHADOW. TPMON need not be

specified for programs to run in an IBM environment.

This option is designed for programs to be run in

user-written teleprocessing environments or in other

teleprocessing monitors such as INTERCOM.

TPMON suppresses XCOUNT, DTECT, PFLOW, XTIME,

DBGSLEEP, and PARMCHK.

Synonym:

Component:

When used:

TPM

Optimizer

Compile-time

UCB ON|OFF

Prints unit control blocks for all open files in an Abend or

Snap report.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time

USERID 'your text'| 'CA'

Indicates a user identification statement (1-60 bytes).

You can change the default title during product

installation. It is included in all report headings except

for SOURCEMAP and PROCDIV, if a STATS file is not

available.

Synonym:

Component:

When used:

None

Analyzer, Detector

Report-time, Execution-time

VSAMIDX ON|OFF

Prints the VSAM indexed control blocks for the index

portion of an open VSAM file along with the control

blocks for the data portion in an Abend or Snap report.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time

WORKSTOR ALL|NONE

Indicates whether Detector or Extended Detector

displays (ALL) or suppresses (NONE) the program's

Working-Storage Section display.

Synonym:

Component:

When used:

None

Detector, Extended Detector

Execution-time, view-time

WSINIT|NOWSINIT

Initializes all Working-Storage items which are not

initialized by a VALUE clause to X'50'. This option also

forces the DTECT option, except when CICS, IDMSDC,

or TPMON are specified at compile-time, or EDS=YES is

specified in the defaults. For details on usage, see

Detection of Uninitialized Working-Storage (WSINIT) in

the chapter ―Using Detector.‖

Synonym:

Component:

When used:

WSI

Detector, Extended Detector

Compile-time

WTO ON|OFF

Indicates whether to send a message describing the

abend to the job log (using WTO with ROUTCDE=11).

Synonym:

Component:

When used:

None

Extended Detector

Execution-time

Page 315: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Options Listing

Chapter 11: Using Options 315

Option

XCOUNT|NOXCOUNT

Indicates whether to invoke Analyzer's Count feature at

execution-time. If you specify XCOUNT, then MOFFSET

and CSL are forced. If you specify CICS, IDMSDC, or

TPMON then XCOUNT is suppressed.

Synonym:

Component:

When used:

XCO

Analyzer

Compile-time

XCOUNT ON|OFF

Specifies whether to collect count measurement data. If

you specify XCOUNT at compile-time, you can specify

XCOUNT either ON or OFF at execution-time.

Synonym:

Component:

When used:

None

Analyzer

Execution-time

XDATA(your-text)

Specifies default text to insert into the user stamp at

compile-time. When used without user exit CAOPUX01,

this text is inserted into the user stamp in the optimized

object module. When used in conjunction with user exit

CAOPUX01, this text is passed to the user exit in the

text buffer pointed to by R1, and its length is passed in

R0.

Synonym:

Component:

When used:

None

Optimizer

Compile-time

XMMAP|NOXMMAP

Specifies whether Optimizer suppresses data map

information which cannot be merged with the source

listing. An example of data map information which

cannot be merged is COPY...SUPPRESS statements.

XMMAP can only be used when MMAP is specified.

Synonym:

Component:

When used:

XMM, XMDMAP, or XMD

Optimizer

Compile-time

XREF|NOXREF

Specifies whether Optimizer produces a standard

compiler cross-reference of all data items and

procedure-names. XREF is mutually exclusive of CXREF

with CXREF taking precedence

Synonym:

Component:

When used:

X or XRE

Optimizer

Compile-time

XREPORT ON|OFF

If this option is specified at execution-time and Counts

and/or Timings were taken, the Analyzer Reporter is

automatically invoked upon termination of the

application. This occurs for normal terminations, as well

as abending applications.

Note: You can still execute Analyzer Reporter as a

separate job step if you want by supplying a CAITIMSV

DD statement and specifying XREPORT OFF. See the

chapter ―Using Analyzer‖ for more information.

Synonym:

Component:

When used:

None

Analyzer

Execution-time

Page 316: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Options Listing

316 User Guide

Option

XTIME|NOXTIME

Indicates whether to invoke the Analyzer's Timings

feature at execution-time. If you specify XTIME, then

MOFFSET and CSL are forced. If you specify CICS,

IDMSDC, or TPMON, then XTIME is suppressed.

Synonym:

Component:

When used:

XTI

Analyzer

Compile-time

XTIME ON|FIRST|OFF

Using this option at execution-time takes timings during

the execution of the application program. You can

specify XTIME at execution-time in one of the following

ways:

ON (the default) initiates timings at the start of the first

COBOL program which has been optimized with XTIME.

FIRST starts timings at the first call to the Execution

Monitor from any program in the application. The

Execution Monitor is automatically invoked during

execution from any program compiled with DTECT,

FDCHECK, PFLOW, SUBRNGCK, WSINIT, XCOUNT, or

XTIME.

OFF indicates that no timings are to be taken.

Synonym:

Component:

When used:

None

Analyzer

Execution-time

Page 317: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Appendix A: Data Sets and Block Sizes 317

Appendix A: Data Sets and Block Sizes

This appendix specifies data sets, block sizes, and device types used by

CA Optimizer/II. The following are the types of DDs:

■ Compile-time DDs

■ Execution-time DD

Compile-time DDs

This section provides the list of compile-time DDs.

DD Statement Description

SYSUT1

SYSUT2

SYSUT3

SYSUT4

SYSUT5

SYSUT6

SYSUT7

CAIUT1

CAIUT2

Block size is automatically determined

based on the amount of available

storage and the device type.

CA Optimizer/II controls the block

size.

CAISTATS Block size is fixed at 136 and must not

be altered.

Execution-time DD

This section provides the execution-time DD, CAITIMSV.

CAITIMSV

Default block size is 1020. You can specify any multiple of 20. If you specify

an invalid number, it is rounded down to a multiple of 20 with 20 being the

smallest block size allowed.

Note: Analyzer Reporter accepts concatenated CAITIMSV files with mixed

block sizes in any order.

Page 318: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel
Page 319: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Appendix B: Troubleshooting 319

Appendix B: Troubleshooting

This appendix contains information about identifying and resolving problems.

Collect Diagnostic Data

The following section helps yo categorize the problem your site has encountered.

Then, follow the instructions in each section to generate useful diagnostic data.

All Problems (except EOS)

Gather the listing of the program compiled/optimized with the following options

(along with any others used at your site):

For OS/VS COBOL include:

■ PMAP

■ MDMAP

■ CSXREF

■ BMAP

For COBOL II and above include:

■ LIST

■ MMAP

■ MXREF

■ BLIST

The full IBM system SYSUDUMP if an abend has occurred. Although there are

other products that, like Detector, produce very neat, easy to read, condensed

dumps appropriate for debugging user programs, they generally do not contain

enough information for our purposes.

All the JCL, JOBLOG information, and messages for the job that ended in error.

If an abend occurred in the CA Optimizer/II RTL or symbolic support is incorrect

for Analyzer or Detector, print the member listing from the PROTSYM or CSL file.

See examples later in this chapter for more information.

Page 320: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Collect Diagnostic Data

320 User Guide

The SYSPRINT output from execution of CAOUOPT, a utility program which

reports the installation options for CA Optimizer/II. Many problems can be

solved simply through inspection of the output from CAOUOPTS. Procedure

CAIOPTNS has been provided in CAI.CAIPROC for execution of CAOUOPTS. For

more information about this utility, see Options Summary in the chapter

"Utilities."

You may occasionally encounter a problem involving a COBOL program

purchased from another vendor that is considered proprietary. While you are

usually allowed to send the source listing on paper, you may not be permitted to

send it on tape. Please check. Arrangements can usually be made, including the

signing of nondisclosure agreements by CA.

Compile-/Optimize- time problems

Check all diagnostic information produced by Optimizer, such as MGT

SNAPSHOT, LEXICAL TEXT DISPLAY, PHASE-B SNAP. This information is only

produced if Optimizer abends; under normal circumstances, you do not see it.

EOS Problems

For a detailed discussion of the EOS diagnostic facilities, see the chapter "EOS

Usage Considerations" in the Installation Guide.

Gather:

The CICS transaction dump if an abend has occurred. Most EOS problems must

be resolved using a full CICS transaction dump. Other diagnostic displays may be

useful but generally do not contain enough information for our purposes.

If requested by CA Technical Support personnel, a dump of the EOS trace table.

The procedure for using the EOS trace facility and obtaining a dump of the trace

table is described in the chapter "EOS Usage Considerations".

The version/release, and modification level of the COBOL II or LE runtime system

being used in the CICS region.

The version/release, and modification level of CICS.

■ LIST

■ BLIST

The listing from an execution of the CAOUOPT utility.

Page 321: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Collect Diagnostic Data

Appendix B: Troubleshooting 321

Execution-time problems (excluding EOS)

Gather the following information on the execution environment:

In an Online Data Communication environment, the name of the package (if it is

not an in-house developed product), the version/release and maintenance level,

and a vendor contact, if available.

Non-COBOL programs being invoked by the program. Assembler language

subroutines may be of interest to us in resolving the problem. Have the source

available.

The CAIPRINT report, if applicable.

Formatting problems

Gather the following documentation:

Print the member listing from the PROTSYM or CSL file. See examples later in

this appendix for more information. For some problems, you may also be

required to unload one or more members from a PROTSYM file using the batch

utility IN25UTIL. For more information about unloading members with IN25UTIL,

see the Symbolic Guide.

Use IDCAMS REPRO to create a sequential file of your centra l VSAM repository.

(If the repository is very large or you only want to send the data for a single

report, you can copy the report to a temporary repository and REPRO that file.)

See Copying Repository Data for Diagnostic Purposes later in this chapter.

For clients that do not use the repository, CA Technical Support may require the

unformatted data used to generate the report. To provide that data, you will

need to add the following DD to your execution time JCL and rerun the job:

//CAIPRTWK DD DSN=data-set-name,DISP=(NEW,CATLG,CATLG),

// UNIT=SYSDA,SPACE=(CYL,(1,1)),

// DCB=(LRECL=133,BLKSIZE=13300,RECFM=FBA)

The data set can then be sent to CA as a BINARY file.

Page 322: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Interpret Diagnostic Data

322 User Guide

Symbolic Postprocessors

Review all output from the postprocessor for error messages. If any messages

are found, locate the message in the Symbolic Guide, then review the reason and

suggested action(s).

Gather the following documentation:

All output from the postprocessor

The listing file used as input to the postprocessor

Interpret Diagnostic Data

When you have collected the specified diagnostic data, write down your answers

to the following questions:

1. What was the sequence of events prior to the error condition?

2. What circumstances existed when the problem occurred and what action did

you take?

3. Has this situation occurred before? What was different then?

4. Did the problem occur after a particular PTF was applied or after a new

version of the software was installed?

5. Have you recently installed a new version of the operating system or the

COBOL compiler?

6. Has the hardware configuration (tape drives, disk drives, and so forth)

changed?

From your response to these questions and the diagnostic data, try to identify

the cause and resolve the problem.

Page 323: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Print a Symbolic File Member for Diagnostic Purposes

Appendix B: Troubleshooting 323

Print a Symbolic File Member for Diagnostic Purposes

There are two ways to print a symbolic file member or symbolic file directory.

Either method is adequate for diagnostic purposes.

Use the Viewer

Start the CA Optimizer/II Repository Viewer the way you normally do, then use

the SYM primary command to display the Symbolic Utilities menu. Select Option

1 (List) and enter the name of your PROTSYM or CSL file in the field provided.

Press Enter to list the contents of your symbolic file, then use the PRINT primary

command to print a copy of the display to a printer, file, or other desired

destination.

Once the directory is printed, enter the p line command next to any member to

print that member.

Use the Batch Utilities

Sample JCL is provided for three utility programs that can be used to display the

contents of your symbolic files:

■ CAOUCSLD—Use this program to generate a member list for your CSL

library.

■ CAORMAIN—Use the PRINTCSL function of CAORMAIN to print a member

from your CSL library.

■ IN25UTIL—Use the REPORT function of IN25UTIL to generate a list of

symbolic members in your PROTSYM, and use the PRINT function to print a

symbolic listing for any member.

Copy Repository Data for Diagnostic Purposes

CA Technical Support may require the data for one or more reports in your

CAIPRINT repository for diagnostic purposes. To provide that data, you will need

to create a sequential data set from your VSAM repository.

If your CAIPRINT repository is very large, or you only want to send the data for

selected reports, you can use the following steps to: 1) create a temporary VSAM

repository, 2) copy the required reports to that repository, and 3) create a

sequential data set from the temporary repository. Otherwise, you can skip

directly to "Creating a Sequential Data Set from a VSAM Repository."

Page 324: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Copy Repository Data for Diagnostic Purposes

324 User Guide

Create a Temporary VSAM Repository

Member RX85REPO in the CAI.CARXJCL library contains JCL to create and

initialize a CAIPRINT repository.

To create a temporary VSAM Repository

1. Make a copy of the JCL member and modify the appropriate fields, such as

the data set name, space, and volume. (Be sure to change the data set name

in both the CLUSTER and DATA definitions.)

2. Submit the JCL to create your temporary repository.

Copy a Report to a Temporary VSAM Repository

Use the COPY command of the CAIPRINT Repository Utility, CAOUPRTU, to copy

one or more reports from your central VSAM repository to the temporary

repository you just created.

For example, the following JCL copies the report for job TESTJOB from the

central VSAM repository (CAI.PRTLIB) to a temporary VSAM repository

(TEMP.PRTLIB).

// EXEC CAIPRTU

//PRTU.SYSIN DD *

ODSN CAI.PRTLIB

DSN TEMP.PRTLIB

COPY JOB EQ TESTJOB

/*

Note: If there is more than one report in the central VSAM repository with a job

name of TESTJOB, the example above copies all of the reports by that name.

Create a Sequential Data Set from a VSAM Repository

Use IDCAMS REPRO to create a sequential file from your VSAM repository. For

example, the following JCL creates a sequential file (TEMP.PRTLIB.BACKUP) from

a temporary VSAM repository (TEMP.PRTLIB).

//REPRO EXEC PGM=IDCAMS

//PRTLIB DD DSN=TEMP.PRTLIB,DISP=SHR

//BACKUP DD DSN=TEMP.PRTLIB.BACKUP,DISP=(NEW,CATLG),

// UNIT=SYSDA,VOL=SER=vvvvvv,SPACE=(CYL,(3,3),RLSE),

// DCB=(RECFM=FB,LRECL=4085,BLKSIZE=4085)

//SYSPRINT DD SYSOUT=*

//SYSIN DD *

REPRO INFILE(PRTLIB) OFILE(BACKUP)

/*

Page 325: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Print the TIMSV File for Diagnostic Purposes

Appendix B: Troubleshooting 325

Print the TIMSV File for Diagnostic Purposes

The CAOUTSVD utility provides you with a facility to examine the contents of any

TIMSV file produced by Analyzer. The TIMSV file is used by Analyzer Reporter to

provide you with a hierarchical set of reports analyzing the CPU time distribution

or statement and paragraph counts in the application.

If for some reason Analyzer Reporter fails to generate the reports or generates

them incorrectly, the TIMSV file can be a valuable tool for diagnosing the error.

JCL to invoke the utility can be found in CAI.CAIPROC(CAOUTSVD).

Page 326: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Print the TIMSV File for Diagnostic Purposes

326 User Guide

Sample output from this utility is shown next:

COMPUTER ASSOC. - MAPPER II - EXTRACTOR FILE FORMATTED PRINT UTILITY

----- ----------- - ------ -- - --------- ---- --------- ----- -------

0-HEADER 86248 12.01.00.33(4,326,033 ) 1=MFT MDL=381 SYS=038J 0 7-JOBNME 80 GRJOB GO 0000

7-JOBNME 40 STEP1 0000

B-MAPPER CNT=10,000MTIME=0 XTIME=0 INTVL=384 REL=51 TICK=128 MINTVL=128 OPT=00 2-MODULE 1 *SYSTEM* SIZE=147,483,64F=00 00000000

-------- - -------- ------------------- --------

3-CSECT 1 *SYSTEM* SIZE=16,777,21 LOC= 0 SEGNO=1 SEGUP=0 F=00 .

.

. 2-MODULE 6 *REGION* SIZE=10,465,280F=00 00000000

-------- - -------- ------------------- --------

3-CSECT 6 *REGION* SIZE=10,465,28 LOC= 0 SEGNO=1 SEGUP=0 F=00 4-SAMPLE 6 E00058001014 * 4E910 * 060050001014 OPT=00 F=00

4-SAMPLE 4 FC73D34CE7AC * 20F0 * FB76D33CD34D OPT=04 F=00 -JQA

4-SAMPLE 4 F2F5D3448610 * 20E0 * FA33D350D360 OPT=04 F=00 -JQA 4-SAMPLE 4 F855EF7AD33E * 2120 * 18424A40862E OPT=04 F=00 -JQA

4-SAMPLE 4 FA33D350D360 * 20E6 * 18EF1AE8FC73 OPT=04 F=00 -JQA

1-TIMING CNT=20 WEIGHT=384 NEXT=384 MTIME=0 RTIME=11,500,854 4-SAMPLE 4 FA86D33BD34D * 2116 * 18E01AE8F855 OPT=04 F=00 -JQA

.

.

.

** CTF **0 . . . 4 . . . 8 . . . C . . . 0 . . . (0...4...8...C...0...)

81000000 00000000 00000000 00000000 00000000 ( )

** CTF **0 . . . 4 . . . 8 . . . C . . . 0 . . . (0...4...8...C...0...)

84DC0000 00000000 00000000 00002710 00000000 ( )

8-EXCPS 326 7 3030200E PGM=*.DD

8-EXCPS 326 18 3030200E STEPLIB

.

. .

8-EXCPS 323 1,055 3030200E CAITIMSV

END OF INPUT FILE **

VALUE OF SEARCH IS 0C 9-LLS 650-JQA

**RECORD COUNTS BY TYPE**

0 1 HEADER

1 78 TIMING .

.

. 256 90 ** CTF **

1,057 **TOTAL

Page 327: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Glossary 327

Glossary

Analyzer

An CA Optimizer/II component that processes the execution-time data gathered

in the CAITIMSV file and produces a variety of useful reports for performance

analysis and quality assurance. One of the reports is a copy of your source listing

displaying the number of times each statement was executed and the amount of

CPU time each statement required.

base locator cell

A one-word entry in the TGT which contains the address of a portion of Data

Division. A base locator is assigned to each file, each 01 item in the Linkage

Section, and to Working-Storage. If any one of these areas is greater than 4096

bytes, additional base locators will be allocated. BLWs are used for

Working-Storage, BLFs are used for files, and BLLs are used for the Linkage

Section.

BLF

See base locator cell.

BLL

See base locator cell.

BLW

See base locator cell.

bootstrap

An initialization routine which is executed upon entry to a COBOL II or an

optimized COBOL II program. For optimized COBOL II programs, two bootstraps

are executed, one for COBOL and one for Optimizer. These bootstrap routines

are link-edited together with the COBOL program.

CBL

See constant base locator.

compile/optimize-time

The phase of program development when the COBOL compiler and

CA Optimizer/II are invoked together to translate and optimize the program (as

opposed to execution-time, when the program is executed).

constant base locator

For optimized programs, a one-word entry in the PGT that contains the address

of a portion of the PGT if the PGT is greater than 4096 bytes. A CBL cell is

assigned for each 4K portion of the PGT starting 4K from the beginning of the

PGT. The last CBL may be assigned for less than a 4K portion.

Page 328: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

328 User Guide

control parameters/options

Parameters or options which are generally governed by their installation defaults

and will only need to be specified in special cases.

CSECT

The control section, the smallest unit of code that can be assembled or compiled.

CSECTs are translated into object modules and combined with other CSECTs to

form load modules.

CSL

A compressed copy of the optimized COBOL source listing with enhancements.

The CSL is created and saved by the Optimizer for use by Analyzer and Detector.

default parameter/option

A parameter or option which has already been set for the system according to

the way it is assumed to be most generally used. You may change any default

option to your own specifications.

default parameter/option (fixed)

A parameter or option that has already been set for the system according to the

way it is to be used. You cannot override a fixed default option.

Detector

A feature of CA Optimizer/II which is used to debug COBOL programs in the

production and test environments. Detector prints out reports on diagnostics,

key storage data, snapshots of data areas, and data and decimal divide

exceptions.

diagnostic

A message which is displayed and/or printed out by the compiler or Optimizer

when it detects an error in your program.

DSECT

A section of an Assembler program used for mapping data.

dump

A hexadecimal display of the information currently in memory.

Execution Monitor

An CA Optimizer/II component which becomes a logical subroutine to a COBOL

program whenever Detector or Analyzer features are used. The Execution

Monitor provides the foundation for all runtime debugging and timing facilities. It

monitors the entry and exit from all COBOL programs in the run unit and

provides the logic for processing certain system events related to timings,

interrupts, and a formatted abend report by Detector.

Page 329: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Glossary 329

execution-time

The point at which your program is run or tested (as opposed to

compile/optimize-time when the program is compiled and CA-OPTIMIZEd). This

term is synonymous with ―runtime.‖

file

An ordered collection of data stored on an auxiliary storage device.

fixed parameter/option

A parameter or option that has been set at installation and that may not be

altered by the programmer at compile/optimize-time or at runtime.

forced parameter/option

A parameter or option that has been set or reset by CA Optimizer/II because of

a conflict with another requested option.

intercept

An CA Optimizer/II feature that provides for the interception of a program check

violation as the result of a data or decimal divide exception. Rather than abend,

the program is restarted with a value of 1 to circumvent the ―bad‖ data situation

during testing.

memory map

A breakdown of the global tables within a COBOL program and their

corresponding program locations. This can be a useful debugging tool. The

memory maps are displayed in full by Optimizer with the object listing.

object code

The machine language output by the compile/optimize step after it has

translated your source program.

optimize time

The time it takes to execute the compile and optimize step.

Optimizer

The Optimizer is a component of CA Optimizer/II which reduces the size and

execution-time of your program's object code by eliminating redundant machine

instructions without changing the processing or altering user-defined data areas.

Optimizer Stamp

A short section of each optimized COBOL program located immediately before

the Program Global Table (PGT). It identifies the CA Optimizer/II product code,

release number, data and time of compilation, and other information related to

the compilation.

option

A variable which is assigned a constant value at runtime or report-time for use in

controlling Analyzer and/or Detector.

Page 330: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

330 User Guide

options page

The first page of the Optimizer Enhanced Source Listing which identifies the

compiler version and release number, compilation date and time of optimization,

Optimizer release number, selected and default options, and customer name and

location.

PBL

See procedure base locator.

PGT

See Program Global Table.

Procedure Base Locator

For optimized programs, a one-word entry in the PGT which contains the address

of a portion of the executable code in the Procedure Division. The portion of code

can be a maximum of 8 KB to 12 KB depending on the size of the program and

the options used.

procedure map

The procedure map printed out by Optimizer contains the following information

about your COBOL program: block cross reference data, base register

assignments, interleaved source code, and object code.

Program Global Table (PGT)

A section of a COBOL program that contains constants, literals, and certain base

locators that are used during program execution. The areas in the PGT will not be

modified when the program is executed.

PROTSYM

A VSAM relative-record data set (RRDS) used to store symbolic information used

for reporting.

report-time

The phase during which the Analyzer Reporter reports on the counts and/or

timings data gathered while the application was running. Report-time can occur

automatically after normal or abnormal termination of the application in the

same job step or as a separate job step.

run unit

A hierarchy of calling and called COBOL programs, the first entered being the

―main‖ program, and the hierarchy having the property that if any program in it

executes a STOP RUN, control passes to the caller of the ―main‖ program.

runtime

See execution-time.

Page 331: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Glossary 331

signature code

The COBOL II signature code is a short section of code and data located at the

start of the program. It contains information about the compilation and pointers

to specific tables and addresses within the program.

snapshot

A report about your COBOL program which is output each time a SNAP is

invoked. A snapshot consists of information about your program's address and

registers, contents of the file, working storage and linkage sections, memory

map, PERFORM Address Analysis, and the last nnnnn paragraphs executed prior

to the SNAP call.

sort

To place records in a predetermined sequence, such as in alphabetical order, by

means of a sort key (a field or a hierarchy of fields) within the record.

Task Global Table (TGT)

A section of a COBOL program that contains work areas, information, and base

locators that are used during execution of the program. Some areas in the TGT

can be modified when the program is executed.

text deck

See object code.

TGT

See Task Global Table.

timings

Data captured during application program execution using a technique called

time sampling. This occurs when the XTIME function is enabled. The timing data

is formatted by Analyzer into reports that indicate which parts of your program

use the most CPU time.

Page 332: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel
Page 333: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Index 333

Index

A

Abend • 59, 60, 68, 72, 73, 82, 83, 89, 135, 203

Assembler reports • 89

cause of • 135

COBOL reports • 73

interception and correction • 60

PL/I reports • 83

report • 59, 60, 68, 72, 82

debugging • 59

description • 68

locating instruction address • 68

module call sequence • 72

PFLOW • 82

tools • 60

statement location • 203

ACB • 297

VSAM control block • 297

ACTONLY Detector option • 297

Add to PROTSYM panel • 184

Address • 42, 68, 82

control return • 42

entry point • 68

MLIST • 82

MOFFSET • 82

AllFusion CAOptimizer/II • 14

benefits • 14

AllFusion CA-Optimizer/II • 245

AllFusion CA-Optimizer/II

load library • 245

ALTERed GO TO Table • 42

locations • 42

report description • 42

VN pointer • 42

AMB • 297

VSAM control block • 297

AMBL • 297

VSAM control block • 297

Analyzer • 203, 206, 207, 208, 209, 211, 226,

228, 231, 232, 233, 234, 236, 289, 294, 295,

296, 297

available options • 289

compile-time options • 294, 297

chart • 294

PROCDIV • 297

XCOUNT • 297

XTIME • 297

execution-time options • 294, 297

BINDER • 297

chart • 294

STIMERM • 297

XCOUNT • 297

XREPORT • 297

XTIME • 297

JCL • 208, 209

Optimizer component • 208

Optimizer options • 297

CNTXREF • 297

options • 206, 294, 295, 297

BINDER • 297

CNTXREF • 206

execution-time • 295

INSTRMAP • 297

NOSOURCEMAP ALL • 206

report-time guidelines • 295

SOURCEMAP • 297

STIMERM • 294, 297

USERID • 297

with Detector options • 295

XCOUNT • 206, 294

XREPORT • 206, 295, 297

XTIME • 206, 294, 297

overview • 203

Reporter • 234

execution considerations • 234

reports • 211, 226, 228

CAIOPTS File Processing • 211

Execution count cross-reference • 226

INSTRMAP • 228

report-time options • 207, 294, 296, 297

chart • 294

INSTRMAP • 297

SOURCEMAP • 296, 297

USERID • 207, 297

XREPORT • 207

source listing data • 203

usage considerations • 231, 232, 233, 236

counts • 231

multimodule environments • 232

multirun reports • 233

restrictions • 236

timings • 232, 233

Page 334: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

334 User Guide

Analyzer options • 297

PROCDIV • 297

ASMINST • 297

abending assembler instruction • 297

Assembler reports • 89

B

background processing • 245

Base • 31, 55

locators • 31

unreferenced cells • 31

register assignments • 55

BINDER • 295, 297

Analyzer option • 295

execution-time • 295

binder API function calls • 297

BINFRMT option • 297

BLF • 55, 136

base locators • 55

cells with SUBRNGCK • 136

BLL • 55, 136

base locators • 55

cells with SUBRNGCK • 136

BLLMAX option • 297

BLOCKS • 297

Detector option • 297

execution-time • 297

BLV base locators • 55

BLW • 55, 136

base locators • 55

cells with SUBRNGCK • 136

BRANCH-OUT-TO-PERFORM RANGE • 42

Browse CA-Optimizer/II Errors panel • 249

Browse Output panel • 248

C

CA IDMS/DB report • 115

example • 115

CAIARII PROC • 210

CAICSLD • 275

CAILPAQ • 271

CAIMRSII • 262

CAIOPTII • 20, 64, 211

execute Optimizer • 20, 64

FDCHECK • 64

procedure • 20

SUBRNGCK • 64

job step • 211

CAIOPTS • 125, 158, 210, 212, 289

Analyzer and Detector Example • 210

DD statement • 289

card-image data set • 289

file processing report • 125, 212

CAIPRINT - printed output statement • 209

CAIPRINT Repository utility • 277

CAIPRINT Repository ViewerSee Repository

Viewer • 151

CAISTATS • 268

definition • 268

CAISTRII • 268

CAISYM • 210

JCL • 210

CAITIMSV • 209, 210

definition • 209

execution JCL • 209, 210

CAODSNAP • 20, 66

making a SNAP call • 66

SNAP routine • 20

CAOUCSLD • 275, 323

printing CSL library members • 323

CAOUDFRX • 151, 187

CAOULPAQ • 271

CAOUMRS • 262

CAOUOPTS • 273

CAOUPRTU • 277

CAOUSRPT - Statistics Report • 268

CAOUTSVD • 325

analyzing the TIMSV file • 325

sample output • 325

Cause of abend • 135

CBL base locator • 55

CEEDUMP • 297

LE environment • 297

CICS • 19, 47, 236, 297

flow-of-control paths • 47

Optimizer compile-time options • 19, 297

restrictions • 236

CLIST compile-time option • 19

CMS - Analyzer restriction • 236

CNTXREF • 206, 226, 296

Analyzer options • 206, 226, 296

execution-time • 206

report-time • 226, 296

COBOL source listing • 296

CNTXREF option • 297

COBCC compile-time option • 297

COBOL • 54, 78, 217, 256, 258, 259, 263, 265,

266

Page 335: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Index 335

compilers • 263

CSECT • 217, 263, 265, 266

Analyzer Module Summary • 217

Detailed Report • 263

Load Library Analysis Detailed Report • 263

MRS • 266

Summary Report • 265

for MVS and VM • 78

DSA • 78

language HELP • 256

language HELP for HELP • 258

line number • 54

reserved word HELP • 258

reserved word syntax • 259

topic HELP • 258

verb • 54

COBOL and C usage considerations • 240

COBOL CSECTs • 262

MRS • 262

COBOL for OS/390 and VM • 78

COBOL II • 24, 289, 292, 293, 294

combining options with Analyzer options •

294

options • 24, 289, 292, 293

in effect • 24

processing precedence • 289

with Detector options • 292, 293

COBOL Language HELP panel • 256

COBOL load library • 245

COBOL reports • 73

Codes • 27, 31

MMAP • 31

MXREF • 27

Coding • 207, 289

options • 289

rules • 207

combining options • 289, 292, 293, 294, 295

COBOL II with Analyzer • 294

Detector • 292, 293, 295

and AllFusion CA-Optimizer/II • 292, 293

and COBOL II • 292, 293

with Analyzer options • 295

Optimizer with COBOL II • 289

commands • 153, 155, 156, 166, 167, 172, 173,

175, 188, 255

HELP • 255

KEEP • 172

line • 156, 167

LOCATE • 175

NOTES • 173

primary • 155, 166

Repository Viewer • 188

SETINDEX • 153

TAG • 175

Comparison - NOOPT • 50

Compiler • 19, 49, 52, 53

data map (MAP) • 19, 53

merged data map • 19

source listing • 52

statistics report • 49

compile-time • 18, 26, 27, 31, 35, 37, 54, 55,

60, 64, 226, 285, 292, 297

Optimizer options • 297

CICS • 297

COBCC • 297

COPT • 297

CXREF • 297

DECK • 297

DTECT • 297

IDMSDC • 297

LINECOUNT • 297

LOWER • 297

MAP • 297

MMAP • 297

MOFFSET • 297

NOCXREF • 297

OPTRC • 297

SOURCE • 297

SPM • 297

STATS • 297

TITLE • 297

TPMON • 297

XDATA • 297

XMMAP • 297

XREF • 297

options • 18, 26, 27, 31, 35, 37, 54, 55, 60,

64, 226, 292, 297

CICS • 18, 297

CLIST • 18

COPT • 18

CXREF • 18, 37

DBGSLEEP • 60

DCRDISP • 18, 297

DECK • 18

DMAP • 18

FDCHECK • 60

IDMSDC • 18

INTERTST • 18

Page 336: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

336 User Guide

JCL • 64

LIST • 18, 55

listing • 292

MAP • 18

MDMAP • 18

MLIST • 18

MMAP • 18, 31

MOFFSET • 18, 35

MXREF • 18, 26

NOCICS • 297

NOCOPT • 18

NOSOURCE • 18

NUM • 226

OBJECT • 18

OFFSET • 18, 54

OPTRC • 18, 35

PARMCHK • 60

PFLOW • 60

PMAP • 18

SELECT • 18

SUBRNGCK • 60

SYM • 18

TPMON • 18

WSINIT • 60

XREF • 18, 27

options summary • 18

overview • 285

Condensed • 37, 54

Cross-Reference Report (CXREF) • 37

OPTIMIZEd object code listing (OFFSET) • 54

Control • 42

return address • 42

COPT • 297

Optimizer option • 297

Count and Timing Report • 220

example • 220

field descriptions • 220

Counts • 203, 231

CPP • 297

compile-time options • 297

DCRDISP • 297

options • 297

DCRDISP • 297

CPU • 50, 234

performance • 50

time analysis • 234

Cross-Reference • 19, 55, 297

CXREF • 19

debugging • 55

documentation • 55

MXREF • 19

XREF • 19, 297

CSECT • 228, 265, 296

COBOL • 265

INSTRMAP • 228, 296

non-COBOL • 265

CSL • 59, 275, 323

Detector reports • 59

printing • 323

summary • 275

CSL Directory selection list panel • 178

CSL library • 323

member information • 323

CSL Summary report • 275

CXREF • 19, 27, 37, 297

and MXREF • 27

Optimizer compile-time option • 19

Optimizer option • 297

sample report • 37

D

data bytes • 267

Data Division • 26, 27, 31, 53, 74, 128

displays • 74, 128

dumped • 128

merged • 128

MMAP contents • 31

Optimizer option • 26, 31, 53

MAP • 53

MMAP • 31

MXREF • 26

Sample Listing • 27, 31

MMAP • 31

MXREF • 27

Data Management Control Block(s) • 60, 292

BLOCKS • 292

DCB • 292

DEB • 292

IOB • 292

report customization • 60

UCB • 292

data set • 139, 210

counts and timings • 210

EXECDAT • 210

dynamic allocation • 139

Data Size • 263

DB2 • 107

report • 107

Page 337: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Index 337

example • 107

DB2ACTIV • 297

summary information • 297

DBGAWAKE • 60, 134

debugging facilities • 134

Detector option • 60

execution-time • 60

DBGAWAKE option • 297

DBGSLEEP • 60, 134

debugging facilities • 134

Detector option • 60

compile-time • 60

DBGSLEEP option • 297

DCB Detector • 66, 297

Abend report • 66

execution-time option • 297

DCRDISP • 19, 31, 297

decimal byte displacement • 297

merged data map contents • 31

Optimizer compile-time option • 19

DD • 209, 234

statement • 209, 234

DEB - Detector execution-time option • 297

Debugging facility • 60, 134

Detector • 60, 134

DECK Optimizer compile-time option • 19, 297

Defaulted Options panel • 247

Delete CA-Optimizer/II Listing Data Sets panel •

251

deleting • 157, 180

member from symbolic file • 180

reports • 157

Detector • 59, 60, 64, 66, 71, 74, 99, 107, 115,

121, 128, 134, 138, 139, 142, 148, 151, 289,

295, 297

available options • 289

compile-time options • 60, 297

DBGAWAKE • 60

DBGSLEEP • 60, 297

FDCHECK • 60, 297

INTERCEPTS • 60

listing • 60

PARMCHK • 60

PFLOW • 60

SNAP • 60

SUBRNGCK • 60, 297

WSINIT • 60

Debugging facilities • 134, 138, 139

DBGAWAKE • 134

DBGSLEEP • 134

INTERCEPTS • 139

PFLOW • 138

SNAP • 138

diagnostics - Snap report • 59

execution-time options • 60, 297

ACB • 297

ACTONLY • 297

AMB • 297

AMBL • 297

BINFRMT • 297

BLOCKS • 297

CEEDUMP • 297

DB2ACTIV • 297

DBGAWAKE • 297

INTERCEPTS • 297

INTERTST • 297

IOB • 297

LINKAGE • 297

listing • 60

MEMMAP • 297

PRTLIB • 297

PRTREPT • 297

SYMDSN • 297

UCB • 297

VSAMIDX • 297

facilities • 60

hierarchy of information • 148

JCL compile-time example • 64

options • 295, 297

ACB • 297

ACTONLY • 297

AMB • 297

AMBL • 297

ASMINST • 297

BINFRMT • 297

BLOCKS • 297

CEEDUMP • 297

DB2ACTIV • 297

DBGAWAKE • 297

DBGSLEEP • 297

DUMP • 297

FDCHECK • 297

GRPADDR • 297

INTERCEPTS • 297

INTERTST • 297

IOB • 297

LINKAGE • 297

MEMMAP • 297

Page 338: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

338 User Guide

MERGEDB • 297

MRGAUTO • 297

MRGBASED • 297

MRGCNTLD • 297

MRGDATA • 297

MRGDSECT • 297

MRGFILES • 297

MRGLINK • 297

MRGLOCAL • 297

MRGPARMS • 297

MRGSTAT • 297

MRGWORK • 297

MXREF • 297

OBJECT • 297

OCCURS • 297

OFFSET • 297

PRTLIB • 297

PRTREPT • 297

SUBRNGCK • 297

SYMDSN • 297

with Analyzer options • 295

reports • 66, 71, 74, 99, 107, 115, 121, 128

abend • 66

CA IDMS/DB • 115

data division displays • 74

DB2 • 107

IMS • 99

instruction analysis • 71

intercepts • 66, 121

merged example • 128

SNAP • 66

Repository Viewer • 151

usage considerations • 139, 142

dynamic allocation • 139

restrictions • 142

with IMS • 139

Diagnostic • 49, 59

messages • 49

reports • 59

Director control routine • 18

Displacement • 31

decimal • 31

hexadecimal • 31

Distinctive counts • 231

DMAP compile-time option • 19

DSA • 41, 66, 78

memory map • 41, 78

memory mapall • 66

DTECT option • 297

DUMP • 297

Detector option • 297

dynamic allocation • 139

Dynamic Save Area memory map (DSA) • 41

E

electronic notepad • 158, 173

using • 173

Enhanced source listing • 17, 23, 24, 26

Merged Cross-Reference • 26

Options Page • 24

report • 17, 23

features • 17

sequence • 23

environments • 143

Extended Detector • 143

EOS • 237, 238, 239, 240, 241

abend report • 239

COBOL and C usage considerations • 240

EOS COBOL and non-EOS COBOL usage

considerations • 240

execution-time abends • 239

execution-time messages • 238

execution-time options • 237

system requirements • 241

EOS (Extended Optimization Support) for

CICSSee EOS • 237

Establishing option values • 287

EXCP counts • 215

Execute Optimized Program panel • 252

Execution Monitor • 66, 125, 126, 139, 212,

226, 232

Analyzer Reporter • 226

CNTXREF • 226

producing application timings • 232

reports • 66, 125, 126, 212

description • 66

file processing • 125, 212

summary • 126

summary report field descriptions • 126

using dynamic allocation facilities • 139

Execution statistics - sample numbers • 233

execution-time • 17, 60, 64, 121, 289, 297

coding options • 289

Detector options • 297

UCB • 297

VSAMIDX • 297

Execution Monitor Options • 297

LINECOUNT • 297

Page 339: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Index 339

Optimizer options • 297

REGMAX • 297

RPL • 297

options • 60, 64, 121, 297

ACB • 297

ACTONLY • 297

AMB • 297

AMBL • 297

ASMINST • 297

BINDER • 297

BINFRMT • 297

BLLMAX • 297

BLOCKS • 297

CEEDUMP • 297

DBGAWAKE • 60

INTERCEPTS • 60, 121

JCL • 64

LOGROS • 297

LOGTSO • 297

LOGUNI • 297

MERGDB • 297

MRGAUTO • 297

MRGBASED • 297

MRGCNTLD • 297

MRGDATA • 297

MRGDSECT • 297

MRGFILES • 297

MRGLINK • 297

MRGLOCAL • 297

MRGPARMS • 297

MRGSTAT • 297

MRGWORK • 297

MXREF • 297

OBJECT • 297

OCCURS • 297

OFFSET • 297

PARMCHK • 60

PFLOW • 60

RPTSZ80 • 297

SNAP • 60

STIMERM • 297

WTO • 297

overview • 289

reduction • 17

Exits • 35, 42

fall-through • 42

PERFORM range • 35

Extended Detector • 141, 143, 145, 146, 148,

149, 151, 292, 297

compile-time options • 292

listing • 292

environments • 143

production • 143

test • 143

execution-time options • 292, 297

BLLMAX • 297

listing • 292

LOGROS • 297

LOGTSO • 297

LOGUNI • 297

RPTSZ80 • 297

WTO • 297

hierarchy of information • 141

JCL Requirements • 145

options • 297

BLLMAX • 297

LOGROS • 297

LOGTSO • 297

LOGUNI • 297

RPTSZ80 • 297

WTO • 297

reports • 143, 146

abend • 143

for COBOL programs • 146

for non-COBOL programs • 146

reports, suppressing • 146

Repository Viewer • 151

usage considerations • 149

with LE • 148

Extended Detector Options • 292

Data Management control blocks • 292

BLOCKS • 292

DCB • 292

DEB • 292

IOB • 292

UCB • 292

Log and notify options • 292

LOGROS • 292

LOGTSO • 292

LOGUNI • 292

WTO • 292

report control • 292

ASMINST • 292

BLLMAX • 292

COBONLY • 292

CSLDSN • 292

DB2ACTIV • 292

DUMP • 292

Page 340: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

340 User Guide

FILES • 292

FIRST128 • 292

GRPADDR • 292

LINECNT • 292

LINKAGE • 292

LOCALSTOR • 292

MEMMAP • 292

MERGEDB • 292

MRGDATA • 292

MRGFILES • 292

MRGLINK • 292

MRGLOCAL • 292

MRGWORK • 292

OCCURS • 292

PRTREPT • 292

RPTSZ80 • 292

SAVEAREA • 292

SNAP • 292

SYMDSN • 292

WORKSTOR • 292

VSAM control blocks • 292

ACB • 292

AMB • 292

AMBL • 292

PLH • 292

RPL • 292

VSAMIDX • 292

Extended Optimization Support (EOS) for

CICSSee EOS • 237

F

Facilities • 60, 297

abend interception and correction • 60, 297

detecting • 60, 297

invalid references • 60, 297

unitialized working storage • 60

enabling options • 60

paragraph flow analysis • 60, 297

parameter list validity checking • 60

program spot analysis • 60

report customization • 60

subscript range checking • 60, 297

Fall-through exit - PERFORM range • 42

FDCHECK • 297

Detector option • 297

FDCHECK Detector option • 60, 136

description • 60

error analysis • 136

features • 17, 21

enhanced source listing • 17

unsupported • 21

Field descriptions - DSA • 41

Field descriptions - TGT • 40

File section display • 74

FILES • 60, 297

Detector option • 297

report customization • 60

FIND command • 189

FIRST128 • 60, 297

Detector execution-time option • 297

report customization • 60

Flags - PERFORM Range • 35

Flow-of-control paths - CICS • 47

foreground processing • 245

formatting options, reports • 158

G

Global Symbolic Files panel • 187

GOBACK - PERFORM ranges • 42

GRPADDR • 297

group address • 297

H

HANDLE • 47

commands • 47

implied branches • 47

HELP • 190, 253, 255, 256, 258, 259

COBOL language • 256

COBOL language reserved word • 258

COBOL language topic HELP • 258

commands • 190, 255

exiting • 256

exiting COBOL language HELP • 259

invoking • 253

menu panel • 253

PF keys • 255

HELP Format Notation panel • 259

Hexadecimal • 40, 41, 42

address - branch destination • 42

location - DSA • 41

location - TGT • 40

hierarchy of information • 141, 148

Detector • 148

Extended Detector • 141

HOGAN • 236

Analyzer restriction • 236

Page 341: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Index 341

I

Identifying logic errors - PERFORM range • 42

IDMSDC • 236

Analyzer restriction • 236

IDMSDC Optimizer compile-time option • 297

Implied branches - PERFORM Ranges • 47

IMS • 99, 139

Detector • 139

report • 99

example • 99

Index cell • 31

MMAP • 31

TGT • 31

Initialization Summary • 272

Report • 272

INSTRMAP • 228, 294, 296, 297

Analyzer option • 294, 296, 297

chart • 294

printing by CSECT name • 297

report-time • 296

sample listing • 228

time measurement • 296

Instruction • 228

detail report • 228

example • 228

hot spots • 228

INTERCEPTS • 60, 66, 121, 297

Detector option • 60, 297

execution-time • 60, 297

reporting • 60

report • 121

example • 121

fields • 121

reporting • 66

INTERCEPTS Detector option • 59

description • 59

INTERTST • 297

Detector option • 297

Invalid file reference • 136

Invocation panel • 245

Invoke Management Reporting System panel •

253

Invoking • 20

CAIOPTII • 20

Invoking CAOUTSVD - timing facility JCL • 325

IOB • 297

Detector option • 297

J

JCL • 20, 64, 208, 209, 210, 211, 262, 268, 273,

277

Analyzer • 208, 209, 210, 211

compile-time • 208

execution-time • 209

report-time • 210, 211

CAIOPTII • 64

CAIPRINT Repository utility • 277

compile-time • 64

execution-time • 64

MRS • 262

optimizing • 20

Options summary • 273

Runtime • 64

statistics reporting program • 268

K

KEEP command • 172, 191

Keep Window • 172

L

LE • 148

Extended Detector • 148

LE/370 • 97

runtime • 97

Library statistics • 265

Line number references • 27

LINECOUNT • 60, 297

Execution Monitor Execution-time option •

297

Optimizer Compile-time option • 297

report customization • 60

LINKAGE • 60, 75, 297

Detector execution-time option • 297

report customization • 60

section display • 75

Linkage section display • 133

link-edited • 20

CAODSNAP • 20

LIST • 19, 23, 55

object code • 55

Optimizer • 19, 23, 55

compile-time option • 19, 55

reports • 23

listing • 184, 206

add to a PROTSYM file • 184

Analyzer • 206

Page 342: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

342 User Guide

compile-time options • 206

execution-time options • 206

runtime options • 206

Load • 217, 245

libraries • 245

AllFusion CA-Optimizer/II • 245

COBOL • 245

module • 217

Load Library Analysis Detailed Report • 263

Local-Storage Section • 66, 75, 124

displays • 75

snapshot • 124

LOCATE command • 175, 192

locking reports • 158

Log and notify options • 292

LOGROS • 292

LOGTSO • 292

LOGUNI • 292

WTO • 292

LOGROS • 297

log to CA Roscoe user • 297

LOGTSO • 297

log to TSO user • 297

LOGUNI • 297

log to Unicenter Network and Systems

Management console • 297

LOWER • 297

Optimizer compile-time option • 297

M

Management Reporting System (MRS)See MRS

• 253

MAP • 19, 53, 297

Optimizer option • 19, 53, 297

merged data map • 297

sample listing • 53

table • 19

MDMAP Optimizer option • 19

compile-time description • 19

MEMMAP • 60, 297

Detector execution-time option • 297

report customization • 60

Memory map • 38, 39, 40, 41, 78

area DSA • 41

cells • 38, 39, 40, 41

display • 78

CGT • 78

PGT • 78

TGT • 78

table • 38, 39, 40

PGT • 38, 39

TGT • 40

Merged • 26, 31, 35

Condensed Procedure Division - hexadecimal

location • 35

Cross-Reference - MXREF • 26

Data Map • 31

description • 31

MMAP • 31

OFFSET (MOFFSET) • 35

merged display options • 128

MERGEDB • 297

detector mapping • 297

MLIST • 19, 82

address references • 82

compile-time options • 19

MMAP • 17, 19, 23, 24, 27, 31, 53, 297

codes • 31

compatibility with MXREF • 27

contents • 31

DCRDISP • 31

index cell • 31

NODCRDISP • 31

Optimizer option • 19, 53, 297

description • 19

merged data map • 297

reports • 53

options page legend • 24

reports generated • 23

sample listing • 31

source listing report features • 17

Module • 66, 72, 209, 217

call sequence • 66, 72

summary report • 209, 217

MOFFSET • 17, 19, 23, 27, 35, 42, 68, 82

address references • 82

branching • 42

compatibility with MXREF • 27

entry point address • 68

Optimizer option • 19

description • 19

PERFORM ranges • 42

reports generated • 23

sample listing • 35

source listing report features • 17

MOFFSET option • 297

MRGAUTO • 297

merging options • 297

Page 343: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Index 343

MRGBASED • 297

merging options • 297

MRGCNTLD • 297

merging options • 297

MRGDATA • 297

merging options • 297

MRGDSECT • 297

merging options • 297

MRGFILES • 297

map the FILE SECTION display • 297

MRGLINK • 297

LINKAGE SECTION • 297

MRGLOCAL • 297

Local-Storage Section • 297

MRGPARMS • 297

PL/I parameter storage • 297

MRGSTAT • 297

PL/I static storage • 297

MRGWORK • 297

WORKING-STORAGE-SECTION • 297

MRS (Management Reporting System) • 253,

262, 266, 267

about • 262

invoking • 253

JCL • 262

OS/VS COBOL reporting • 267

Statistics report • 267

usage considerations • 266

Multimodule • 232

environment • 232

Multiple references - MXREF • 27

Multirun reports • 233

MXREF • 17, 19, 23, 24, 26, 27

compatability • 26

data and procedure name • 27

definition • 27

reference • 27

Multiple references • 27

Optimizer option • 19

compile-time • 19

options page legend • 24, 27

reports generated • 23

Sample Listing • 27

source listing report features • 17

N

Nested program referencing • 27

NO EXIT - unconditional GOBACK • 42

NOCICS • 297

Optimizer option • 297

NOCOPT • 19, 297

compile-time options • 19

Optimizer option • 297

NOCXREF • 297

Optimizer option • 297

NODYN • 20

NOFDCHECK • 297

Detector option • 297

non-COBOL CSECTs • 265

NOSOURCE • 19, 297

Optimizer description • 19

source listing option • 297

NOSOURCEMAP • 206, 296, 297

Analyzer option • 206, 297

execution-time • 206

program reports • 296

NOTES command • 173, 192

NOXREF • 297

Optimizer option • 297

NULL • 42

code • 42

O

object code • 19, 55

GNs • 55

options • 19

PNs • 55

OBJECT Optimizer option • 19

description • 19

OCCURS • 297

maximum table occurrences • 297

OFFSET • 19, 54, 68

entry point address • 68

Optimizer option • 19, 54

compile-time • 19, 54

OFL - base locator • 55

Open Files Report • 96

Optimization techniques • 17

Optimizer • 17, 18, 19, 21, 24, 31, 266, 297

Analyzer options • 297

CNTXREF • 297

compile-time options • 18, 31, 297

CICS • 297

COBCC • 297

LOWER • 297

MAP • 297

MMAP • 31, 297

MOFFSET • 297

Page 344: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

344 User Guide

NOCICS • 297

SYM • 297

TITLE • 297

TPMON • 297

options • 18, 19, 24, 31, 266, 297

CICS • 18

CLIST • 18

COPT • 18

CXREF • 18

DCRDISP • 18

DECK • 18

DMAP • 18

IDMSDC • 18

in effect • 24, 266

INTERTST • 18

LIST • 18

MAP • 18

MDMAP • 18

MLIST • 18

MMAP • 18, 31

MOFFSET • 18

MXREF • 18

NOCOPT • 18

NOSOURCE • 18

OBJECT • 18

OFFSET • 18

OPTRC • 18, 19

PMAP • 18

SELECT • 18

SYM • 18, 297

TPMON • 18

XREF • 18

overview • 17

usage considerations • 21

Optimizer • 297

Optimizer

compile-time options • 297

Optimizer

compile-time options

PRTCOPY • 297

Optimizer

options • 297

Optimizer

options

PRTCOPY • 297

Optimizer options • 18

Options • 19, 23, 26, 27, 35, 37, 40, 53, 54, 55,

57, 60, 66, 121, 134, 135, 136, 137, 138,

139, 206, 207, 220, 226, 228, 233, 285, 286,

287, 289, 292, 296, 297

ACTONLY • 297

alphabetized listing • 297

AMB • 297

AMBL • 297

Analyzer • 206, 297

PROCDIV • 297

summary table • 206

Analyzer compile-time • 297

XCOUNT • 297

XTIME • 297

Analyzer execution-time • 297

XCOUNT • 297

XREPORT • 297

XTIME • 297

Analyzer report-time • 207, 220, 228, 233,

296, 297

CNTXREF • 296

consolidation • 233

CSECT • 296

INSTRMAP • 228, 297

PROCDIV • 296

SOURCEMAP • 296, 297

SOURCEMAP sample listing • 220

USERID • 207, 297

XREPORT • 207

ASMINST • 297

BINDER • 297

BINFRMT • 297

BLLMAX • 297

BLOCKS • 297

CEEDUMP • 297

CICS • 19, 297

CNTXREF • 226, 296, 297

COBCC • 297

COBOL II • 289

coding • 285, 289

combining Optimizer with COBOL II • 289

compile-time • 297

TITLE • 297

TPMON • 297

COPT • 297

CXREF • 37

data management control block • 297

BLOCKS • 297

DCB • 297

Page 345: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Index 345

DEB • 297

INTERTST • 297

IOB • 297

DB2ACTIV • 297

DBGAWAKE • 297

DBGSLEEP • 297

DCB • 297

DCRDISP • 297

DEB • 297

DECK • 297

description • 19

CICS • 19

CLIST • 19

CXREF • 19

DCRDISP • 19

DECK • 19

DMAP • 19

LIST • 19

MAP • 19

MDMAP • 19

MLIST • 19

MMAP • 19

MOFFSET • 19

MXREF • 19

NOCOPT • 19

NOSOURCE • 19

OBJECT • 19

OFFSET • 19

OPTRC • 19

PMAP • 19

SELECT • 19

XREF • 19

Detector compile-time • 60, 134, 135, 136,

297

DBGSLEEP • 60

debugging facilities • 134

descriptions • 60

DTECT • 297

FDCHECK • 297

listing • 60

PARMCHK • 60

PFLOW • 60, 297

SSRANGE • 297

SUBRNGCK • 60, 135, 297

uninitialized working storage • 136

WSINIT • 60, 297

Detector execution-time • 60, 66, 121, 134,

138, 139, 297

abend interception & correction • 60

ACTONLY • 297

BLOCKS • 297

correcting interrupts • 139

DBGAWAKE • 60, 134

descriptions • 60

DUMP • 297

FDCHECK • 60

FILES • 297

FIRST128 • 297

intercepts • 121, 139, 297

LINKAGE • 297

listing • 60

MEMMAP • 297

PARMCHK • 60, 297

PFLOW • 138, 297

PGM • 297

reporting on interrupts • 66

SAVEAREA • 297

SAVEHEAP • 297

SHOWHEAP • 297

SHWUNMRG • 297

SNAP • 60, 138, 297

SYMDSN • 297

WORKSTOR • 297

DTECT • 297

DUMP • 297

establishing precedence • 287, 289

Execution Monitor execution-time • 297

LINECOUNT • 297

execution-time • 297

UCB • 297

VSAMIDX • 297

Extended Detector compile-time • 292

listing • 292

Extended Detector execution-time • 292

listing • 292

FDCHECK • 297

FILES • 297

FIRST128 • 297

GRPADDR • 297

IDMSDC • 297

INSTRMAP • 297

INTERCEPTS • 297

INTERTST • 297

IOB • 297

length checking • 137

LINECOUNT • 297

LINKAGE • 297

LOGROS • 297

Page 346: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

346 User Guide

LOGTSO • 297

LOGUNI • 297

LOWER • 297

MEMMAP • 297

MERGEDB • 297

MRGAUTO • 297

MRGBASED • 297

MRGCNTLD • 297

MRGDATA • 297

MRGDSECT • 297

MRGFILES • 297

MRGLINK • 297

MRGLOCAL • 297

MRGPARMS • 297

MRGSTAT • 297

MRGWORK • 297

MXREF • 297

NOCOPT • 297

NOFDCHECK • 297

NOSOURCE • 297

NUM • 226

OBJECT • 297

OCCURS • 297

OFFSET • 297

Optimizer Analyzer • 297

CNTXREF • 297

Optimizer compile-time • 19, 23, 26, 27, 35,

37, 53, 54, 55, 57, 226, 297

CICS • 297

CNTXREF • 226

COBCC • 297

COPT • 297

CXREF • 27, 37

DECK • 297

descriptions • 19

Enhanced Source Listing reports • 23

IDMSDC • 297

LINECOUNT • 297

LIST • 23, 55

LOWER • 297

MAP • 53, 297

MMAP • 27, 53, 297

MOFFSET • 27, 35, 297

MXREF • 26

NOCICS • 297

NOCOPT • 297

NOSOURCE • 297

OFFSET • 54

OPTRC • 35, 297

SELECT • 23, 57, 297

SOURCE • 297

SPM • 297

STATS • 297

SYM • 297

XDMAP • 297

XMMAP • 297

XREF • 27, 297

Optimizer execution-time • 297

REGMAX • 297

RPL • 297

OPTRC • 297

overriding defaults • 287, 289

card-image data set • 289

CBL statement • 287

EXEC statement • 287

PFLOW • 297

PGM • 297

PLH • 297

precedence • 54, 55, 57

PROCDIV • 297

PRTCOPY • 297

PRTLIB • 297

PRTREPT • 297

REGMAX • 297

RENT • 40

RPL • 297

RPTSZ80 • 297

Runtime report • 66

SAVEAREA • 297

SAVEHEAP • 297

SELECT • 297

SHOWHEAP • 297

SHWUNMRG • 297

SNAP • 297

SOURCE • 297

SOURCEMAP • 296, 297

SPM • 297

SSRANGE • 297

STATS • 297

STIMERM • 297

SUBRNGCK • 297

SYM • 297

SYMDSN • 297

synonyms and abbreviations • 286

unspecified • 289

USERID • 297

VSAM • 297

ACB • 297

Page 347: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Index 347

AMB • 297

AMBL • 297

PLH • 297

WORKSTOR • 297

WSINIT • 297

WTO • 297

XCOUNT • 297

XDATA • 297

XMMAP • 297

XREF • 297

XREPORT • 297

XTIME • 297

OPTIONS command • 193

Options page • 23, 24, 27

Enhanced Source Listing • 23, 24

with MXREF • 27

Options Summary report • 273

OPTRC • 19, 35, 297

compile-time options • 19

Optimizer option • 35, 297

compile-time • 35

OS/VS COBOL reporting • 267

usage considerations • 267

Output File Information panel • 246

Overlay modules • 263

Overriding • 287, 289

option defaults • 287, 289

card-image data set • 289

CBL statement • 287

EXEC statement • 287

P

panels • 152, 158, 164, 170, 178, 184, 187,

243, 245, 246, 247, 248, 249, 250, 251, 252,

253, 256, 259

Add to PROTSYM • 184

Browse CA-Optimizer/II Errors • 249

Browse CA-Optimizer/II output • 248

COBOL Language HELP • 256

CSL Directory selection list • 178

Defaulted Options • 247

Delete CA-Optimizer/II Listing Data Sets •

251

Execute Optimized Program • 252

Global Symbolic Files • 187

HELP Format Notation • 259

Invocation • 245

Invoke Management Reporting System • 253

Output File Information • 246

PF Keys • 170

Primary Option Menu • 243

Print CA-Optimizer/II Listing • 250

PROTSYM Directory selection list • 178

Report Index selection list • 152

Report Options • 158

Report Tree selection list • 164

Supplemental Symbolic Files • 187

Paragraph • 82, 225

execution-time summary • 225

flow • 82

report • 82

PARMCHK • 60, 137, 297

compile-time • 60

execution-time • 297

purpose • 137

PBL - base locators • 55

PERFORM • 42, 80

Range Table and ALTERed GO TO Table • 42

return address analysis • 80

PERFORM Range • 35, 42, 47

branch out • 42

exits • 35, 42

fall-through • 42

MOFFSET report field • 35

logic error Identification • 42

NO EXIT • 42

NULL • 42

recursive • 47

RECURSIVE CALL • 42

return cell • 42

shared code • 42

Summary • 42

table • 35

PF keys • 170, 255

HELP facilities • 255

panel • 170

PFLOW • 60, 82, 297

compile-time - Abend & SNAP facility • 60

Detector option • 297

compile-time • 297

execution-time • 297

table size requirements • 82

PGM • 297

Detector option • 297

PGT • 38, 39

hexadecimal locations • 38, 39

Memory Map • 38, 39

Program Literal Pool • 39

Page 348: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

348 User Guide

System Literal Pool • 38

PL/I reports • 83

PLH Detector option • 297

execution-time • 297

PMAP • 297

Analyzer option • 297

PMAP - compile-time option • 19

Primary Option Menu • 243

Print CA-Optimizer/II Listing panel • 250

PRINT command • 194

PRINTCSL • 323

printing CSL library members • 323

printing • 162, 181, 323

program listing from symbolic file • 181

reports • 162

symbolic file directory • 323

symbolic file member • 323

Printing - LIST selections • 23

Problem solving techniques - Detector • 59

problems • 323

printing the CSL library • 323

PROCDIV • 294, 296

Analyzer report-time • 294, 296

chart • 294

guidelines • 296

list • 296

identifying program names • 296

Procedure • 19, 20, 27, 35, 50, 55, 263, 267

bytes • 267

CAIOPTII • 20

code - size • 263

Division • 27, 35

MOFFSET sample listing • 35

MXREF Sample Listing • 27

map • 19, 55

object listing (LIST) • 55

options • 19

size - how to measure • 50

PROFILE command • 196

Program • 21, 39, 40, 41, 71, 203

documentation • 203

exceptions • 71

Global Table (PGT) • 39

location - DSA • 41

location - TGT • 40

size • 21

upper limit • 21

program initialization • 20

PROTSYM • 59

Detector reports • 59

PROTSYM Directory selection list panel • 178

PROTSYM file • 22, 184

add listing • 184

SYM option considerations • 22

PRTCOPY • 297

printing copy books • 297

PRTLIB • 297

CAIPRINT repository library name • 297

PRTREPT • 297

CAIPRINT report • 297

PSV cell • 80

R

Recursion • 47, 48

Optimizer • 47

simple • 48

Recursive • 42, 47

CALL FROM - field description • 42

PERFORM range • 47

definition • 47

Reference - segments • 21

REFRESH command • 197

Register contents • 76

REGMAX option • 297

RENT • 40

REPORT • 323

printing symbolic members • 323

Report control options • 292

BLLMAX • 292

COBONLY • 292

CSLDSN • 292

DB2ACTIV • 292

DUMP • 292

FILES • 292

FIRST128 • 292

GRPADDR • 292

LINECNT • 292

LINKAGE • 292

LOCALSTOR • 292

MEMMAP • 292

MERGEDB • 292

MRGDATA • 292

MRGFILES • 292

MRGLINK • 292

MRGLOCAL • 292

MRGWORK • 292

OCCURS • 292

PRTREPT • 292

Page 349: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Index 349

RPTSZ80 • 292

SAVEAREA • 292

SNAP • 292

SYMDSN • 292

WORKSTOR • 292

Report features • 17, 60

customization • 60

for abends • 60

source listing • 17

Report Index selection list panel • 152, 155,

156, 157, 158

deleting reports • 157

line commands • 156

locking reports • 158

primary commands • 155

unlocking reports • 158

Report Options panel • 158

Report Tree selection list panel • 164, 166, 167

line commands • 167

primary commands • 166

reports • 23, 24, 26, 27, 31, 35, 37, 38, 39, 40,

41, 42, 49, 50, 52, 53, 54, 55, 57, 59, 66, 68,

73, 74, 83, 89, 96, 97, 99, 107, 115, 121,

124, 125, 126, 158, 162, 164, 167, 168, 170,

172, 175, 177, 189, 190, 191, 192, 193, 194,

196, 197, 198, 199, 200, 201, 202, 207, 211,

212, 215, 217, 220, 224, 225, 226, 228, 232,

233, 263, 265, 267, 272, 273, 275

Analyzer • 207, 211, 212, 215, 217, 220,

224, 225, 226, 228, 233

CNTXREF • 226

Execution count cross-reference • 226

fields • 211, 212

Instruction Detail Report • 228

Module summary • 217

Paragraph execution-time summary • 225

run summary • 207, 215

SOURCEMAP • 220, 225, 233

Unexecuted paragraphs • 224

COBOL II Diagnostic Messages & Compiler

Statistics • 49

collapsing tree view • 167

CSL Summary report • 275

defining labels • 175

defining tags • 175

Detector • 59, 66, 68, 73, 74, 83, 89, 96, 97,

99, 107, 115, 121, 124, 126

Abend • 59, 66, 68

Assembler • 89

CA IDMS/DB • 115

COBOL • 73

DB2 • 107

Execution Monitor • 126

File section display • 74

IMS • 99

Intercepts • 59, 66, 121

Open Files • 96

PARMCHK • 59

PL/I • 83

Save area trace • 97

Snap • 59, 66, 124

symbolic support • 59

diagrams - Options Page • 24

electronic notepad • 158

Execution Monitor • 66, 125, 126, 212, 232

CAIOPTS • 66, 125, 212

Module summary • 232

summary • 66, 126

expanding tree view • 167

FIND command • 189

formatting options • 158

HELP command • 190

Initialization Summary Report • 272

KEEP command • 191

Keep Window • 172

labels, defining • 175

Load Library Analysis Detailed Report • 263

LOCATE command • 192

MRS Load Library Analysis Detailed Report •

263

MRS Summary Report • 265

NOTES command • 192

Optimizer • 23, 24, 26, 27, 31, 35, 37, 38,

39, 40, 41, 42, 50, 52, 53, 54, 55, 57

ALTERed GO TO table • 42

Compiler Data Map (MAP) • 53

Compiler Source Listing • 52

Condensed Cross-Reference (CXREF) • 37

Condensed Optimized Object Code (OFFSET) •

54

Dynamic Save Area memory map (DSA) • 41

Merged Cross-Reference (MXREF) • 26, 27

Merged Data Map (MMAP) • 31

Merged OFFSET (MOFFSET) • 35

Options Page • 24

PERFORM Range table • 42

Procedure Map Object Listing (LIST) • 55

Page 350: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

350 User Guide

Program Global Table (PGT) Memory Map • 38,

39

Selected Procedure Map (SELECT) • 57

sequence • 23

Statistics • 50

Task Global Table memory map (TGT) • 40

OPTIONS command • 193

Options Summary report • 273

PRINT command • 194

printing • 162

PROFILE command • 196

REFRESH command • 197

RFIND command • 198

SETINDEX command • 198

SORT command • 199

Statistics report • 267

Summary Report • 265

SYM command • 200

SYM report listing • 52

symbolic utilities menu • 177

TAG command • 201

VIEW command • 202

viewing • 164

viewing sections • 168

viewing techniques • 170

Report-time • 207, 289, 296

coding options • 289

options • 207, 296

descriptions • 207

guidelines • 296

overview • 289

Repository Viewer • 151, 153, 156, 157, 158,

164, 167, 168, 170, 172, 173, 175, 188, 189,

190, 191, 192, 193, 194, 196, 197, 198, 199,

200, 201, 202, 260

collapsing tree view • 167

commands • 188

deleting reports • 157

description • 151

Electronic Notepad • 173

expanding tree view • 167

FIND command • 189

HELP command • 190

KEEP command • 191

Keep Window • 172

labels, defining • 175

launching • 260

line commands • 156

LOCATE command • 192

locking reports • 158

NOTES command • 192

OPTIONS command • 193

PRINT command • 194

PROFILE command • 196

REFRESH command • 197

report tree • 164

repository, selecting • 153

RFIND command • 198

SETINDEX command • 198

setting PF keys • 170

SORT command • 199

starting • 151

SYM command • 200

TAG command • 201

tree view • 167

unlocking reports • 158

VIEW command • 202

viewing reports • 168

reserved word • 258, 259

HELP • 258

syntax • 259

Return • 42

cell • 42

Return code • 297

RFIND command • 198

RPL • 297

Optimizer compile-time option • 297

RPTSZ80 • 297

80-column format • 297

Run summary report • 215

description • 215

fields • 215

Runtime • 60, 64, 66, 121

INTERCEPTS • 66, 121

JCL • 64

options • 60, 66

DBGAWAKE • 60

INTERCEPTS • 60

PARMCHK • 60

PFLOW • 60

Report • 66

SNAP • 60

S

Save area trace report • 97

SAVEAREA • 60, 297

Detector option • 297

report customization • 60

Page 351: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

Index 351

SAVEHEAP • 297

Detector option • 297

Segment allocation • 21

SELECT • 19, 23, 57, 297

compile-time options • 19

Optimizer option • 23, 57, 297

groups of statements • 57

printing specific items • 23

SELECTed procedure map (SELECT) • 57

Selecting statement groups - LIST • 57

SETINDEX command • 153, 198

SHADOW • 236

Analyzer restriction • 236

SHOWHEAP • 297

Detector option • 297

SHWUNMRG • 297

Detector option • 297

SNAP • 297

Detector option • 297

SNAP Detector option • 20, 59, 60, 66, 124

diagnostics • 59

example • 124

execution-time • 60

description • 60

routine • 20

SNAP CALL • 66

SORT command • 199

SOURCE • 297

Optimizer option • 297

Source listing • 19, 23, 220

condensed • 19

control options • 23

count and timing report • 220

suppression • 19

SOURCEMAP • 220, 233, 294, 296, 297

Analyzer • 294, 296, 297

option chart • 294

report-time option • 296, 297

description • 220

explaining consolidation • 233

report example • 220

Specifying Analyzer options • 294, 295

SPM option • 297

Statistics report • 49, 50, 267

compile-time • 49

instruction count • 50

monitoring results • 267

options • 50

STATS option • 297

STEPLIB • 211

STIMERM • 294, 297

Analyzer option • 294

compile-time • 294

time sampling • 297

SUBRNGCK • 60

Detector option • 60

valid subscripts & index values • 60

SUBRNGCK/SSRANGE • 135, 297

Summary Report • 265

Supplemental Symbolic Files panel • 187

SYM command • 200

SYM option • 22, 52, 297

report listing • 52

usage considerations • 22

symbolic file • 178, 180, 181, 183, 187

deleting member from • 180

globally defined • 187

listing contents • 178

locally defined • 187

printing program listing • 181

supplemental • 187

viewing program listing • 183

symbolic file directory • 323

printing • 323

symbolic file member • 323

printing • 323

symbolic support, Detector reports • 59

Symbolic Utilities menu • 177

SYMDSN option • 297

Synonyms and abbreviations • 286

SYSLIN - producing object text • 19

SYSPUNCH • 19, 297

Optimizer compile-time option • 297

producing object module • 19

System • 38, 39

Literal Pool - PGT • 38, 39

system requirements, EOS • 241

T

TAG command • 175, 201

Task Global Table memory map (TGT) • 40

techniques, optimization • 17

Testing and debugging - Analyzer • 203

Testing facility - Detector • 60

TGT - memory map • 40

Timings • 203, 232, 233, 234

TITLE • 297

TPMON • 297

Page 352: CA Optimizer /II Optimizer II r8 5-ENU/Bookshelf... · User Guide r8.5 CA Optimizer®/II . ... 180 Print a Program Listing from a Symbolic File ... Browse CA-Optimizer/II Output Panel

352 User Guide

troubleshooting • 319

TSO support • 243

U

UCB option • 297

UNCOND - MOFFSET • 35

Unconditional statements - OPTRC • 19

UNEXEC - MOFFSET • 35

Unexecutable statements • 19

Unexecuted paragraphs report • 224

unlocking reports • 158

Unspecified options • 289

unsupported features • 21

Usage considerations • 139, 149, 231, 234

Analyzer • 231, 234

Counts Results • 231

Reporter • 234

Detector • 139

Extended Detector • 149

restrictions • 149

USERID • 207, 294, 296, 297

Analyzer • 294, 296

report-time option • 294, 296

Analyzer option • 297

unique page heading • 207

utilities • 261

V

VIEW command • 202

viewing • 164, 183

program listing from symbolic file • 183

reports • 164

VN cell • 42, 80

VSAM control blocks • 292, 297

ACB • 292

AMB • 292

AMBL • 292

options • 297

PLH • 292

RPL • 292

VSAMIDX • 292

VSAMIDX option • 297

W

Working storage • 75, 133, 136

section display • 75, 133

variables • 136

WORKSTOR • 60, 297

Detector option • 297

execution-time • 297

report customization • 60

WSINIT • 60, 136, 297

debugging tool • 136

Detector option • 60, 297

compile-time • 297

unitialized working storage • 60

WTO • 297

abend to job log • 297

X

XCOUNT • 206, 294, 295, 297

Analyzer option • 206, 294, 295, 297

chart • 294

compile-time • 206, 294, 297

execution-time • 206, 295, 297

XDATA - Optimizer compile-time option • 297

XMMAP • 31

with COPY...SUPPRESS • 31

XMMAP- Optimizer compile-time option • 297

XREF • 19, 27, 297

and MXREF • 27

compile-time options • 19

Optimizer option • 297

XREPORT • 206, 207, 294, 295, 297

Analyzer option • 206, 294, 295, 297

description • 297

execution-time • 206, 295

summary chart • 294

invoking Analyzer Reporter • 207

XTIME • 206, 294, 295

Analyzer option • 206, 294, 295

compile-time • 206, 294

execution-time • 206, 295

listing • 294

XTIME option • 297