Ol' friend, your test is incomplete. That LMG doesn't go far enough.
Bob
On 4/1/2016 3:36 PM, Ed Jaffe wrote:
On 3/31/2016 2:03 PM, Tom Marchant wrote:
ITYM R0.
Indeed!
And the manual doesn't specify that the address returned is a clean 64-bit
address except if it is AMODE 64. So I'd suggest replacing the NILH with
LLGTR R0,R0
Empirical testing shows R0 is returned with a clean 64-bit address, even for an
old 24-bit program:
TCB#6 RB#1 ------------------------------------------------- z/XDC TPUT
INTERFACE ------------
XDC ===>
_ 00000000_0E957100 0s (A.S.EDJX2) --- EJESSUBS.EJESSUBS+2100, EJESSUBS+2100,
XPRIVATE+1A57100
_ +2100 ***************************************************************
_ +2100 * Empirical Test for My ASSEMBLER-LIST
Friends *
_ +2100 ***************************************************************
_ +2100 EBEF C060 0004 LMG R14,R15,=4FD'-1' Put garbage in R14-R1
_ +2106 LOAD EPLOC==CL8'IEFBR14' Load a module
_ +2106 4100 C0C0 + LA 0,=CL8'IEFBR14' LOAD PARAMETER
INTO REG 0
_ +210A 1B11 + SR 1,1 SHOW NO DCB PRESENT
_ +210C 0A08 + SVC 8
_ +210E 0000 > DC H'0' Force an abend
_ +210E 0000 > +0 *..*
XDC ===> L RWREGS
_ RW0 00000000_00EC5000 00000000_00000001 00000000_7F363434
00000000_00000000
_ RW4 00000000_7F33A71E 00000000_0E9747CE 00000000_00000041
FFFFFFFF_FFFFF000
_ RW8 00000000_7F466D00 00000000_7F33C1A4 00000000_7F33A000
00000000_0E955000
_ RW12 00000000_0E98E7B0 00000000_7F466E00 FFFFFFFF_FFFFFFFF
00000001_00000000