PoOps states that the resolution of a relative address uses the address of the executed instruction.
For literal S-cons, there are two ways that the assembler could go, both problematical (-: -- Shmuel (Seymour J.) Metz http://mason.gmu.edu/~smetz3 ________________________________________ From: IBM Mainframe Assembler List [ASSEMBLER-LIST@LISTSERV.UGA.EDU] on behalf of Paul Gilmartin [00000014e0e4a59b-dmarc-requ...@listserv.uga.edu] Sent: Tuesday, November 23, 2021 6:56 PM To: ASSEMBLER-LIST@LISTSERV.UGA.EDU Subject: Re: ASMA030E? > On Nov 23, 2021, at 15:23:49, Charles Mills <charl...@mcn.org> wrote: > ... > LA somereg,=C'blah') > > And an EX rather than an L. Would that work for you? Does require a base > register. LARL would not, but it's 6 bytes rather than 4. > Does an EX of an LARL displace relative to the location of the EX or thee LARL? HLASM can only assume the latter and hope the hardware concurs. (Is the EX target accessed from the I-cache or the D-cache?) A harder question might be whether a literal S-constant assumes the USING in effect at the point of generating the literal or at the LTORG. Is this documented or does POLA suffice? (Thinking back a few weeks to a recherché use of a triple S-literal to generate an SS instruction in the literal pool.) -- gil