(Attn: old post resurrection warning...)

Thomas, I'm using the Long Displacement Facility quite a bit in a piece of
code I'm writing now.  It's not so much that I need it for the CSECT, but
for the DSECT.

Overall, I'm pretty satisfied with it.  There is however, one consideration
that I'll point out.

There is no way to tell (that I have figured out) IBM macros to expand and
exploit this facility.  Any operands to fields that are past 4096 bytes of
your closest USING do not assemble properly.  (Examples, OPEN, GET)

So, for big sections, you still need to have a register available for
addressing around these macros.

Todd

FYI:  How to test for this facility:

      USING PSA,0
      TM    FLCEFACILITIESBYTE2,X'20'
      BNO   NOT_INSTALLED       LONG DISPLACEMENT FACILITY NOT INSTALLED
      DROP  0
      ...
      IHAPSA  LIST=YES
      END



On Wed, 21 Sep 2005 05:57:53 +0200, Thomas Berg <[EMAIL PROTECTED]> wrote:

>Thanks, was it any problems regarding certain instructions/operations
>and if so, had you some interestion solutions for them ?
>
>TIA
>Thomas Berg
>
>======  Tom Harper  ======  wrote    2005-09-21 05:41:
>> Thomas,
>>
>> We have used the long-displacement instructions to allow for the
generation of additional "compiled" code over the short-displacement
instructions, if the machine environment supports them, removing the old
size limitations of +/- 64K. It was really not all that difficult to
implement (baseless code generation). We have actually converted most of
our critical-path instruction sequences to baseless code, believing future
machines will execute these instructions faster, due to fewer base-register
interlocks. This was fairly straight-foward using the structured
programming facilities of HLASM.
>>
>> Tom Harper
>>
>> ________________________________
>>
>> From: IBM Mainframe Discussion List on behalf of Thomas Berg
>> Sent: Tue 9/20/2005 9:10 PM
>> To: IBM-MAIN@BAMA.UA.EDU
>> Subject: Re: z/Architecture Principles of Operation (SA22-7832-04)
>>
>>
>>
>> Have anyone used the long-displacement facility instructions
>> (as in consistently do so to reduce base register usage) ?
>> Are there any pitfalls or limitations that a relatively
>> inexperienced programmer should be aware of ?
>> Btw, why is there no "MVCY" instruction ?  Is it because of
>> the existence of the MVCL instruction or .. ?
>>
>> TIA
>> Thomas Berg
>>

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

Reply via email to