Remember that the LE terminology of REUS is somewhat unrelated to the load
module REUS attribute or how z/OS manages load modules.  What LE is talking
about is the LE reusability environment, which has to do with LE enclaves.
This affects the behaviour of the Cobol STOP RUN statement, for example,
amongst other things, also LE will intercept LINK SVC in order to enforce
enclaves.  This has to do with multiple TCBs being used by the application,
so presumably not applicable to your use case.  Chances are you can just
eliminate IGZERRE and not replace it with CEEPIPI and your application will
work correctly, but it all depends on exactly what that assembler front-end
is doing (and why it was used in the first place).  Your issue is with how
enclaves are managed and whether that matters for your application design.
The fetching of modules and possible storage impact is unrelated to
whatever IGZERRE was doing.

On Fri, Nov 12, 2021 at 9:31 AM Pommier, Rex <[email protected]>
wrote:

> Hi list,
>
> I'm trying to figure out the practical usage of the REUS - and by
> extension the CEEPIPI module used to set up a non-LE assembler program for
> reuse.  I've read the manual and spent the better part of a day doing
> additional reading and can't get it thru my thick skull just what it is
> used for in my scenario.
>
> We're upgrading to Cobol 6.3 and hit a snag in that we have a statically
> linked load module that is a combination of Cobol programs (being
> recompiled under the 6.3 compiler) and some assembler programs.  The driver
> is a non-LE assembler program.  At the beginning of the old program was a
> call to IGZERRE.  Under 6.x, IGZERRE is no longer supported and we need to
> change to the CEEPIPI routine to designate the program as reusable.  It is
> a batch program that is not doing anything out of the ordinary that I can
> tell.
>
> So here are my questions.  Let's assume the driver is program "A" and the
> Cobol program being called is program "C".   Further assume that as A is
> running, it calls C each time a new record is read that A has to process.
> If I don't have the load module linked with REUS, does the system fetch C
> every time it is called?  I would think not being that they're statically
> linked together.  If this is the case, is there any benefit to setting up
> the reusability in the module or would it be OK to just strip the IGZERRE
> out of the program and let it default to not reusable?
>
> Thanks,
>
> Rex
>
>
> ----------------------------------------------------------------------
> The information contained in this message is confidential, protected from
> disclosure and may be legally privileged. If the reader of this message is
> not the intended recipient or an employee or agent responsible for
> delivering this message to the intended recipient, you are hereby notified
> that any disclosure, distribution, copying, or any action taken or action
> omitted in reliance on it, is strictly prohibited and may be unlawful. If
> you have received this communication in error, please notify us immediately
> by replying to this message and destroy the material in its entirety,
> whether in electronic or hard copy format. Thank you.
>
>
> ----------------------------------------------------------------------
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to [email protected] with the message: INFO IBM-MAIN
>

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to