How about something like this: 

BEGIN   CSECT  

             USING BEGIN ,15 

             LR    12,15 

             DROP  1 5 

             USING BEGIN,12 

             B     ORIGIN2 

ORIGIN1 EQU * 

              ORG   *+1000 

ORIGIN2 put all your executable code here, which includes references using base 
registers (this was 1976, remember) 

               ..... 

end of executable code 

            ORG   ORIGIN1 

            LTORG , 

            ORG   ,     resume executable code 



Not that this would be useful, but I thihk this would get all the literals 
defined at the beginning.  Anyway, IBM has been putting a Branch instruction at 
the beginning of their modules, followed by much eyecatcher info, for a lot 
longer than "baseless" coding has been promulgated.  And doing that did not 
eliminate their need for base registers, either. 

Bill Fairchild 
Franklin, TN 


----- Original Message -----
From: "Ed Jaffe" <edja...@phoenixsoftware.com> 
To: ASSEMBLER-LIST@LISTSERV.UGA.EDU 
Sent: Thursday, April 11, 2013 10:11:19 AM 
Subject: Re: Baseless problem 

On 4/11/2013 7:45 AM, Paul Gilmartin wrote: 
> I believe LOCTR is fairly new.  Some of my co-workers are old 
> enough not to know about it.  Bitsavers would probably know, 
> but why bother. 

Why bother? I am curious to know how Mike Shaw observed the 
literals-physically-first technique implemented using 1976-era 
assemblers. Using HLASM, I don't know how to make literals physically 
precede the code that declares them without the use of LOCTR, but I'm 
willing to learn. 

-- 
Edward E Jaffe 
Phoenix Software International, Inc 
831 Parkview Drive North 
El Segundo, CA 90245 
http://www.phoenixsoftware.com/ 

Reply via email to