At 11:51 -0600 on 02/21/2006, Todd Burch wrote about Re:
z/Architecture Principles of Operation (SA22-7832-04):
Certainly I can do that. And, when I do that, I have absolutely no need for
the LDF instructions.
The purpose of the Long Displacement Facility is to provide relief for base
register constraint. Coding a "LAY R1" to get around a macro expansion, and
taking up a base register to do that, doesn't buy me diddly squat in terms
of "base register relief".
R1 IS the register that is loaded by the MF=(E,LIST) parm. Thus
loading it via a LAY and coding MF=(E,(1)) tells the Macro to not
generate the LA 1,List (since R1 has already been loaded). There is
no EXTRA register used. Here are the expansions for your review.
000000 00000 00014 1 TESTMF CSECT
R:C 00000 2 USING *,12
3 WTO MF=(E,LIST)
000000 4110 C010 00010 7+ LA 1,LIST
000004 0A23 8+ SVC 35
000006 E310 C010 0071 00010 9 LAY 1,LIST
10 WTO MF=(E,(1))
00000C 0A23 14+ SVC 35
000010 15 LIST DS F
16 END
----------------------------------------------------------------------
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