Scott, your reply-to on your list posts is set to your email address instead
of the list.

As I said privately (not on purpose), change the LR R12,R15 to LR R11,R12 or
change your other instructions to load R11 and use R12,R11.

Chuck Arney
Arney Computer Systems

-----Original Message-----
From: IBM Mainframe Assembler List [mailto:[email protected]]
On Behalf Of Scott Ford
Sent: Friday, June 01, 2012 9:26 AM
To: [email protected]
Subject: Base registers

Guys/Gals:

I am the process of modifying our IRREVX01 and have a fundamental
question...Currently when the exit is called the prolog looks like this:

LOGEVX01 CSECT ,
LOGEVX01 AMODE 31
LOGEVX01 RMODE ANY
         YREGS
         SAVE  (14,12)
         LR    R12,R15             program addressability
         USING LOGEVX01,R12        set base register
         LR    R10,R1              save parameter address
         USING EVXPL,R10           base parameter map
         L     R3,EVXFLAGS         exit flag address
         TM    0(R3),EVXPOST       post-exit ?
         BNO   GOBACK              if not, get out

Which works fine . I have added new code and exceeded the initial register
cover range of 4k ..I tried to add an addition base register like this:

LOGEVX01 CSECT ,
LOGEVX01 AMODE 31
LOGEVX01 RMODE ANY
         YREGS
         SAVE  (14,12)
         LR    R12,R15             program addressability
         LA    R12,2048(R11)
         LA    R12,2048(R12)
         USING LOGEVX01,R11,R12       set base register
         LR    R10,R1              save parameter address
         USING EVXPL,R10           base parameter map
         L     R3,EVXFLAGS         exit flag address
         TM    0(R3),EVXPOST       post-exit ?
         BNO   GOBACK              if not, get out

Assembled and liked the exit, T PROG=xx  , where xx is the parmlib member to
delete the exit Reloaded the exit via T PROG=yy to activate the exit .

Ran a test through the exit ( a RACF command ) and a S0C1-1 Without the
addition of the new lines for the second base register. The exit works
fine..

Either I blew it on the second base or IRREVX01 has a size restriction ...

Can someone point me the right way ?


Thanks in advance..

Regards
Scott J Ford
Software Engineer
http://www.identityforge.com

Reply via email to