Re: Eliminating Base Registers (was: Inlining routines)

2022-04-03 Thread Seymour J Metz
in Trübner [mar...@pi-sysprog.de] Sent: Saturday, April 2, 2022 12:55 PM To: ASSEMBLER-LIST@LISTSERV.UGA.EDU Subject: Re: Eliminating Base Registers (was: Inlining routines) Charles (et al), I like the entry being at the CSECT and the base pointing to the entry of the CSECT (and I am lazy) so

Re: Eliminating Base Registers

2022-04-03 Thread Seymour J Metz
of Martin Ward [mar...@gkc.org.uk] Sent: Saturday, April 2, 2022 1:21 PM To: ASSEMBLER-LIST@LISTSERV.UGA.EDU Subject: Re: Eliminating Base Registers On 01/04/2022 23:01, Bernd Oppolzer wrote:> where some people without much knowlegde simply used 3, 4 or 5 base > registers to covers the whole program,

Re: Eliminating Base Registers (was: Inlining routines)

2022-04-02 Thread Bernd Oppolzer
Thanks. When I started programming in ASSEMBLER (and teaching) in the mid 1980s, I didn't think much about base registers in the beginning. I also used one base register when starting the mainline, and I used BAL R5,SUBR and BR R5 to manage my internal subroutines. This worked OK for me

Re: Eliminating Base Registers (was: Inlining routines)

2022-04-02 Thread Charles Mills
mbler List [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU] On Behalf Of Martin Trübner Sent: Saturday, April 2, 2022 9:56 AM To: ASSEMBLER-LIST@LISTSERV.UGA.EDU Subject: Re: Eliminating Base Registers (was: Inlining routines) Charles (et al), I like the entry being at the CSECT and the base pointing to

Re: Eliminating Base Registers

2022-04-02 Thread Martin Ward
On 01/04/2022 23:01, Bernd Oppolzer wrote:> where some people without much knowlegde simply used 3, 4 or 5 base registers to covers the whole program, no matter if it consisted of code sections, data areas or subroutines. Of course, they ran out of registers. Amateurs :-) Here is a l

Re: Eliminating Base Registers (was: Inlining routines)

2022-04-02 Thread Martin Trübner
Charles (et al), I like the entry being at the CSECT and the base pointing to the entry of the CSECT (and I am lazy) so I borrowed  a neat technique from Ed Jaffe I marked it with "<--- this is new " in your sample It costs only 4bytes and helps me. TEST CSECT MAIN1LOCTR

Re: Eliminating Base Registers (was: Inlining routines)

2022-04-02 Thread Charles Mills
Subject: Re: Eliminating Base Registers (was: Inlining routines) A couple of things. One, yes, my assertion that it is easy was based on my own experience primarily with modest-sized programs that I had written myself -- in some cases years earlier. If you are talking about 10,000 lines of spaghetti

Re: Eliminating Base Registers (was: Inlining routines)

2022-04-02 Thread Charles Mills
local macros and various cleverness, then it could be a large and fraught project. Two, I am not advocating for "baseless" programming -- eliminating base registers like they were forbidden GOTOs in some COBOL program. a. Relative jumps are goodness in any event. They are thought to be

Re: Eliminating Base Registers (was: Inlining routines)

2022-04-01 Thread Bernd Oppolzer
I would like to add: I saw old large programs with mixed code and data areas where some people without much knowlegde simply used 3, 4 or 5 base registers to covers the whole program, no matter if it consisted of code sections, data areas or subroutines. Of course, they ran out of registers

Re: Eliminating Base Registers (was: Inlining routines)

2022-04-01 Thread Bernd Oppolzer
See some answers below. In general the elimination of base registers for the code section with existing large programs is a major task and needs careful testing. I did this sometimes, and I had many issues and headaches, until the programs worked (again). More hints below ... Kind regards

RES: Eliminating Base Registers (was: Inlining routines)

2022-04-01 Thread João Reginato
- De: IBM Mainframe Assembler List Em nome de Martin Trübner Enviada em: sexta-feira, 1 de abril de 2022 16:54 Para: ASSEMBLER-LIST@LISTSERV.UGA.EDU Assunto: Re: Eliminating Base Registers (was: Inlining routines) VSE does not have IEABRX(X) but it has MAKEREL you can find

Re: Eliminating Base Registers (was: Inlining routines)

2022-04-01 Thread Martin Trübner
VSE does not have IEABRX(X) but it has MAKEREL you can find it on the vmworkshop page http://workshop.velocitysoftware.com/martin/index.shtml Martin

Re: Eliminating Base Registers (was: Inlining routines)

2022-04-01 Thread Charles Mills
y" if you are at a sufficient level. Charles -Original Message- From: IBM Mainframe Assembler List [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU] On Behalf Of Dave Clark Sent: Friday, April 1, 2022 12:32 PM To: ASSEMBLER-LIST@LISTSERV.UGA.EDU Subject: Re: Eliminating Base Registers

Re: Eliminating Base Registers (was: Inlining routines)

2022-04-01 Thread Dave Clark
My recent project (external assembler REXX function for VSAM I/O) is what got me thinking more seriously about eliminating the need for code base registers. The main routine links three base registers to cover the code and trailing constants -- in spite of splitting out to four other extern

Re: Eliminating Base Registers (was: Inlining routines)

2022-04-01 Thread Charles Mills
: Eliminating Base Registers (was: Inlining routines) "IBM Mainframe Assembler List" wrote on 04/01/2022 02:14:38 PM: > Where I disagree is on the base register issue. Base registers and > code addressability issues should have gone away. It is pretty > trivial to r

Re: Eliminating Base Registers (was: Inlining routines)

2022-04-01 Thread Dave Clark
"IBM Mainframe Assembler List" wrote on 04/01/2022 02:51:13 PM: > some brief comments: > plus IBM macros have to be converted, there should be a macro to do that Thanks. I did some reading at the link subsequently sent to this and I checked my system. Apparently that macro (IEABRCX)

Re: Eliminating Base Registers (was: Inlining routines)

2022-04-01 Thread Charles Mills
11:59 AM To: ASSEMBLER-LIST@LISTSERV.UGA.EDU Subject: Re: Eliminating Base Registers (was: Inlining routines) On Apr 1, 2022, at 12:51:13, Gary Weinhold wrote: > > some brief comments: > plus IBM macros have to be converted, there should be a macro to do that > <https://www.ibm.

Re: Eliminating Base Registers (was: Inlining routines)

2022-04-01 Thread Paul Gilmartin
Clark wrote: >> "IBM Mainframe Assembler List" wrote on >> 04/01/2022 02:14:38 PM: >>> Where I disagree is on the base register issue. Base registers and >>> code addressability issues should have gone away. It is pretty >>> trivial to replace old

Re: Eliminating Base Registers (was: Inlining routines)

2022-04-01 Thread Charles Mills
-write data with read-write data. Charles -Original Message- From: IBM Mainframe Assembler List [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU] On Behalf Of Dave Clark Sent: Friday, April 1, 2022 11:42 AM To: ASSEMBLER-LIST@LISTSERV.UGA.EDU Subject: Eliminating Base Registers (was: Inlining routines

Re: Eliminating Base Registers (was: Inlining routines)

2022-04-01 Thread Gary Weinhold
some brief comments: plus IBM macros have to be converted, there should be a macro to do that On 2022-04-01 2:41 p.m., Dave Clark wrote: "IBM Mainframe Assembler List" wrote on 04/01/2022 02:14:38 PM: Where I disagree is on the base register issue. Base registers and code addr

Eliminating Base Registers (was: Inlining routines)

2022-04-01 Thread Dave Clark
"IBM Mainframe Assembler List" wrote on 04/01/2022 02:14:38 PM: > Where I disagree is on the base register issue. Base registers and > code addressability issues should have gone away. It is pretty > trivial to replace old branches with their newer relative > counterp

Re: Base registers

2012-06-19 Thread Peter Relson
My quibble with the terms being bandied about is that neither unbased nor baseless is factually correct for a large percentage of modules that use relative branches. They have a base to their static data (and, yes, sometimes that base is not persistent and is created only when needed). They just

Re: Base registers

2012-06-19 Thread McKown, John
OK, I can live with jumpify. I would just like something that is generally acceptable to the community. Only minus is that it doesn't say anything about the use of Relative and Immediate instructions. Of which I am also a big fan. -- John McKown Systems Engineer IV IT Administrative Services

Re: Base registers

2012-06-19 Thread Joe Testa
To make it IBM-like, you'd have to call it the Jumpify Facility. :-) -- From: Peter Relson rel...@us.ibm.com Sent: Tuesday, June 19, 2012 9:21 AM To: ASSEMBLER-LIST@LISTSERV.UGA.EDU Subject: Re: Base registers My quibble with the terms being

Re: Base registers

2012-06-19 Thread John Gilmore
Jumpify is acceptable as a nonce word, in, say, EJ's title. It is nevertheless barbarous English and should not be adopted for routine use. JRI? --jg On 6/19/12, McKown, John john.mck...@healthmarkets.com wrote: OK, I can live with jumpify. I would just like something that is generally

Re: Base registers

2012-06-19 Thread Paul Gilmartin
On Jun 19, 2012, at 07:51, McKown, John wrote: ... I prefer using Branch Relative, Relative (such as LARL vice LAY), and Immediate (such as LHI vice LH) instructions. And I do recognize that it is not always possible, such as accessing locations outside of the enclosing CSECT. That would

Re: Base registers

2012-06-19 Thread McKown, John
and Health Insurance Company.SM -Original Message- From: IBM Mainframe Assembler List [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU] On Behalf Of John Gilmore Sent: Tuesday, June 19, 2012 8:45 AM To: ASSEMBLER-LIST@LISTSERV.UGA.EDU Subject: Re: Base registers Jumpify is acceptable

Re: Base registers

2012-06-19 Thread Tom Marchant
On Tue, 19 Jun 2012 08:04:35 -0600, Paul Gilmartin wrote: On Jun 19, 2012, at 07:51, McKown, John wrote: ... I prefer using Branch Relative, Relative (such as LARL vice LAY), and Immediate (such as LHI vice LH) instructions. And I do recognize that it is not always possible, such as accessing

Re: Base registers

2012-06-19 Thread Gord Tomlin
You can refer to entry points outside of the current CSECT if you specify the GOFF assembler option. -- Regards, Gord Tomlin Action Software International (a division of Mazda Computer Corporation) Tel: (905) 470-7113, Fax: (905) 470-6507 On 2012-06-19 10:04, Paul Gilmartin wrote: On Jun 19,

Re: Base registers

2012-06-19 Thread John Ehrman
... I prefer using Branch Relative, Relative (such as LARL vice LAY), and Immediate (such as LHI vice LH) instructions. And I do recognize that it is not always possible, such as accessing locations outside of the enclosing CSECT. That would require an enhancement to Binder. But that's not

Re: Base registers

2012-06-19 Thread McKown, John
-Original Message- From: IBM Mainframe Assembler List [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU] On Behalf Of John Ehrman Sent: Tuesday, June 19, 2012 11:55 AM To: ASSEMBLER-LIST@LISTSERV.UGA.EDU Subject: Re: Base registers ... I prefer using Branch Relative, Relative (such as LARL

Re: Base registers

2012-06-18 Thread Rob van der Heij
On Mon, Jun 18, 2012 at 6:52 AM, Gerhard Postpischil gerh...@valley.net wrote: Not sure what's confusing about it; I've had an INC for ages (no DEC, instead put INC=-1 on INC - that may be confusing?). It changes either a register or storage, and had a version for halfwords named INCH g Yep!

Re: Base registers

2012-06-18 Thread Binyamin Dissen
On Mon, 18 Jun 2012 11:24:14 +1000 Robin Vowels robi...@dodo.com.au wrote: :From: Watkins, Douglas douglas.watk...@compuware.com :Sent: Wednesday, 6 June 2012 11:28 PM : Here's one way to do standard EXecute without a base register: : AHI R2,-1 Minus 1 for EX :BTW, :

SV: Base registers

2012-06-18 Thread Thomas Berg
Gilmore Skickat: den 17 juni 2012 23:01 Till: ASSEMBLER-LIST@LISTSERV.UGA.EDU Ämne: Re: Base registers Unbased is better by a wide margin than baseless. I should still, however, prefer a non-negative form. John Gilmore, Ashland, MA 01721 - USA On 6/17/12, Gerhard Postpischil gerh

Re: Base registers

2012-06-18 Thread Fred van der Windt
All your bases are belong to us ? For great justice. Fred! - ATTENTION: The information in this electronic mail message is private and confidential, and only intended for the addressee. Should you receive this message by mistake,

Re: Base registers

2012-06-18 Thread Rob van der Heij
On Mon, Jun 18, 2012 at 10:36 AM, Thomas Berg thomas.b...@swedbank.se wrote: All your bases are belong to us ? LOL. Just when I was convinced we had cross-talk with the IBM-MAIN list ;-) May the source be with you...

Re: Base registers

2012-06-18 Thread Steve Comstock
On 6/18/2012 4:05 AM, Fred van der Windt wrote: All your bases are belong to us ? For great justice. Fred! Says the Dutchman replying to the Swede! I love this list! -- Kind regards, -Steve Comstock The Trainer's Friend, Inc. 303-355-2752 http://www.trainersfriend.com * To get a good

Re: Base registers

2012-06-18 Thread Phil Smith III
Steve Comstock wrote: I was going to suggest 'free base' as a 'positive' way of saying one is relatively free from using base registers, but that term also has unfortunate conotations. Indeed...debased would be my choice! :-) ...phsiii

Re: Base registers

2012-06-18 Thread McKown, John
-Original Message- From: IBM Mainframe Assembler List [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU] On Behalf Of Rob van der Heij Sent: Monday, June 18, 2012 6:23 AM To: ASSEMBLER-LIST@LISTSERV.UGA.EDU Subject: Re: Base registers On Mon, Jun 18, 2012 at 10:36 AM, Thomas Berg thomas.b

Re: Base registers

2012-06-18 Thread Tom Marchant
problem as Baseless, that it is inaccurate. Base registers are still needed for data. Relative addressing removes the requirement for most code. -- Tom Marchant

Re: Jumpify Your Code (Was: Base registers)

2012-06-17 Thread Martin Truebner
Ed, can I link to yours from mine? http://pi-sysprog.de/free/makerel.html or (in another language) http://pi-sysprog.de/free/makereld.html on the very end -- Martin Pi_cap_CPU - all you ever need around MWLC/SCRT/CMT in z/VSE more at http://www.picapcpu.de

Re: Jumpify Your Code (Was: Base registers)

2012-06-17 Thread Edward Jaffe
On 6/17/2012 9:13 AM, Martin Truebner wrote: Ed, can I link to yours from mine? http://pi-sysprog.de/free/makerel.html or (in another language) http://pi-sysprog.de/free/makereld.html on the very end Of course! 8-) Your bilingual perspective (I mean VSE/MVS, not English/German ;-) ) is

Re: Base registers

2012-06-17 Thread Gerhard Postpischil
On 6/17/2012 9:05 AM, John Gilmore wrote: Words can of course have different specialized meanings in different contexts, but there is ordinarily an evolutionary path between these meanings. My favorite along these lines is stench, that did not always mean unpleasant. I vividly remember a

Re: Base registers

2012-06-17 Thread John Gilmore
Unbased is better by a wide margin than baseless. I should still, however, prefer a non-negative form. John Gilmore, Ashland, MA 01721 - USA On 6/17/12, Gerhard Postpischil gerh...@valley.net wrote: On 6/17/2012 9:05 AM, John Gilmore wrote: Words can of course have different specialized

Re: Base registers

2012-06-17 Thread Gord Tomlin
; 'baseless' can scarcely avoid connotations of dispensability when in fact it is the base registers that are largely dispensable. We need to look forward to a time when the use of base registers, multiple ones in particular, and the arbitrary segmentation of code into 4096-byte pieces will be perceived

Re: Base registers

2012-06-17 Thread J R
to to suggest freebase lest that be considered to have a negative connotation.) === Date: Sun, 17 Jun 2012 17:13:30 -0400 From: gt.ibm.li...@actionsoftware.com Subject: Re: Base registers To: ASSEMBLER-LIST@LISTSERV.UGA.EDU Why don't we jump to the underlying notion of the jump

Re: Base registers

2012-06-17 Thread J R
Sorry Steve. I didn't see your post until after I posted mine. === Date: Sun, 17 Jun 2012 17:35:36 -0400 From: jayare...@hotmail.com Subject: Re: Base registers To: ASSEMBLER-LIST@LISTSERV.UGA.EDU The problem is that all addresses are relative to something. Some are relative

Re: Base registers

2012-06-17 Thread Hobart Spitz
Steve. I didn't see your post until after I posted mine. === Date: Sun, 17 Jun 2012 17:35:36 -0400 From: jayare...@hotmail.com Subject: Re: Base registers To: ASSEMBLER-LIST@LISTSERV.UGA.EDU The problem is that all addresses are relative to something. Some are relative to a base

Re: Base registers

2012-06-17 Thread Robin Vowels
From: Watkins, Douglas douglas.watk...@compuware.com Sent: Wednesday, 6 June 2012 11:28 PM Here's one way to do standard EXecute without a base register: AHI R2,-1 Minus 1 for EX BTW, BCTR 2,0 will do a better job.

Re: Base registers

2012-06-17 Thread John McKown
On Mon, 2012-06-18 at 11:24 +1000, Robin Vowels wrote: From: Watkins, Douglas douglas.watk...@compuware.com Sent: Wednesday, 6 June 2012 11:28 PM Here's one way to do standard EXecute without a base register: AHI R2,-1 Minus 1 for EX BTW, BCTR 2,0 will do a

Re: Base registers

2012-06-17 Thread Gerhard Postpischil
On 6/17/2012 10:44 PM, John McKown wrote: As an aside, I was actually (foolishly) considering making macros called DEC (as in DEC Reg,Value = AHI Reg,0-Value with default of 1), INC (INC Reg,Value = AHI Reg,Value, default of 1), PRED Reg (DEC Reg,1), SUCC Reg (INC Reg). Then realized it would

Re: Base registers

2012-06-16 Thread John Gilmore
ISVs that have many VSE customers confront a special problem. If they judge it morally and/or economically appropriate to continue to support the ESL-trapped among these VSE customers they should do so by providing two code paths. To do this is a trivial and inexpensive, even in open code, as

Re: Base registers

2012-06-16 Thread Scott Ford
John, Can't comment on VSE , we don't have any VSE customers, our customers are z/OS only. I not sure what ESL is, I assume it's a pricing plan from IBM for VSE, haven't worked VSE in yrs Scott ford www.identityforge.com On Jun 16, 2012, at 9:59 AM, John Gilmore jwgli...@gmail.com wrote:

Re: Base registers

2012-06-16 Thread John Gilmore
'Jumpify your code' suggests to me that we should perhaps replace 'baseless', which in ordinary English means 'unfounded', with the acronym JBC, for 'Jump-based code'. John Gilmore, Ashland, MA 01721 - USA

Re: Base registers

2012-06-16 Thread Paul Gilmartin
On Jun 16, 2012, at 14:10, John Gilmore wrote: 'Jumpify your code' suggests to me that we should perhaps replace 'baseless', which in ordinary English means 'unfounded', with the acronym JBC, for 'Jump-based code'. No need. There are many instances where English accepts specialized meanings

Re: Base registers

2012-06-15 Thread Edward Jaffe
On 6/2/2012 5:38 PM, Tony Thigpen wrote: but there is none to be made for doing so in writing even a new single RSECT. How about this reason. We have several customers running our software that are on pre-MP3000 machines that don't even support relative instructions. They still pay us for

Re: Base registers

2012-06-15 Thread Edward Jaffe
On 6/5/2012 2:19 PM, Tom Marchant wrote: On Tue, 5 Jun 2012 15:59:36 -0400, Scott Ford wrote: where can you find a good sample of baseless assembler code ? Look for Ed Jaffe's SHARE presentation Jumpify your code. The original jumpify your code presentation was from 2007. When I updated it

Re: Base registers

2012-06-06 Thread Watkins, Douglas
Of Tom Marchant Sent: Tuesday, June 05, 2012 5:20 PM To: ASSEMBLER-LIST@LISTSERV.UGA.EDU Subject: Re: Base registers On Tue, 5 Jun 2012 15:59:36 -0400, Scott Ford wrote: where can you find a good sample of baseless assembler code ? Look for Ed Jaffe's SHARE presentation Jumpify your code. Baseless

Re: Base registers

2012-06-06 Thread Paul Gilmartin
On Jun 6, 2012, at 07:28, Watkins, Douglas wrote: Here's one way to do standard EXecute without a base register: AHI R2,-1 Minus 1 for EX *!not yetEXRL R2,_EX_MVC_OUTPUT (Move data to output buffer) LARL R10,_EX_MVC_OUTPUT Move data to EX

Re: Base registers

2012-06-06 Thread robin
From: Watkins, Douglas Sent: Wednesday, 6 June 2012 11:28 PM Here's one way to do standard EXecute without a base register: AHI R2,-1 Minus 1 for EX Still need test for negative. *!not yetEXRL R2,_EX_MVC_OUTPUT (Move data to output buffer) LARL

Re: Base registers

2012-06-06 Thread Watkins, Douglas
[mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU] On Behalf Of robin Sent: Wednesday, June 06, 2012 11:19 AM To: ASSEMBLER-LIST@LISTSERV.UGA.EDU Subject: Re: Base registers From: Watkins, Douglas Sent: Wednesday, 6 June 2012 11:28 PM Here's one way to do standard EXecute without a base register: AHI R2

Re: Base registers

2012-06-06 Thread Watkins, Douglas
it to anyone else. If you received it in error please notify us immediately and then destroy it. From: IBM Mainframe Assembler List [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU] On Behalf Of Paul Gilmartin Sent: Wednesday, June 06, 2012 11:02 AM To: ASSEMBLER-LIST@LISTSERV.UGA.EDU Subject: Re: Base

Re: Base registers

2012-06-06 Thread Martin Truebner
Douglas, how is this (until EXRL is legalised ;-) EX R2,=S(7*16+PACK,DWORD,0(R10)) And Yes- I am aware of problems in the literalpool having different usings - (for Robin) and I have verified that R2 is between F and 0 and that R10 is on the beginning of a string) -- Martin Pi_cap_CPU -

Re: Base registers

2012-06-06 Thread Kirk Talman
, Date: 06/06/2012 11:52 AM Subject: Re: Base registers Sent by: IBM Mainframe Assembler List ASSEMBLER-LIST@LISTSERV.UGA.EDU Douglas, how is this (until EXRL is legalised ;-) EX R2,=S(7*16+PACK,DWORD,0(R10)) And Yes- I am aware of problems in the literalpool having different usings

Re: Base registers

2012-06-06 Thread Watkins, Douglas
Truebner Sent: Wednesday, June 06, 2012 11:46 AM To: ASSEMBLER-LIST@LISTSERV.UGA.EDU Subject: Re: Base registers Douglas, how is this (until EXRL is legalised ;-) EX R2,=S(7*16+PACK,DWORD,0(R10)) And Yes- I am aware of problems in the literalpool having different usings - (for Robin) and I have

Re: Base registers

2012-06-06 Thread Watkins, Douglas
To: ASSEMBLER-LIST@LISTSERV.UGA.EDU Subject: Re: Base registers where is the length code for 0(r10) second operand? EX R2,=S(16*(7+16*(length_of_operand2-1)+PACK,DWORD,0(R10)) IBM Mainframe Assembler List ASSEMBLER-LIST@LISTSERV.UGA.EDU wrote on 06/06/2012 11:46:07 AM: From: Martin Truebner mar

Re: Base registers

2012-06-06 Thread Kirk Talman
@LISTSERV.UGA.EDU, Date: 06/06/2012 01:18 PM Subject: Re: Base registers Sent by: IBM Mainframe Assembler List ASSEMBLER-LIST@LISTSERV.UGA.EDU Length of second operand is in R2, ORed with that of the first operand, 7*16, when EX executes. http://www.compuware.com/ The contents of this e-mail

Re: Base registers

2012-06-06 Thread Jon Perryman
, --- On Behalf Of Martin Truebner Sent: Wednesday, June 06, 2012 11:46 AM Subject: Re: Base registers how is this (until EXRL is legalised ;-) EX R2,=S(7*16+PACK,DWORD,0(R10)) And Yes- I am aware of problems in the literalpool having

Re: Base registers

2012-06-06 Thread Martin Truebner
Jon, I suggest you learn how to use LOCTR. NO COMMENT It's a much simpler method than using =S() and certainly more readable. Simpler- maybe! more readable- judge it here: My suggestion: a SETC as intro and EX R2,=S(PKA,QWORD,0(R10))

Re: Base registers

2012-06-06 Thread Tuben, Gregg
it as intended. -Original Message- From: IBM Mainframe Assembler List [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU] On Behalf Of Martin Truebner Sent: Wednesday, June 06, 2012 11:58 AM To: ASSEMBLER-LIST@LISTSERV.UGA.EDU Subject: Re: Base registers Jon, I suggest you learn how to use LOCTR

Re: Base registers

2012-06-06 Thread Binyamin Dissen
On Wed, 6 Jun 2012 20:57:47 +0200 Martin Truebner mar...@pi-sysprog.de wrote: : I suggest you learn how to use LOCTR. :NO COMMENT It is good advice. : It's a much simpler method than using :=S() and certainly more readable. :Simpler- maybe! more readable- judge it here:

Re: Base registers

2012-06-05 Thread McKown, John
] On Behalf Of McKown, John Sent: Tuesday, June 05, 2012 7:08 AM To: ASSEMBLER-LIST@LISTSERV.UGA.EDU Subject: Re: Base registers -Original Message- From: IBM Mainframe Assembler List [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU] On Behalf Of Robert A. Rosenberg Sent: Monday, June 04

Re: Base registers

2012-06-05 Thread Dan Skomsky @ Home
, June 05, 2012 7:18 AM To: ASSEMBLER-LIST@LISTSERV.UGA.EDU Subject: Re: Base registers OOPS, the statement: AROUND DS 0H should be before the ST R13,4(,R1) -- John McKown Systems Engineer IV IT Administrative Services Group HealthMarkets(r) 9151 Boulevard 26 * N. Richland Hills * TX 76010 (817

Re: Base registers

2012-06-05 Thread Robert A. Rosenberg
At 07:57 -0400 on 06/05/2012, Tom Marchant wrote about Re: Base registers: Yuck. By adding a few LOCTR instructions, all of the data can be grouped at the beginning of the program. If relative branches are used in the code, the base register is needed only for data and literals. MYCSECT

Re: Base registers

2012-06-05 Thread Tom Marchant
On Tue, 5 Jun 2012 14:51:48 -0400, Robert A. Rosenberg wrote: At 07:57 -0400 on 06/05/2012, Tom Marchant wrote about Re: Base registers: By adding a few LOCTR instructions, all of the data can be grouped at the beginning of the program. If relative branches are used in the code, the base

Re: Base registers

2012-06-05 Thread McKown, John
@LISTSERV.UGA.EDU] On Behalf Of Scott Ford Sent: Tuesday, June 05, 2012 3:00 PM To: ASSEMBLER-LIST@LISTSERV.UGA.EDU Subject: Re: Base registers Guys, John and spoke where can you find a good sample of baseless assembler code ? I want to convert some of ours , need a sample to get me

Re: Base registers

2012-06-05 Thread Tom Marchant
On Tue, 5 Jun 2012 15:59:36 -0400, Scott Ford wrote: where can you find a good sample of baseless assembler code ? Look for Ed Jaffe's SHARE presentation Jumpify your code. Baseless is not an accurate description, IMO. You still need base registers to reference data. You can, however, use

Re: Base registers

2012-06-05 Thread Scott Ford
Sent: Tuesday, June 5, 2012 5:19 PM Subject: Re: Base registers On Tue, 5 Jun 2012 15:59:36 -0400, Scott Ford wrote: where can you find a good sample of baseless assembler code ? Look for Ed Jaffe's SHARE presentation Jumpify your code. Baseless is not an accurate description, IMO.  You still

Re: Base registers

2012-06-04 Thread Rob van der Heij
On Mon, Jun 4, 2012 at 2:45 AM, robin robi...@dodo.com.au wrote: There's no need to be scared of an odd value. It is, after all, the assembler that calculates displacements. If it bothers you, make it 4092. Still no extra instruction needed. Since most of the time you just new a few more

Re: Base registers

2012-06-04 Thread Gerhard Postpischil
On 6/3/2012 8:52 AM, John Gilmore wrote: Gerhard's point is not so easily dismissed; but 1) it is self-defeating for the technology if pushed very far: it freezes software in a posture that is now more than fifteen years behind the state of the art; and 2) the market for even moderately-priced

Re: Base registers

2012-06-04 Thread Martin Truebner
Odd (or nonconsecutive) Base registers Please- If there is ever a need to calculate a ZAP to this code with crossing the boundary between two registers- it will cause major headaches- The PLS compiler does it- but this is not an argument to do it. -- Martin Pi_cap_CPU - all you ever need

Re: Base registers

2012-06-04 Thread Martin Trübner
... said enough, maybe too much, about this topic Since the thread is still not dead- here is my point: Use of relative immediate feature is the way to go. The time it takes to convert a module from Bxx type to Jxxx is neglectable in comparison to finding an unused register (or restructuring

Re: Base registers

2012-06-04 Thread robin
From: Rob van der Heij Sent: Monday, 4 June 2012 4:41 PM Since most of the time you just new a few more bytes anyway ;-) ?? Doesn't make sense.

Re: Base registers

2012-06-04 Thread robin
From: Rob van der Heij Sent: Monday, 4 June 2012 4:41 PM On Mon, Jun 4, 2012 at 2:45 AM, robin robi...@dodo.com.au wrote: There's no need to be scared of an odd value. It is, after all, the assembler that calculates displacements. If it bothers you, make it 4092. Still no extra instruction

Re: Base registers

2012-06-04 Thread Rob van der Heij
change... 4092 or 4094 is a lot compared to what you need at that moment. But for future debugging it is much more obvious when the two base registers are really 4K apart. Seems to me that saving that single instruction is not worth the trouble. Rob

Re: Base registers

2012-06-04 Thread Tony Thigpen
I have yet to find that VSE-customer that pays for Vendor-software and has no money for hardware or operating-system-software AND demands new features. We have several that meet this requirement. Think about the VSE 2.6 on P390 ESL boxes. Tony Thigpen -Original Message - From:

Re: Base registers

2012-06-04 Thread McKown, John
@LISTSERV.UGA.EDU] On Behalf Of robin Sent: Monday, June 04, 2012 5:20 AM To: ASSEMBLER-LIST@LISTSERV.UGA.EDU Subject: Re: Base registers From: Rob van der Heij Sent: Monday, 4 June 2012 4:41 PM On Mon, Jun 4, 2012 at 2:45 AM, robin robi...@dodo.com.au wrote: There's no need to be scared of an odd

Re: Base registers

2012-06-04 Thread Martin Truebner
Tony, I have yet to find that VSE-customer that pays for Vendor-software and has no money for hardware or operating-system-software AND demands new features. We have several that meet this requirement. Think about the VSE 2.6 on P390 ESL boxes. I can imagine customers running that- but

Re: Base registers

2012-06-04 Thread Scott Ford
Martin, As the say options are like ...everyone had one...your entitled to yours Scott ford www.identityforge.com On Jun 4, 2012, at 8:27 AM, Martin Truebner mar...@pi-sysprog.de wrote: Tony, I have yet to find that VSE-customer that pays for Vendor-software and has no money for hardware

Re: Base registers

2012-06-04 Thread Scott Ford
That was a typo, opinionsour customers usually dictate needs many times Scott ford www.identityforge.com On Jun 4, 2012, at 9:00 AM, Scott Ford scott_j_f...@yahoo.com wrote: Martin, As the say options are like ...everyone had one...your entitled to yours Scott ford

Re: Base registers

2012-06-04 Thread Scott Ford
Thanks Gerhard, I feel the same way, especially when you work for a small company and your the only one writing Assembler, with customers asking for changes Scott ford www.identityforge.com On Jun 4, 2012, at 2:49 AM, Gerhard Postpischil gerh...@valley.net wrote: On 6/3/2012 8:52 AM, John

Re: Base registers

2012-06-04 Thread Bill Fairchild
: www.rocketsoftware.com -Original Message- From: IBM Mainframe Assembler List [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU] On Behalf Of robin Sent: Sunday, June 03, 2012 7:45 PM To: ASSEMBLER-LIST@LISTSERV.UGA.EDU Subject: Re: Base registers From: Chuck Arney Sent: Sunday, 3 June 2012 6:53 AM I

Re: Base registers

2012-06-04 Thread Scott Ford
- From: IBM Mainframe Assembler List [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU] On Behalf Of robin Sent: Sunday, June 03, 2012 7:45 PM To: ASSEMBLER-LIST@LISTSERV.UGA.EDU Subject: Re: Base registers From: Chuck Arney Sent: Sunday, 3 June 2012 6:53 AM I don't think you really want your base

Re: Base registers

2012-06-04 Thread Bodoh John Robert
The code we use here at my job usually has very large modules and used several base registers. I have seen the following technique used: MYCSECT CSECT USING *,R15 B BYID ID DCC'module-name' BASESDCA(MYCSECT) DCA(MYCSECT+4096) DC

Re: Base registers

2012-06-03 Thread Gerhard Postpischil
On 6/2/2012 6:57 PM, John Gilmore wrote: The two-base-register case for something just a bit over 4096 bytes in length is a particularly egregious, hidebound use of obsolete technology. Let's stop it. As they say, all generalities are false. Some of us write dual mode code, to be used both on

Re: Base registers

2012-06-03 Thread Binyamin Dissen
On Sun, 3 Jun 2012 02:52:11 -0400 Gerhard Postpischil gerh...@valley.net wrote: :On 6/2/2012 6:57 PM, John Gilmore wrote: : The two-base-register case for something just a bit over 4096 bytes in : length is a particularly egregious, hidebound use of obsolete : technology. Let's stop it. :As

Re: Base registers

2012-06-03 Thread Scott Ford
John, In am far from a Luddite , but I think you have to have need, i.e. project or task to want to change code. My need is a rather large exit we use for RACF. I inherited the exit , so I am trying to Incorporate modern methods and functionality in our code. When your making money off your

Re: Base registers

2012-06-03 Thread Binyamin Dissen
On Sun, 3 Jun 2012 12:38:07 -0400 Scott Ford scott_j_f...@yahoo.com wrote: :John, : :In am far from a Luddite , but I think you have to have need, i.e. project or task to want to change code. My need is a rather large exit we use for RACF. I inherited the exit , so I am trying to :Incorporate

Re: Base registers

2012-06-03 Thread John Gilmore
In my original post I noted that old code should be maintained using the technology in which it was written, typically using base registers for code addressability. Moreover, it is clear enough that ISVs must be customer-sensitive if they are to survive. These things said, there is still far too

Re: Base registers

2012-06-03 Thread Robert A. Rosenberg
At 12:21 -0400 on 06/03/2012, Scott Ford wrote about Re: Base registers: Robert, Thank you I appreciate the help been writing assembler a long time but not consistently every day. I have had to wear many function hats, sysprog vm,VSE,CICS,vtam ,tcpip, network engineer, etc. So I got rusty

  1   2   >