In
<CAAJSdjgo9D8pYEM6WEh-_y7FZEztH=2y29p4kw2nkdcped4...@mail.gmail.com>,
on 04/29/2013
at 10:42 AM, John McKown <[email protected]> said:
>There is no architectural restriction about not modifying
>instructions "on the fly". The z does not have the concept of
>"data" versus "instruction" storage. But, IMO, it is an
>abomination. There are two major reasons and one minor one. First,
>it causes a flush of the I (and D?) cache. This impacts
>performance quite a bit.
That much is patially true. Perhaps you meant modifying instructions
inline.
>Second, it makes the code not reentrant.
No. The Devil is in the details.
>Rather than modifying an instruction on the fly, I either use an
>EX of the instruction, when possible; or I move a the template of
>the instruction into a data area and EX that.
Nit: you might consider that to be modifying it on the fly.
>Reminds me of an interesting facet of the Xerox Sigma architecture.
Mapping register numbers to low storage is not new with the Xerox
Sigma family; the DEC PDP-6 did it earlier.
--
Shmuel (Seymour J.) Metz, SysProg and JOAT
Atid/2 <http://patriot.net/~shmuel>
We don't care. We don't have to care, we're Congress.
(S877: The Shut up and Eat Your spam act of 2003)
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN