Martin, Very clever! Personally, for everyday use, I prefer things a bit more "plain and simple." Though, I might consider creating a macro to incorporate such a technique: EXWOW R2,(PACK,DWORD,0(R10)) EXWOW R2,(MVC,DESTINATION_BUFFER,0(R10))
The latter being only marginally better than: EX R2,=S(&MVC,DESTINATION_BUFFER,0(R10)) Of course, one could simply locate the target instruction in with constant data that is assembled into program object, since that already has a base. I use LARL with EX because I like to keep the target in the vicinity of the code with which it belongs logically. I do like that your technique does keep the essential nature of the target very much within eyeball range. Doug http://www.compuware.com/ The contents of this e-mail are intended for the named addressee only. It contains information that may be confidential. Unless you are the named addressee or an authorized designee, you may not copy or use it, or disclose it to anyone else. If you received it in error please notify us immediately and then destroy it. From: IBM Mainframe Assembler List [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU] On Behalf Of Martin Truebner Sent: Wednesday, June 06, 2012 11:46 AM To: ASSEMBLER-LIST@LISTSERV.UGA.EDU Subject: Re: Base registers Douglas, how is this (until EXRL is legalised ;-) EX R2,=S(7*16+&PACK,DWORD,0(R10)) And Yes- I am aware of problems in the literalpool having different usings - (for Robin) and I have verified that R2 is between F and 0 and that R10 is on the beginning of a string) -- Martin Pi_cap_CPU - all you ever need around MWLC/SCRT/CMT in z/VSE more at http://www.picapcpu.de