Thanks David.

i

------ Original Message ------
Received: 02:51 PM COT, 10/17/2010
From: David Bond <[email protected]>
To: [email protected]
Subject: Re: YOPs to be avoided?

> OPTABLE(YOP) enables long-displacement which ignores USING ranges when
> assembling long-displacement capable instructions.  (I strongly disagree
> with that design decision because it destroys the usefulness of USING
ranges.)
>
> And the long-displacement capability was added to many of the z900
> instructions.  Instructions such as LG will not be assembled using
> long-displacements with OPTABLE(ZOP) but can be with OPTABLE(YOP) and
later.
> If an LG instruction with a long displacement is executed on an original
> z900, the wrong doubleword will be loaded because the long-displacement
byte
> is ignored.  This is only a problem if your code needs to run on the
> original z900 in addition to later systems.
>
> On Sun, 17 Oct 2010 14:35:59 -0400, Ian Worthington wrote:
> >We have some programs that need to support Y ops.  I was planning to just
> >switch the whole product to assemble with optable(yop) but I found PJ30456
> >which includes the unsettling comment:
> >
> >New instructions must be assembled using the YOP instruction set on LINUX
> >HLASM. The rest of the system is assembled against the ZOP instruction set
> >>>> to avoid the use of long displacements. <<<
> >
> >Would this simply be so that the rest of the system would run on hardware
> >without the long displacement facility (I assume this is a microcode
> >level?), or is there some more serious issue I should be aware of?

Reply via email to