Re: Variable-Length Parameter List Attributes

2023-10-18 Thread Paul Gilmartin
On 10/18/23 13:03:27, Dave Clark wrote: All I know is that is what my Notes client generates for replies with an internet-style history. Apparently, Notes sees your post as coming from the list rather than from you. Sorry.;-) 'Way back, RFC 822 specified tie From: and Sender:

Re: Variable-Length Parameter List Attributes

2023-10-18 Thread Dave Clark
"IBM Mainframe Assembler List" wrote on 10/18/2023 02:53:47 PM: > (Why's there no "Jeremy Nicoll ... wrote" attribution line above? I was > going to trim more of the old stuff away, above, and noticed it didn't > make sense.) All I know is that is what my Notes client generates for

Re: [EXTERNAL SENDER] Re: Variable-Length Parameter List Attributes

2023-10-18 Thread Jeremy Nicoll
On Wed, 18 Oct 2023, at 19:39, Dave Clark wrote: > "IBM Mainframe Assembler List" wrote on > 10/18/2023 02:35:40 PM: >> On Wed, 18 Oct 2023, at 19:09, Dave Clark wrote: >> > However, the following is the solution I'm actually going with. >> >> > LAR0,SHVPARM1 GET ADDRESS OF PARM

Re: Variable-Length Parameter List Attributes

2023-10-18 Thread Dave Clark
"IBM Mainframe Assembler List" wrote on 10/18/2023 02:48:17 PM: > The "DS" defines storage, but does not init the content. > On 10/18/2023 2:27 PM, Farley, Peter wrote: > > That’s even more clever than my suggestion! But I would use DS > > instead of DC. All you really want is the alignment

Re: Variable-Length Parameter List Attributes

2023-10-18 Thread Steve Thompson
The "DS" defines storage, but does not init the content. Steve Thompson On 10/18/2023 2:27 PM, Farley, Peter wrote: That’s even more clever than my suggestion! But I would use DS instead of DC. All you really want is the alignment after all, not any actual storage. Peter From: IBM

Re: [EXTERNAL SENDER] Re: Variable-Length Parameter List Attributes

2023-10-18 Thread Dave Clark
"IBM Mainframe Assembler List" wrote on 10/18/2023 02:35:40 PM: > On Wed, 18 Oct 2023, at 19:09, Dave Clark wrote: > > However, the following is the solution I'm actually going with. > > > LAR0,SHVPARM1 GET ADDRESS OF PARM 1 > > LAR1,SHVPARM2 GET ADDRESS OF PARM

Re: Variable-Length Parameter List Attributes

2023-10-18 Thread Jeremy Nicoll
On Wed, 18 Oct 2023, at 19:09, Dave Clark wrote: > However, the following is the solution I'm actually going with. > LAR0,SHVPARM1 GET ADDRESS OF PARM 1 > LAR1,SHVPARM2 GET ADDRESS OF PARM 2 > LAR2,SHVPARM2 GET ADDRESS OF PARM 3 Is that second

Re: Variable-Length Parameter List Attributes

2023-10-18 Thread Farley, Peter
That’s even more clever than my suggestion! But I would use DS instead of DC. All you really want is the alignment after all, not any actual storage. Peter From: IBM Mainframe Assembler List On Behalf Of Steve Smith Sent: Wednesday, October 18, 2023 2:22 PM To:

Re: Variable-Length Parameter List Attributes

2023-10-18 Thread Steve Smith
You can actually set LINKINST=DC,LINKOP=0H if you really like clever. sas On Wed, Oct 18, 2023 at 1:37 PM Ed Jaffe wrote: > On 10/18/2023 10:14 AM, Farley, Peter wrote: > > Build the parameter list once using this form: > > > > CALL

Re: Variable-Length Parameter List Attributes

2023-10-18 Thread Dave Clark
"IBM Mainframe Assembler List" wrote on 10/18/2023 01:56:58 PM: > On 10/18/23 11:49:12, Dave Clark wrote: > > ... > > The z/VSE CALL macro does not have those last two keywords. But, > > I can just code ORG *-2 after the CALL to accomplish the same thing. > > Thanks. > > > ORG or B

Re: Variable-Length Parameter List Attributes

2023-10-18 Thread Farley, Peter
Sounds like an RFE to the new VSEn owners is in order: “Please support LINKINST and LINKOP parameters to the CALL macro like z/OS CALL”. Hopefully they aren’t as reluctant or developer-resource-poor as IBM is about making useful enhancements. Peter From: IBM Mainframe Assembler List On

Re: Variable-Length Parameter List Attributes

2023-10-18 Thread Paul Gilmartin
On 10/18/23 11:49:12, Dave Clark wrote: ... The z/VSE CALL macro does not have those last two keywords. But, I can just code ORG *-2 after the CALL to accomplish the same thing. Thanks. ORG or B into code generated by a macro whose source you don't control is genuinely dangerous.

Re: Variable-Length Parameter List Attributes

2023-10-18 Thread Dave Clark
"IBM Mainframe Assembler List" wrote on 10/18/2023 01:14:13 PM: > Build the parameter list once using this form: > > CALL (15),(PARM1,PARM2,PARM2,BLOCK,PARM5),VL,MF=(E,PARMB), X >LINKINST=NOPR,LINKOP='0' The z/VSE CALL macro does not have those last two

Re: Variable-Length Parameter List Attributes

2023-10-18 Thread Ed Jaffe
On 10/18/2023 10:14 AM, Farley, Peter wrote: Build the parameter list once using this form: CALL (15),(PARM1,PARM2,PARM2,BLOCK,PARM5),VL,MF=(E,PARMB), X LINKINST=NOPR,LINKOP='0' Nice! I remember when LINKINST was added (and have used it for both BASR and BASSM).

Re: Variable-Length Parameter List Attributes

2023-10-18 Thread Tony Harminc
On Wed, 18 Oct 2023 at 13:12, Seymour J Metz wrote: > Yes. I was going to suggest N' but I looked it up and it's not valid on > ordinary symbols. > Maybe this calls (heh) for a new attribute - perhaps R' to fetch the duplication factor. In conditional assembly this would presumably fetch the

Re: Variable-Length Parameter List Attributes

2023-10-18 Thread Bill Hitefield
Dave, Are you trying to set/define the X'80' bit as part of the SHVPARMB definition? Or are you trying to use the assembler to tell you the byte an OI should target? If the former, you can do either of the following, keeping in mind you would need to be sure you do not negate the X'80' when you

Re: Variable-Length Parameter List Attributes

2023-10-18 Thread Tom Harper
I’m betting you would not see any difference in performance. Modern z machines will likely execute most of those instructions in parallel since there are no dependencies after the first LA. However, if you’re still concerned, I would code it this way: > L R15,ARXEXCOM > CALL

Re: Variable-Length Parameter List Attributes

2023-10-18 Thread Tony Harminc
On Wed, 18 Oct 2023 at 13:11, Ed Jaffe wrote: > On 10/18/2023 9:48 AM, Dave Clark wrote: > > > > Well, the other issue is performance. I potentially call this > > program hundreds of times. So, I can build the parameter list just once > > I have used CALL to build a parameter list and

Re: Variable-Length Parameter List Attributes

2023-10-18 Thread Farley, Peter
Build the parameter list once using this form: CALL (15),(PARM1,PARM2,PARM2,BLOCK,PARM5),VL,MF=(E,PARMB), X LINKINST=NOPR,LINKOP='0' Which generates this code: + DS0H + LA1,PARMB LOAD PARAMETER REG 1 + LA

Re: Variable-Length Parameter List Attributes

2023-10-18 Thread Seymour J Metz
Yes. I was going to suggest N' but I looked it up and it's not valid on ordinary symbols. -- Shmuel (Seymour J.) Metz http://mason.gmu.edu/~smetz3 עַם יִשְׂרָאֵל חַי From: IBM Mainframe Assembler List on behalf of Dave Clark Sent: Wednesday,

Re: Variable-Length Parameter List Attributes

2023-10-18 Thread Tony Harminc
On Wed, 18 Oct 2023 at 12:48, Dave Clark wrote: > [...] > Well, the other issue is performance. I potentially call this > program hundreds of times. So, I can build the parameter list just once > and call it as follows: > > LAR1,SHVPARMB > L R15,ARXEXCOM > BALR R14,R15 > >

Re: Variable-Length Parameter List Attributes

2023-10-18 Thread Ed Jaffe
On 10/18/2023 9:48 AM, Dave Clark wrote: Well, the other issue is performance. I potentially call this program hundreds of times. So, I can build the parameter list just once I have used CALL to build a parameter list and do nothing else in a manner similar to: CALL

Re: Variable-Length Parameter List Attributes

2023-10-18 Thread Dave Clark
"IBM Mainframe Assembler List" wrote on 10/18/2023 01:04:43 PM: > I would use CALL MF=E but you can always define a label for the OI > into the last word of the list. OK, so you're suggesting the following? ...and there isn't an attribute to retrieve the replication factor?

Re: Variable-Length Parameter List Attributes

2023-10-18 Thread Seymour J Metz
I would use CALL MF=E but you can always define a label for the OI into the last word of the list. -- Shmuel (Seymour J.) Metz http://mason.gmu.edu/~smetz3 עַם יִשְׂרָאֵל חַי From: IBM Mainframe Assembler List on behalf of Dave Clark Sent:

Re: Variable-Length Parameter List Attributes

2023-10-18 Thread Dave Clark
"IBM Mainframe Assembler List" wrote on 10/18/2023 12:15:12 PM: > Execute version of the CALL macro with MF=(E,parm_area_name) can fix that. Well, the other issue is performance. I potentially call this program hundreds of times. So, I can build the parameter list just once and

Re: Variable-Length Parameter List Attributes

2023-10-18 Thread Farley, Peter
Execute version of the CALL macro with MF=(E,parm_area_name) can fix that. From: IBM Mainframe Assembler List On Behalf Of Dave Clark Sent: Wednesday, October 18, 2023 12:09 PM To: ASSEMBLER-LIST@LISTSERV.UGA.EDU Subject: Re: Variable-Length Parameter List Attributes "IBM Mainframe Assembler

Re: Variable-Length Parameter List Attributes

2023-10-18 Thread Paul Gilmartin
On 10/18/23 09:53:35, Dave Clark wrote: SHVPARMB DS 5F However, the program I am calling will actually accept 4, 5, or 6 parameters in this list. So, I believe that T' will return F and L' will return 4, but is there any attribute that will return the 5 in the above definition? I ask, because

Re: Variable-Length Parameter List Attributes

2023-10-18 Thread Dave Clark
"IBM Mainframe Assembler List" wrote on 10/18/2023 11:56:55 AM: > Why not use the CALL macro with the VL parameter to mark the end of the list? Because I don't appreciate the in-line parameter list it generates. Sincerely, Dave Clark -- int.ext: 91078 direct: (937) 531-6378 home:

Re: Variable-Length Parameter List Attributes

2023-10-18 Thread Tom Harper
Dave, Why not use the CALL macro with the VL parameter to mark the end of the list? Sincerely, Tom Harper Phoenix Software International Sent from my iPhone > On Oct 18, 2023, at 11:53 AM, Dave Clark wrote: > > I have a definition such as the following. > > SHVPARMB DS5F > >

Variable-Length Parameter List Attributes

2023-10-18 Thread Dave Clark
I have a definition such as the following. SHVPARMB DS5F However, the program I am calling will actually accept 4, 5, or 6 parameters in this list. So, I believe that T' will return F and L' will return 4, but is there any attribute that will return the 5 in the above