> and it finds many but not quite all of them. Basically, it finds
ST 1,FOO where FOO is defined in the CSECT something like FOO DC F'0' but it does not find things like the following construct that IBM macros are or were fond of CNOP 0,4 BAL 1,*+8 DC F'0' ST 2,0(0,1) In the first case it "knows" that FOO is in a code section but in the latter it only knows that R1 is pointing "somewhere." Charles -----Original Message----- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of John Gilmore Sent: Sunday, July 22, 2012 6:13 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: re-entrant modules and the binder I am not sure that I fully understand exactly what you want to do or the exact sequence in which you want to do it. Your objective is, however, clear: You want to be able to use the CICS RENTPGM=PROTECT facility. If 1) you specify this option for a CICS application program (AP) and 2) CICS honors it, that AP is placed in read-only storage. A later attempt to execute such an AP will have dire consequences if it in fact modifies itself. You may not therefore specify this option for a load module or program object that contains a non-reentrant assembly-language module or modules. As you have noted, there is no great difficulty about making your COBOL modules reentrant. Instructing your compiler to do so will accomplish this. Specifying the RENT option when you assemble your HLASM subroutines instructs the HLASM to check your code for non-reentrant constructs, and it finds many but not quite all of them. (You can and should use the &SYSOPT_RENT boolean within each assembly unit to ensure that the RENT option has in fact been specified for it.) I strongly recommend that you also make these assembly-language modules LE-compatible. Using the LE's LIFO storage-management facilities will make the task of making these modules reentrant much easier. ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN