Portal | Manuals | References | Downloads | Info | Programs | JCLs | Master the Mainframes
IBM Mainframe Computers Forums Index
 
Register
 
IBM Mainframe Computers Forums Index Mainframe: Search IBM Mainframe Forum: FAQ Memberlist Usergroups Profile Log in to check your private messages Log in
 

 

Load Module of a Cobol Converted code

 
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> PL/I & Assembler
View previous topic :: :: View next topic  
Author Message
janakimaviti

New User


Joined: 02 Feb 2006
Posts: 2

PostPosted: Wed Apr 02, 2008 8:38 pm    Post subject: Load Module of a Cobol Converted code
Reply with quote

Hi,
I am converting code from COBOL I to COBOL II. Can any one tell me whether load module size increases or decreases in doing so?.
Back to top
View user's profile Send private message

Bill O'Boyle

CICS Moderator


Joined: 14 Jan 2008
Posts: 2502
Location: Atlanta, Georgia, USA

PostPosted: Wed Apr 02, 2008 11:45 pm    Post subject: Load Module of a Cobol Converted code
Reply with quote

COBOL2 Load Modules will be larger than COBOL1. What the percentage that would be depends on some factors.

If you activate the OPTIMIZE compiler option in a COBOL2 environment, you'll probably find that the load-module size is larger than the same load-module compiled with NOOPTIMIZE, as an optimized COBOL2 load-module tends to copy PERFORMED routines in-line, resulting in duplication. However, when this occurs, the logic presents itself as more "Top Down" resulting in less page faults and thus, faster execution.

One other compiler option that you must be careful of is TRUNC, which relates to binary data.

If you have WS binary-fields with a VALUE clause and this value exceeds the number of digits in the picture and you've specified TRUNC(OPT), you'll get high-order truncation.

Otherwise, TRUNC(BIN) should be specified, which will not cause high-order truncation, based upon the picture-clause number of digits.

Example -

Code:

03  WS-HWORD PIC S9(04) COMP VALUE +32767.

In the above, the value will be truncated to +2767, even though (technically), it's a binary-halfword, whose signed-value maximum is +32767 (65535 unsigned), TRUNC(OPT) doesn't see it that way.

If you don't have any binary-fields with a VALUE clause, whose value exceeds the maximum number of digits, then TRUNC(OPT) will be fine.

Note that the object code generated by TRUNC(BIN) is usually 100% to 300% more instructions, so keep this in mind and such, load-module sizes will be different when one is used instead of the other.

IIRC, TRUNC(STD) is the default and I'd advise you to override this as it is similar to TRUNC(BIN), but not as grossly inefficient.

Also (very important), watch your AMODE/RMODE settings for COBOL2 callers who are calling AMODE24 sub-programs. You WILL crash and burn as 24-Bit sub-programs can't address 31-Bit data.

Keep in mind that you're migrating from an unsupported release of COBOL to another unsupported release of COBOL and (IMHO), the migration should be to one of the more current (and supported) releases, such as Enterprise.

Your IBM representative should be discussing these issues with your management and assisting with future migration considerations.

Also, it's either CICS TS/3.1 or CICS/TS 3.2 (can't recall exactly) which does NOT support COBOL1 (OS/VS COBOL) and will crash and burn if these types of load-modules are found.

Again, your IBM representative should be working closely with your people to ensure a smooth transition and if an IBM product breaks, that you'd be on a supported version/release.

Otherwise, IBM will gladly accept your check to fix out of support products. icon_wink.gif

HTH....

Regards,

Bill
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> PL/I & Assembler All times are GMT + 6 Hours
Page 1 of 1

 

Search our Forum:

Similar Topics
Topic Author Forum Replies Posted
No new posts MAX-RC 88 and Return code 606 in DFH0... lind sh CICS 1 Tue Jan 24, 2017 1:23 pm
This topic is locked: you cannot edit posts or make replies. Full Time COBOL Software Development ... shally Mainframe Jobs 0 Fri Jan 20, 2017 5:24 am
This topic is locked: you cannot edit posts or make replies. COBOL Software Development Lead at Fi... shally Mainframe Jobs 0 Fri Jan 20, 2017 5:21 am
No new posts How to Capture the Max return code of... anilkumar922 All Other Mainframe Topics 0 Thu Jan 12, 2017 12:02 pm
No new posts Executing OO COBOL program invoking J... Virendra Shambharkar COBOL Programming 2 Tue Jan 10, 2017 6:37 pm


Facebook
Back to Top
 
Mainframe Wiki | Forum Rules | Bookmarks | Subscriptions | FAQ | Tutorials | Contact Us