On Fri, 13 Aug 2010 13:13:47 -0700, Edward Jaffe wrote: >David Bond wrote: >> The biggest drawback to GR32/GR64 checking, even if it was correctly >> implemented, is that the assembler does not know the AMODE so does not >> know if LA or MVCLE reference 32 or 64 bits of the registers. > >It's understandable that GR32 is used for modal instructions. It's >rather unfortunate that GR64 is not accepted. It would be better if both >GR32 and GR64 were accepted. There are only a handful of modal >instructions. The same goes for any base register reference.
I disagree that it is "understandable". The modal operands should accept all of the types: GR, GR32 and GR64. Anything else means that the code does not match reality and so requires a comment to explain the disconnect. It is precisely this kind of problem that prevents me from using GR32 and GR64 as types. If I have to know both the instruction set and HLASM's peculiarities well enough to code the operand but also how the instruction actually works, then the GR32/GR64 checking is not helping me. I want the facility to help me instead of get in my way. I also want it help anyone reading my code to understand what the code is doing. It sounds like the GR32 vs. GR64 checking in HLASM has still not been fixed to do more good than harm. And if the modal instruction operands accepted both GR32 and GR64 types then the operand type used could be used in the RXREF to show how much of the register is referenced or modified. That would be useful information, especially if low half/high half register references were to be reported by HLASM. David