Yes, definitely interesting stuff. I'm pretty pedestrian and have only used the newer insert instructions with actual immediate values, probably as the designers intended...
IILF R2,C'HOLA' IILF R2,EquHOLA EquHOLA EQU C'HOLA' Resulting in x'C8D6D3C1' in R2. But when C'HOLA' is defined as a constant, as in Mr. Maltz example... IILF R2,LBL_HOLA LBL_HOLA DC C'HOLA' This results in the address of LBL_HOLA being placed in R2. This made no sense initially, but I suppose the address is actually the extended immediate value for the label. However this explanation runs into problems when dealing with 64bit addresses, and the fact that none of the II instructions insert more than 32bits. Starting to think this is due to straying from intended/expected usage. :-) Mike -----Original Message----- From: IBM Mainframe Assembler List [mailto:[email protected]] On Behalf Of Seymour J Metz Sent: Monday, November 23, 2020 9:18 PM To: [email protected] Subject: Re: Relocatable immediate values Caution! This message was sent from outside your organization. IILF and LGFI will load whatever is in the immediate operand. PoOps is perfectly clear on that. What goes into the high bit is an assembler issue, but anything but 0 would cause problems. If you're going to us it in, e.g., BASSM, the use FOO+X'80000000' rather than FOO for switching to 31 bit mode. AMODE64 has additional issues. -- Shmuel (Seymour J.) Metz http://mason.gmu.edu/~smetz3 ________________________________________ From: IBM Mainframe Assembler List <[email protected]> on behalf of Melvyn Maltz <[email protected]> Sent: Monday, November 23, 2020 8:11 PM To: [email protected] Subject: Relocatable immediate values I have to thank my esteemed colleague Don Higgins for enabling this post IILF R3,MYLABEL ... MYLABEL DC 'HELLO' This is interesting on a number of levels, yes, the immediate value is relocatable I guess this is a 'good thing' for 32-bit immediate instructions...hmmm My concern is though, are these instructions modal ? I haven't tested all variants, but in 31-bit mode is the top bit on ? If so, LGFI would propagate it...if so it doesn't seem like a good thing Not a lot about this in the PoP...nada
