O'opcode will tell you what machine the programmer claimed he was targeting. 
What better test is there? Yes, he might be lying or confused, but no matter 
what you test at assembly time, the "user" (of your source code -- programmer 
IOW) might be lying or confused. You could introduce your own macro MCKOWN 
TARGET=Z14 and set GBLB's, but still, the programmer might be lying or confused.

For EXECUTABLE=NO, it appears the MVS guys did it right. If the operand is 
accepted at assembly time, there is no possible harm at run time (assuming YOU 
are not lying or confused <g>).

Charles


-----Original Message-----
From: IBM Mainframe Assembler List [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU] On 
Behalf Of John McKown
Sent: Wednesday, June 5, 2019 9:28 AM
To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
Subject: Re: z14 specific instructions?

On Wed, Jun 5, 2019 at 11:04 AM Steve Smith <sasd...@gmail.com> wrote:

> Just test the O'opcode result.  No guessing or research needed.
>

I have done that for some things. I am now looking at the EXECUTABLE=NO
operand of the STORAGE OBTAIN. I already check the z/OS level "02.02.00" or
greater to dual path my assembly code. But I have also read that although
z/OS 2.3 will accept this operand, on anything less than a z14, it is
ignored. So I am trying to make sure that the person assembling the code is
targeting a z14 or above. I haven't found a way to determine that. I am
doing initial work on a z/OS 1.12 system, so &SYSOPT_CURR_OPTABLE is not
available on the HLASM on that system. I will give it a try on a z/OS 2.3
system which I can access. I don't do much on the 2.3 system because it
belongs to a friend and _he_ pays for the work that I do. Yes, I am
probably trying to over optimise. But this is what I am considering a
learning experience. So I want to "push the envelope" to determine what I
can, and cannot, do.


>
> sas
>
>
-- 
This is clearly another case of too many mad scientists, and not enough
hunchbacks.


Maranatha! <><
John McKown

Reply via email to