Personally, I like to define my own register equates.  This allows me to
also comment on their use at the same time they are defined rather than
separately.

Christopher J Pomasl
Principal Software Engineer,  CA Technologies, inc
Lead, Sound of the Rockies barbershop chorus
Always remember, you are unique...just like everyone else.

On 08/01/2013 07:41 AM, Victor Gil wrote:
> Personally, I never liked YREGS macro, mainly for 2 reasons - it's not
> elegant and it doesn't account for already defined registers.
>
> So here's an alternative
>
>          MACRO
>          MREGS
> .* DEFINE GENERAL-PURPOSE REGISTERS (EXCEPT THOSE ALREADY DEFINED)
> &N       SETA 0
> .LOOP    AIF (&N GT 15).DONE
> &T       SETC   'R&N'
>          AIF (D'&T).SKIP
> R&N      EQU  &N
> .SKIP    ANOP
> &N       SETA &N+1
>          AGO .LOOP
> .DONE    MEND
>
> -Victor-
>
>
>
> On Thu, 1 Aug 2013 06:30:41 -0500, Baron Carter
> <[email protected]> wrote:
>
>> And there is ASMDREG which also has equates for other registers:- Access,
>> Control, Floating Point....
>>
>> -----Original Message-----
>> From: IBM Mainframe Assembler List [mailto:[email protected]]
>> On Behalf Of Paul Gilmartin
>> Sent: Wednesday, July 31, 2013 16:34
>> To: [email protected]
>> Subject: Re: YREGS MACRO doc?
>>
>> On 2013-07-31 15:01, Gerhard Postpischil wrote:
>>> On 7/31/2013 1:44 PM, Bernd Oppolzer wrote:
>>>> When I came to the site where I am actually working 25 years ago, I
>>>> was very surprised that they use RA to RF for 10 to 15 - I never met
>>>> that before, but you get accustomed to that very quickly. It's always
>>>> two characters, after all ...
>>> I first came across this form in the OS/360 reader/interpreter.
>>> Personally I don't like it because searches on RB and RE get many more
>>> false hits than R11 and R14.
>>>
>> And, of course, since there's no standard, the system macros must use pure
>> numeric designators.  And with a mixture of conventions, XREF doesn't
>> reliably list register references.
>> IATYREGS is somewhat unusual among IBM macros in that it sets a flag so it
>> can exit if it's used twice, and some other JES3 macros invoke IATYREGS so
>> they _can_ use register mnemonics.
>>
>> I think I've also seen GR0-GR15, which likewise reduces the likelihood of
>> false hits in searches.
>>
>> CDC 6600 et al. made the register names predefined, reserved, and
> mandatory.
>> It was impossible to confuse L and LR; the operands distinguish them.  And
>> no need for unintuitive conventions such as "7" means constant 7 and "(7)"
>> means register 7 in macro arguments.  It was "7" or "X7".  So, no need for
>> such as IHBINRRA.  And less incentive to print macro expansions; they did
>> what they appeared to from the call.
>>
>> -- gil

Reply via email to