>>  "is there such a thing as specifying an implicit index register?",

I don't know about anybody else but, to me, "specify" and "imply" are
opposites unless you're actually talking about "overriding" a default
"implicit" value (meaning, specifying your own implicit/default value).
Then the answer is, "No."

Sincerely,

Dave Clark
--
int.ext: 91078
direct: (937) 531-6378
home: (937) 751-3300

Winsupply Group Services
3110 Kettering Boulevard
Dayton, Ohio  45439  USA
(937) 294-5331


On Tue, Sep 2, 2025 at 1:37 PM Tony Harminc <t...@harminc.com> wrote:

> On Tue, 2 Sept 2025 at 13:05, Steve Smith <
> 00001b5163999d8a-dmarc-requ...@listserv.uga.edu> wrote:
>
> Is there such a thing as an implicit index register? ;-)
> >
>
> Yes, there is. All RX instructions have an index register - it's not in any
> sense optional at the machine code level -  if you don't explicitly provide
> one in the assembler language then the assembler will generate the
> instruction using 0. (And of course register 0 when used as an index is
> deemed to have the value 0.) It's extremely common for RX instructions to
> be used in contexts where no index register is needed.
>
> But I'm sure you know all this. Now if you had asked "is there such a thing
> as specifying an implicit index register?", then that would have a
> different answer. ;-)
>
> Tony H.
>
>
> > On Tue, Sep 2, 2025 at 7:11 AM Jonathan Scott <
> > 00001b5498fc732f-dmarc-requ...@listserv.uga.edu> wrote:
> >
> > > This technique relies on the rule that including an explicit index
> > > register in an address expression suppresses the alignment warning,
> even
> > if
> > > that index register is zero (which may originally have been an
> > oversight).
> > > HLASM's own source code uses this technique, so it should be safe to
> use.
> > > I thought I had submitted a documentation update request a few years
> ago
> > to
> > > ensure this was properly documented, probably as part of the
> explanation
> > of
> > > message ASMA033I (which already shows how to use an explicit base
> > > register), but I can't find any mention in the current documentation,
> and
> > > having retired from IBM I no longer have access to the request queue
> so I
> > > can't tell whether it is still in the queue.
> > >
> > > Jonathan Scott
> > >
> > > -----Original Message-----
> > > From: IBM Mainframe Assembler List <ASSEMBLER-LIST@LISTSERV.UGA.EDU>
> On
> > > Behalf Of Peter Morrison
> > > Sent: 02 September 2025 11:10
> > > To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
> > > Subject: Using (0) to suppress alignment checks in HLASM
> > > Importance: High
> > >
> > > Hello,
> > >
> > >                 Has anyone else used (0) at the end of an RX (or RXY)
> > > instruction to suppress the assembler's alignment check?
> > >
> > >                 For Example:
> > >
> > >                                 DC X'00'        force next field to be
> > > unaligned
> > >                 X_UNAL  DC AL4(0)       Declare an unaligned fullword
> > >
> > >                                 L       R0,X_UNAL
> > >  gets a warning
> > >                                 L       R0,X_UNAL(0)
> > > same generated code (ix reg is 0) but no warning
> > >
> > >                 If so, where is it documented? (this is easier than a
> > > <PUSH ACONTROL/ACONTROL NOALIGN/instr/POP ACONTROL> sequence (and takes
> > no
> > > extra lines))
> > >
> > > Peter Morrison
> > >
> >
>

Reply via email to