I would use "LOCE R8,0(R8)" instead of " LOC   R8,0(R8),8"

Pieter

-----Original Message-----
From: IBM Mainframe Assembler List [mailto:[email protected]]
On Behalf Of [email protected]
Sent: 13 May 2016 09:25
To: [email protected]
Subject: Re: Structured Programming Macros

Frank,

you could extent your question to cover LOAD ON CONDITION...
then the generated code would look like this:

         CLI   R9,UEPPLI                PLI PROG?
         LOC   R8,0(R8),8               YES - FOLLOW POINTER
         MVC   PCB,0(R8)                MOVE PCB TO MESSAGE

Does not need a label for branching 

But I highly doubt that the macros do yet support this.

Notes:

1.) The original code used an X reg - which is not possible with LOC.
But i highly doubt that this is correct. The last instr (the MVC) uses
R8 in a normal position. So i guess there is no AR involved.


2.) The high number of eights in the LOC is not a mistake-

- first register to load
- second (in brackets) base for location to load from
- condition under which the LOAD should be executed

--
Martin

Pi_cap_CPU - all you ever need around MWLC/SCRT/CMT in z/VSE more at
http://www.picapcpu.de


---
This email has been checked for viruses by Avast antivirus software.
https://www.avast.com/antivirus

Reply via email to