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
