NILH, not NIHL!

Sheesh, assembler is hard :-)

Too bad it's been obviated at this point, I was going to suggest NILF R0,x'7ffffffe'.

sas

On 4/2/2016 12:05, Ed Jaffe wrote:
On 4/2/2016 6:51 AM, Peter Relson wrote:
And of course none of the IBM-Main readers would ever rely on an empirical test.

Haha! Of course not! ;-)

(But, ASSEMBLER-LIST readers might ijs... :-) )

The intent of the doc is to show that the 64-bit GR0 can be used as a BASSM target in all cases. I'll get it updated to make it clear that bits 0-31 are set to 0's for the AMODE 24 and AMODE 31 cases, and are not necessarily 0 for the AMODE 64 case when LOAD with ADDR64 was used. And if RMODE 64 is ever supported for normal LOAD, then the AMODE 64 case would change too.

Thanks, Peter! That's a big help!

Otherwise, people will be putting LLGTRs into their code and then removing them (or forgetting to) if/when RMODE(64) becomes reality...

With all of this in mind, I suppose I should amend my example to read:

        LOAD  EPLOC==CL8'MSGTABLE'     Load external message table
        TMLL  R0,X'0001'               RMODE(64) ?
        JO    *+8   ---------------\   Branch if yes
        NIHL  R0,X'7FFF'           |   Turn of 31-bit indicator
        NILL  R0,X'FFFE'  <--------/   Turn of 64-bit indicator
        STG   R0,MsgTable              Save clean table address

Reply via email to