Re: use GETSYMB macro under CICS

New Message Reply Date view Thread view Subject view Author view Other groups

Subject: Re: use GETSYMB macro under CICS
From: Martin T2.. (Martin@pi-sysprog.de)
Date: Fri Jun 13 2008 - 02:00:54 EDT


Tony,

 >> nothing needs a save area <<

Be very very carefull with this stmt.

$IJBPROC needs it and that is why GETSYMB is the dangeroust (!) macro in 
the universe.

It says: register 13,14,15 0 and 1 are changed - Casual readers will not 
catch that extra register.

To the problem:

The program is not reentrant- yes- but this will not hurt. CICS does 
guarantee serial reuse. So if a piece of code can be reused from 
CICS-command to next CICS command it is okay. This does not cover cases 
where someone forces code via LNKEDT stmt to have an attribute that it 
does not have (i.e AMODE or RENT/SVA).

Frank: your code looks okay to me. Have you checked the PSW? - Second 
byte left half is the protection-key- could be 9x and the program(CICS) 
runs in dynamic (CICS-key would be Dx).

Or could it be that IJBPROC needs 31-bit mode (this thing is not 100% 
clean- deep down in its belly it needs the save-area and if that 
save-area is a dirty 24 bit address (dirt in high order) it will stumble.

For the first case (which I assume is the reason- the other one is 
unlikely - savearea used within IJBPROC is provided by GETSYMB)- here is 
coding I use (to avoid forcing all of the program into CICSKEY) in front 
of IBM-macros like LIBRM or others which stumble if running in anything 
but the partition-key (CICS-key).

          L      R15,X'14'  GET COMRG
          L      R15,X'B4'(R15)  GET AFCB
          L      R15,X'8'(R15)   GET CSA
          IC     R15,X'8B'(R15)  GET CICS-KEY
          SPKA   0(R15)

It destroys R15 - and leaves code in CICS-key (until set-back, or next 
EXEC CICS or....(I forgot: Tony told me the exra method).).

-- 
Martin
--
XML2PDF - the way to get all features of PDF into your documents
on mainframe or PC systems; more at http://www.pi-sysprog.de


New Message Reply Date view Thread view Subject view Author view Other groups

This archive was generated by hypermail 2b25 : Sat Jul 05 2008 - 14:05:06 EDT