m: "Seymour J Metz"
> To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
> Date: 11/13/2019 01:14 AM
> Subject: Re: Questionable Instructions in Obtaining EAX documentation
> Sent by: "IBM Mainframe Assembler List"
>
> I don't know about MVS, but OS/360 support fo
(Seymour J.) Metz
http://mason.gmu.edu/~smetz3
From: IBM Mainframe Assembler List on behalf of
John McKown
Sent: Tuesday, November 12, 2019 8:13 AM
To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
Subject: Re: Questionable Instructions in Obtaining EAX documentation
O
12, 2019 8:13 AM
To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
Subject: Re: Questionable Instructions in Obtaining EAX documentation
On Tue, Nov 12, 2019 at 6:56 AM Peter Relson wrote:
>
> What if R9 is not supposed to be zero? Maybe the code is looking at the
> PSA
> of anoth
AM
To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
Subject: Re: Questionable Instructions in Obtaining EAX documentation
On Tue, Nov 12, 2019 at 8:43 AM Tom Marchant <
00a69b48f3bb-dmarc-requ...@listserv.uga.edu> wrote:
> >I cannot fathom the reason to use _any_ base for the PSA oth
: IBM Mainframe Assembler List on behalf
of Gary Weinhold
Sent: Tuesday, November 12, 2019 11:28 AM
To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
Subject: Re: Questionable Instructions in Obtaining EAX documentation
I had a reason a couple weeks ago. We were trying to programmatically
verify whether we
I had a reason a couple weeks ago. We were trying to programmatically
verify whether we were running certain code on a zIIP or a CP. I found
a bit in the PSA that it appeared was set if you're on a zIIP and not if
not. It was not set for my PSA, (not surprising since I was on TSO ISPF
running
On Tue, 12 Nov 2019 08:49:36 -0600, John McKown wrote:
> I have never wanted to look at the PSA of any CP other than the
>one that I am running on. I'm not really sure why I would. Do you know of a
>reason to do so? I am curious.
I have no need to do so, and don't know why I might. But the post
On Tue, Nov 12, 2019 at 8:43 AM Tom Marchant <
00a69b48f3bb-dmarc-requ...@listserv.uga.edu> wrote:
> >I cannot fathom the reason to use _any_ base for the PSA other than GPR0.
> >It is simply wasteful of a scarce resource.
>
> It isn't "the" PSA. There is the PSA of the processor that you are
The question is what reasonable use is there is of USING on a number?
I'm not sure what the rest of this post means, but it doesn't seem relevant.
sas
On Mon, Nov 11, 2019 at 2:35 PM Paul Gilmartin <
0014e0e4a59b-dmarc-requ...@listserv.uga.edu> wrote:
> On 2019-11-11, at 09:08:39, Steve
On Tue, 12 Nov 2019 07:13:16 -0600, John McKown wrote:
>On Tue, Nov 12, 2019 at 6:56 AM Peter Relson wrote:
>
>>
>> What if R9 is not supposed to be zero? Maybe the code is looking at the
>> PSA
>> of another processor.
>>
>>
>> The normal way to accomplish that is
>> USING PSA,R9
>>
On Tue, Nov 12, 2019 at 6:56 AM Peter Relson wrote:
>
> What if R9 is not supposed to be zero? Maybe the code is looking at the
> PSA
> of another processor.
>
>
> The normal way to accomplish that is
> USING PSA,R9
> rather than leaving a time-bomb for those who come after by using
What if R9 is not supposed to be zero? Maybe the code is looking at the
PSA
of another processor.
The normal way to accomplish that is
USING PSA,R9
rather than leaving a time-bomb for those who come after by using "0".
Peter Relson
z/OS Core Technology Design
Gilmartin
Sent: Monday, November 11, 2019 11:10 AM
To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
Subject: Re: Questionable Instructions in Obtaining EAX documentation
On 2019-11-11, at 09:25:32, Jonathan Scott wrote:
>
> The USING 0 case used to occur from time to time by accident
> when using P
@LISTSERV.UGA.EDU
Subject: Re: Questionable Instructions in Obtaining EAX documentation
Why not -- from memory; untested; I could be off -- but something like
USING PSA,0
USING PSWDSECT,FLCIOPSW
?
Does not burn a register for nothing.
You can even name the DSECTs and have addressability
Assembler List on behalf
of Paul Gilmartin <0014e0e4a59b-dmarc-requ...@listserv.uga.edu>
Sent: Monday, November 11, 2019 2:35 PM
To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
Subject: Re: Questionable Instructions in Obtaining EAX documentation
On 2019-11-11, at 09:08:39, Steve Smith wrote:
>
@LISTSERV.UGA.EDU
Subject: Re: Questionable Instructions in Obtaining EAX documentation
On 2019-11-11, at 09:25:32, Jonathan Scott wrote:
>
> The USING 0 case used to occur from time to time by accident
> when using PL/S, PL/X or similar compilers which generate
> assembler as an inter
On 2019-11-11, at 09:08:39, Steve Smith wrote:
>
> I must agree that USING on numbers is a questionable feature; also operand
> 1 doesn't have to be 0, anything up to 2gb should work.
>
What's "questionable"? Should the Assembler require a
relocatable expression? Why?
An old (BitSavers)
On 2019-11-11, at 09:25:32, Jonathan Scott wrote:
>
> The USING 0 case used to occur from time to time by accident
> when using PL/S, PL/X or similar compilers which generate
> assembler as an intermediate step, if the programmer switched
> into assembler temporarily. This was because the
: Questionable Instructions in Obtaining EAX documentation
What if R9 is not supposed to be zero? Maybe the code is looking at the PSA
of another processor.
--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3
From: IBM Mainframe Assembler List on
behalf
, 2019 8:56 AM
To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
Subject: Re: Questionable Instructions in Obtaining EAX documentation
Works better than it used to! It's good to ~2 billion now, right? Was only good
to ~16 million when they coded it.
I'm not confused on how LA works in AMODE 31, am I? I never use
equ...@listserv.uga.edu>
Sent: Monday, November 11, 2019 10:39 AM
To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
Subject: Re: Questionable Instructions in Obtaining EAX documentation
On Fri, 8 Nov 2019 14:15:11 -0700, Bob Raicer wrote:
>Well, the statement from Peter Relson (and others) which is
>
Ref: Your note of Mon, 11 Nov 2019 11:08:39 -0500
The USING 0 case used to occur from time to time by accident
when using PL/S, PL/X or similar compilers which generate
assembler as an intermediate step, if the programmer switched
into assembler temporarily. This was because the programmers
I must agree that USING on numbers is a questionable feature; also operand
1 doesn't have to be 0, anything up to 2gb should work. My guess is
somebody in 1964 thought it was a good idea.
The example is an artificial construct to illustrate the issue. So it also
illustrates that you can lie to
On Fri, 8 Nov 2019 14:15:11 -0700, Bob Raicer wrote:
>Well, the statement from Peter Relson (and others) which is
>essentially:
>--
>LA R1,1 is exactly equivalent to LA R1,1(0). Just look at the
>generated object code.
>--
>is not totally true. It all depends upon which USINGs
On Mon, Nov 11, 2019 at 7:56 AM Charles Mills wrote:
> Works better than it used to! It's good to ~2 billion now, right? Was only
> good to ~16 million when they coded it.
>
> I'm not confused on how LA works in AMODE 31, am I? I never use it for
> integer arithmetic anymore so I could be off
On Mon, 11 Nov 2019 at 14:56, Charles Mills wrote:
> Works better than it used to! It's good to ~2 billion now, right? Was only
> good to ~16 million when they coded it.
>
> I'm not confused on how LA works in AMODE 31, am I? I never use it for
> integer arithmetic anymore so I could be off base
Mainframe Assembler List [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU] On
Behalf Of Rob van der Heij
Sent: Sunday, November 10, 2019 11:01 PM
To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
Subject: Re: Questionable Instructions in Obtaining EAX documentation
On Sat, 9 Nov 2019 at 20:51, Kerry Liles wrote:
>
On Sat, 9 Nov 2019 at 20:51, Kerry Liles wrote:
> Old habits die hard... I still just useLA 1,256although now I
> might just code it asLA 1,256(,0)
>
I'm more worried about old code and old programmers doing LA 1,1(,1) doing
arithmetic.
Rob
@LISTSERV.UGA.EDU
Subject: Re: Prefixing (was Questionable Instructions in Obtaining EAX
documentation)
Apologies, Seymour. I really knew better, but some muscle memory machine-check
must have occurred.
From: IBM Mainframe Assembler List on behalf
of Keven
Sent: Friday, November 8, 2019 2:57 PM
To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
Subject: Re: Prefixing (was Questionable Instructions in Obtaining EAX
documentation)
Just curious; are we being made party
/~smetz3
From: IBM Mainframe Assembler List on behalf
of Steve Smith
Sent: Friday, November 8, 2019 3:34 PM
To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
Subject: Re: Prefixing (was Questionable Instructions in Obtaining EAX
documentation)
I've seen nothing
and might be
> faster on some machines.
>
> Charles
>
>
> -Original Message-
> From: IBM Mainframe Assembler List [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU]
> On Behalf Of Bob Raicer
> Sent: Friday, November 8, 2019 1:15 PM
> To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
>
>> Should it produce a warming about ambiguous resolution?
yea- warming like: if you continue doing that, someone will give you a
bad carma (and hence you end up in a warm place)
;-)
--
Martin
On 2019-11-09, at 06:32:45, Peter Relson wrote:
>
>
> USING 0,9
>
> Got me. Obviously you're right that with that in effect the two LA forms
> produce different results.
>
Should it produce a warming about ambiguous resolution?
(I know that can be suppressed.)
-- gil
USING 0,9
Got me. Obviously you're right that with that in effect the two LA forms
produce different results.
Peter Relson
z/OS Core Technology Design
MBLER-LIST@LISTSERV.UGA.EDU
Subject: Re: Questionable Instructions in Obtaining EAX documentation
Well, the statement from Peter Relson (and others) which is
essentially:
--
LA R1,1 is exactly equivalent to LA R1,1(0). Just look at the
generated object code.
--
is not totally true. It all de
Very interesting...
I assembled this fragment on VSE and got a slight warning about the USING
0,9 with HLASM R6.0
R:9 0 3 USING 0,9
** ASMA306W USING RANGE OVERLAPS IMPLICIT USING 0,0
But the generated code is as you showed... ( LA 2,256(0) is
Well, the statement from Peter Relson (and others) which is
essentially:
--
LA R1,1 is exactly equivalent to LA R1,1(0). Just look at the
generated object code.
--
is not totally true. It all depends upon which USINGs are in effect.
Take a peek at the following example
I've seen nothing but technical posts (exc. the last), that have been
perfectly civil. I can't imagine what awoke your curiosity.
As for memory fragmentation relief, that's a secondary effect of virtual
memory providing more address space(s). While that is important, I like
Don's two
I see no grievances. Just a spelling mistake and an associated apology.
Ray
On 11/8/2019 14:57, Keven wrote:
Just curious; are we being made party to some sort of feud and/or ongoing disgruntlement between subscribers DG and SM? If so please cease forthwith and desist
Just curious; are we being made party to some sort of feud and/or
ongoing disgruntlement between subscribers DG and SM? If so please cease
forthwith and desist any further public airing of your grievances on this forum.
KH
On Fri,
Apologies, Seymour. I really knew better, but some muscle memory machine-check
must have occurred.
Assembler List on behalf
of Dan Greiner
Sent: Friday, November 8, 2019 11:02 AM
To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
Subject: Re: Prefixing (was Questionable Instructions in Obtaining EAX
documentation)
Seymore wrote: "ActualIy, I am interested, and was since it [prefixing] made
its first appea
Seymore wrote: "ActualIy, I am interested, and was since it [prefixing] made
its first appearance on S/360, but unless you're writing DAT-OFF code you don't
need to deal with it."
The association of DAT-off code and prefixing woke me up at 4am this morning,
and it's been bugging me ever since.
On Thu, 7 Nov 2019 20:49:14 +, Seymour J Metz wrote:
>The contents of R0 may be relevant, but not in the OP's context.
>As others have repeatedly pointed out, a base or index field of 0
>specifies a value of 0, not the contents of R0.
As documented in the Principles of Operation, page 2-4
(Seymour J.) Metz
http://mason.gmu.edu/~smetz3
From: IBM Mainframe Assembler List on behalf
of Steve Thompson
Sent: Wednesday, November 6, 2019 6:08 PM
To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
Subject: Re: Questionable Instructions in Obtaining EAX
LA 1,1(0)
ST 1,AXNUM
AXRES AXLIST=AXL GET AN EAX FOR SERVICE1 (THE X
PC ROUTINE)
L4,AXVAL
FWIW, changing the L to a LH works fine in the example, even if AXVAL
happens to have its high bit
The example is trying to show how to set an EAX for a SETDEF macro.
There is no SETDEF macro. There isn't even a TYPE=SETDEF option on ETDEF.
There is TYPE=SET. The post looked like copy/paste so a typo like that
seemed surprising.
Everyone's right, of course, that the "ST" ought to be "STH"
On Wed, 6 Nov 2019 at 18:08, Steve Thompson wrote:
> But my point was, the contents of R0 may be relevant. Implying it
> never matters is not quite right.
When specified as a base or index register, i.e. as Bn or Xn in any
instruction with such fields in its description, R0 is treated as if
it
Yes, and I am, by your definition, one of the .01%.
But my point was, the contents of R0 may be relevant. Implying it
never matters is not quite right.
However I must agree with you that most people working on/with
z/OS will never need to work at this level. But depending on what
they are
MBLER-LIST@LISTSERV.UGA.EDU
Subject: Re: Questionable Instructions in Obtaining EAX documentation
Prefixing is absolutely* irrelevant to this discussion, and to 99.99% of
assembler programmers for their entire lives. It's well-documented if
you're interested, but you probably aren't. Any discussion he
Instructions in Obtaining EAX documentation
Prefixing is absolutely* irrelevant to this discussion, and to 99.99% of
assembler programmers for their entire lives. It's well-documented if
you're interested, but you probably aren't. Any discussion here is very
likely to be spurious, specious
on behalf
of Steve Smith
Sent: Wednesday, November 6, 2019 1:44 PM
To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
Subject: Re: Questionable Instructions in Obtaining EAX documentation
Prefixing is absolutely* irrelevant to this discussion, and to 99.99% of
assembler programmers for their entire lives. It's well
Prefixing is absolutely* irrelevant to this discussion, and to 99.99% of
assembler programmers for their entire lives. It's well-documented if
you're interested, but you probably aren't. Any discussion here is very
likely to be spurious, specious, and superficial.
*I guess it's "really"
I don't remember that manual having so many errors. It worked for me when
I developed this kind of thing years ago.
LLH is the modern way to load an unsigned halfword, although it may be too
new for some old hardware.
sas
On Wed, Nov 6, 2019 at 1:25 PM Jonathan Scott
wrote:
> Ref: Your note
To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
Subject: Re: Questionable Instructions in Obtaining EAX documentation
So what happens when R0 happens to contain the same value as the
prefix Reg of the CPU that handles this code? Would that be how
one gets to "relative" 0 in this particular LPAR? (Absolute
Ref: Your note of Wed, 6 Nov 2019 18:06:46 +
> LA 1,1(0)
> ST 1,AXNUM
> ...
> L 4,AXVAL
> ETDEF TYPE=SET...
> .
> the work areas are:
> AXL DS 0F AXLIST
> AXNUM DS H Number of AXs Requested
> AXVAL DS H Returned AX (OR EAX)
Hmmm, this definitely needs a Readers Comment Form,
Someone already answered the register 0 question.
But I believe your point is valid about this part, and AXVAL being a
half-word and a LOAD instruction being used for it.
LA 1,1(0)
ST 1,AXNUM
.
L 4,AXVAL
ETDEF TYPE=SETDEF
.
the work areas are:
AXL DS 0F AXLIST
AXNUM DS H
So what happens when R0 happens to contain the same value as the
prefix Reg of the CPU that handles this code? Would that be how
one gets to "relative" 0 in this particular LPAR? (Absolute
address 0 is owned by the Hypervisor if I understand how IBM
implemented PR/SM).
Regards,
Steve
LA R1,1 is synonymous with LA R1,1(0); both simply load R1 with
0x0001, which in this case is the number of AXs being requested.You don’t
actually need to load R0 with zero to use it as a base register. USING PSA,R0
is what you might call HLASM syntactic sugar.Also
Register 0 cannot be used as a base or index register. This is because 0
in the base or index register field or an instruction means "no register".
The assembler has always allowed the specification of 0 for either to
satisfy the people who just like to code default stuff.
Clearing a register
On 11/6/19, esst...@juno.com wrote:
> Hi,.I tried posting this at IBM-MAIN, however I am experiencing problems
> with that site, so I decided to post here.
> .
> LA 1,1(0)
> ST 1,AXNUM
> .
> L 4,AXVAL
> ETDEF TYPE=SETDEF
> .
> the work areas are:
> AXL DS 0F AXLIST
> AXNUM DS H Number of
Hi,.I tried posting this at IBM-MAIN, however I am experiencing problems
with that site, so I decided to post here.
.
I need some clarification with some instructions being used in an example from
SA23-1394-30
Im referring to:
MVS Programming Extended addressability Guide
SA23-1394-30
Page 38-39
63 matches
Mail list logo