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
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,
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
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
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
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
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
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
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
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
-
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
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
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
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
: 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
"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)
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.
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
-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
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
"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
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
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
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
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
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
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
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
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,
... 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
-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
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!
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,
:
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
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,
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...
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
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
-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
problem as Baseless,
that it is inaccurate. Base registers are still needed
for data. Relative addressing removes the requirement
for most code.
--
Tom Marchant
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
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
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
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
; '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
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
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
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
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.
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
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
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
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:
'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
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
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
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
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
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
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
[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
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
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 -
,
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
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
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
@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
,
---
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
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))
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
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:
] 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
, 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
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
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
@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
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
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
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
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
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
... 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
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.
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
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
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:
@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
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
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
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
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
:
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
-
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
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
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
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
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
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
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
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 - 100 of 120 matches
Mail list logo