Some folks eschew the use of literals (I like them!) but if you use literals you end up with data following instructions physically. LOCTR is your friend for making the literals end up at the beginning of the CSECT.
Charles -----Original Message----- From: IBM Mainframe Assembler List [mailto:[email protected]] On Behalf Of Paul Gilmartin Sent: Monday, December 2, 2019 2:56 PM To: [email protected] Subject: Re: BASR to AMODE 64 (Baseless code) On 2019-12-02, at 13:02:39, Tom Marchant wrote: > > On Mon, 2 Dec 2019 19:27:42 +0000, Keith Moe wrote: > >> Even when using "baseless" code, I like to keep ONE register >> as the base/entry point of the module (plus what ever is >> needed for constant/data areas beyond the first 4K). > > Locating your constants at the beginning of the program allows > you to do that without sacrificing a register. > In the source? Branch around them or use LOCTR? What difference does it make as long as instructions plus data do not exceed 4Ki? Decades ago I belonged to a design team which had intense dissension about whether control block definitions should precede or follow instructions. Some of us thought the data were conceptually more important; others thought the code. And the former group was biased by experience with languages which required symbols defined before reference.
