I don't think putting a LTORG in my macro would be correct. First, I could pick up ltorg constants from code outside my macro. Second, I would need a base reg for the values generated by the LTORG.

My assumption is that if someone is using base-less programming, they would put all their LTORGs in an area of code/data covered by a base register.

Tony Thigpen

Mike Hochee wrote on 11/7/21 8:29 PM:
I'd probably be inclined to use the inline constants approach, just to have 
some control over generated label names. Is there something preventing you from 
incorporating LTORGs in your macros?  If not, maybe that's another option.

HTH,
Mike

-----Original Message-----
From: IBM Mainframe Assembler List [mailto:[email protected]] On 
Behalf Of Tony Thigpen
Sent: Sunday, November 7, 2021 7:25 PM
To: [email protected]
Subject: Base-less macros

Caution! This message was sent from outside your organization.

I finally am to the point where I no longer need to worry about specific 
customers having hardware that does not support relative instructions, so I am 
updating some macros I provide to be baseless.

What is the 'preferred' approach to macro generated constants? In the past, I 
have used both inline constants that I branch around, and ltorg literals 
(=c'x').

In the past, I have been bitten by using ltorg literals and the client did not 
put a LTORG after my macro causing a 'no active base register'
issue. So, I am thinking inline with a BRAS is better.

Maybe there is another approach that I missed?

Suggestions?

Tony Thigpen

Reply via email to