Related articles |
---|
Request for more info on trampolines holmer@rose.eecs.nwu.edu (1993-07-07) |
Re: Request for more info on trampolines eb@kaleida.com (1993-07-07) |
Re: Request for more info on trampolines max@nic.gac.edu (1993-07-08) |
Re: Request for more info on trampolines pardo@cs.washington.edu (1993-07-08) |
Re: Request for more info on trampolines eb@kaleida.com (1993-07-09) |
Re: Request for more info on trampolines pardo@cs.washington.edu (1993-07-10) |
Re: Request for more info on trampolines chased@rbbb.Eng.Sun.COM (1993-07-16) |
Re: Request for more info on trampolines jfc@athena.mit.edu (1993-07-18) |
Newsgroups: | comp.compilers |
From: | pardo@cs.washington.edu (David Keppel) |
Keywords: | code, optimize, architecture, FTP |
Organization: | Computer Science & Engineering, U. of Washington, Seattle |
References: | 93-07-026 93-07-040 |
Date: | Sat, 10 Jul 1993 17:57:23 GMT |
eb@kaleida.com (Eric Benson) writes:
>[It can be expensive to create code fragments on machines with
> separate I and D spaces.]
For each system architecture, often there are techniques that allow
creation of new code fragments, though modifying existing fragments may be
slow. For example, you can generate code in to a buffer shared between I
and D. The whole buffer is initially flushed from the I cache. When a
fragment is written to the buffer it can be executed directly without
cache flushing operations, since, by construction, a part of the buffer
that has just been written is also uncached. Cache coherence is needed
only when the buffer is exhausted and (code) space is reused.
Although machines with separate I and D spaces are, in principle, a
problem, there is an (almost surprising) lack of real machines where this
turns out to be a problem.
Blowing my own horn:
%A David Keppel
%T A Portable Interface for On-The-Fly Instruction Space Modification
%J Proceedings of the Fourth International Conference on
Architectural Support for Programming Languages and Operating Systems
(ASPLOS-IV)
%D April 1991
%P 86-95
This paper is also included with the `fly' distribution available from
`cs.washington.edu' in `pub/pardo/fly-1.0.tar.Z'.
;-D on ( A cache of berried treasure ) Pardo
--
Return to the
comp.compilers page.
Search the
comp.compilers archives again.