On Mon, 20 Dec 2010 10:28:21 -0500 Bodoh John Robert <[email protected]> wrote:
:>Some of my macros generate a CALL or LINK to a subroutine and pass a parameter list consisting, in part, of the address of storage locations specified through arguments on the macro. In generating the storage address (reentrant code), a LA or LAE(based), or LARL (baseless) would be used. :>You're right about calling CSECT or DESCT based. I was referring to the code I needed to generate rather than the location of the symbol. :>I guess what irks me is that the macro has no way of knowing what to generate. There is a hole in the assemble architecture. For example, before baseless, when I reference a symbol, the assembler knows how to resolve the storage location. It would lookup the symbol, determine the base register for the storage and the displacement, and generate the machine code. On the first pass the assembler does not know that it can address the symbol. But as the instruction uses the same amount of space anyway, it does not matter. At a later pass the assembler figures out if it has addressability and then either reports and error or completes the instruction. -- Binyamin Dissen <[email protected]> http://www.dissensoftware.com Director, Dissen Software, Bar & Grill - Israel Should you use the mailblocks package and expect a response from me, you should preauthorize the dissensoftware.com domain. I very rarely bother responding to challenge/response systems, especially those from irresponsible companies.
