Discussion:
Cobol 5/6 - Compile listing integrated into load module
Add Reply
Steff Gladstone
2017-12-06 06:48:51 UTC
Reply
Permalink
Raw Message
In versions 5 and 6 of Cobol, IBM has introduced the option of including
the compile listing (or at least the data from which a compile listing can
be derived) into the load module for subsequent debug processing.
Presumably this obviates the need to maintain something like the DDIO file
required by Compuware's Expeditor product.

My question is: does anybody know where this option is documented in
detail, including:

- all of the various compile-time parameters provided for specifying
this option

- how the compile information in the load module can be retrieved?
Or is this totally proprietary information that IBM keeps under
tabs?

Thanks in advance for any assistance,
Steff Gladstone

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to ***@listserv.ua.edu with the message: INFO IBM-MAIN
Binyamin Dissen
2017-12-06 08:54:06 UTC
Reply
Permalink
Raw Message
Wouldn't it be in the PPA?

On Wed, 6 Dec 2017 08:50:04 +0200 Steff Gladstone <***@GMAIL.COM>
wrote:

:>In versions 5 and 6 of Cobol, IBM has introduced the option of including
:>the compile listing (or at least the data from which a compile listing can
:>be derived) into the load module for subsequent debug processing.
:>Presumably this obviates the need to maintain something like the DDIO file
:>required by Compuware's Expeditor product.
:>
:>My question is: does anybody know where this option is documented in
:>detail, including:
:>
:> - all of the various compile-time parameters provided for specifying
:>this option
:>
:> - how the compile information in the load module can be retrieved?
:> Or is this totally proprietary information that IBM keeps under
:>tabs?

--
Binyamin Dissen <***@dissensoftware.com>
http://www.dissensoftware.com

Director, Dissen Software, Bar & Grill - Israel


Should you use the mailblocks package and expect a response from me,
you should preauthorize the dissensoftware.com domain.

I very rarely bother responding to challenge/response systems,
especially those from irresponsible companies.

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to ***@listserv.ua.edu with the message: INFO IBM-MAIN
Peter Hunkeler
2017-12-06 09:56:06 UTC
Reply
Permalink
Raw Message
- all of the various compile-time parameters provided for specifying this option
Search for the TEST/NOTEST compiler option in the programming guide.
- how the compile information in the load module can be retrieved?
Or is this totally proprietary information that IBM keeps under tabs?
IBM has changed to use the DWARF format to included source and debugging information in the load module. This information is stored in separate load module sections marked as NOLOAD sections. They are not loaded when the program is loaded into storage at executions time. I asked here some time ago about the mechanism to load such NOLOAD section. The answer from (Peter Relson, IIRC), was that this is not a public interface. LE would know when and how to load such segments. Debug Tools either know as well or know how to ask LE for help loading them when required.


--
Peter Hunkeler



----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to ***@listserv.ua.edu with the message: INFO IBM-MAIN
Tom Marchant
2017-12-06 12:31:35 UTC
Reply
Permalink
Raw Message
Post by Binyamin Dissen
Wouldn't it be in the PPA?
No. It is stored in the NOLOAD segment of the program object.
Post by Binyamin Dissen
:>In versions 5 and 6 of Cobol, IBM has introduced the option of including
:>the compile listing (or at least the data from which a compile listing can
:>be derived) into the load module for subsequent debug processing.
It is stored in the program object. It cannot be stored in a load module.
--
Tom Marchant

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to ***@listserv.ua.edu with the message: INFO IBM-MAIN
Tom Marchant
2017-12-06 12:43:39 UTC
Reply
Permalink
Raw Message
Post by Peter Hunkeler
IBM has changed to use the DWARF format to included source
and debugging information in the load module.
Program object. Not Load module.
Post by Peter Hunkeler
I asked here some time ago about the mechanism to load such NOLOAD section.
Have you looked in Program Management: Advanced Facilities?
Post by Peter Hunkeler
LE would know when and how to load such segments.
Maybe, but that would surprise me. The Binder would know.
Post by Peter Hunkeler
Debug Tools either know as well or know how to ask LE for help
loading them when required.
More likely ask the binder.
--
Tom Marchant

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to ***@listserv.ua.edu with the message: INFO IBM-MAIN
Peter Hunkeler
2017-12-06 14:29:45 UTC
Reply
Permalink
Raw Message
Post by Tom Marchant
Post by Peter Hunkeler
IBM has changed to use the DWARF format to included source
and debugging information in the load module.
Program object. Not Load module.
Old habit of me naming that "thing" a load module, I know. Sorry for being lazy with this.
Post by Tom Marchant
Post by Peter Hunkeler
I asked here some time ago about the mechanism to load such NOLOAD section.
Have you looked in Program Management: Advanced Facilities?
Yep. I admit I never used the binder API myself, so I may easily have overlooked it.



I've been searching the archives for "NOLOAD" but didn't get posts I was expecting to get. I may be mistaken I posted here, or less likely I did not use the word NOLOAD. Sorry I can't proof what I was posting before.




--
Peter Hunkeler





----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to ***@listserv.ua.edu with the message: INFO IBM-MAIN
Frank Swarbrick
2017-12-06 22:39:08 UTC
Reply
Permalink
Raw Message
I seem to recall that we had to add the Binder's "load library" to DFHRPL in order so that IBM Debug Tool could extract the NOLOAD debug data for a COBOL 5 program running under CICS.
________________________________
From: IBM Mainframe Discussion List <IBM-***@LISTSERV.UA.EDU> on behalf of Peter Hunkeler <***@GMX.CH>
Sent: Wednesday, December 6, 2017 7:30 AM
To: IBM-***@LISTSERV.UA.EDU
Subject: AW: Re: AW: Cobol 5/6 - Compile listing integrated into load module
Post by Tom Marchant
Post by Peter Hunkeler
IBM has changed to use the DWARF format to included source
and debugging information in the load module.
Program object. Not Load module.
Old habit of me naming that "thing" a load module, I know. Sorry for being lazy with this.
Post by Tom Marchant
Post by Peter Hunkeler
I asked here some time ago about the mechanism to load such NOLOAD section.
Have you looked in Program Management: Advanced Facilities?
Yep. I admit I never used the binder API myself, so I may easily have overlooked it.



I've been searching the archives for "NOLOAD" but didn't get posts I was expecting to get. I may be mistaken I posted here, or less likely I did not use the word NOLOAD. Sorry I can't proof what I was posting before.




--
Peter Hunkeler





----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to ***@listserv.ua.edu with the message: INFO IBM-MAIN

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to ***@listserv.ua.edu with the message: INFO IBM-MAIN
Allan Kielstra
2017-12-06 17:07:36 UTC
Reply
Permalink
Raw Message
The source is included as part of the TEST data. All of the TEST data is in a NOLOAD section in the object file. With V6.2, TEST(SEPARATE) is supported and the TEST data can be in a separate data set.

The TEST option is described in the PG. Since TEST(SEPARATE) is new (to V6 anyway) you can also refer to the MG.

The TEST data (regardless of where it is found) is in an industry standard format called DWARF. (To which we have added some debug extensions.) We use a component called Common Debug Architecture (CDA) to write the DWARF information (if you are the compiler) and read the DWARF information (if you are a debugger.) The intention is to make this information as open as possible. The best place to start understanding the DWARF information is: https://www.ibm.com/support/knowledgecenter/en/SSLTBW_2.3.0/com.ibm.zos.v2r3.cbcdu01/dwarfdump_defn.htm This page describes a tool to dump DWARF. Pages around this page describe various related tools. (In my opinion, if you want to start experimenting with these libraries, it's easier to work in USS. But that's just my opinion.)

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to ***@listserv.ua.edu with the message: INFO IBM-MAIN
Loading...