Related articles |
---|
On-the-fly compilation from VM code to machine code joe@erix.ericsson.se (1994-08-24) |
Re: On-the-fly compilation from VM code to machine code thomasl@groucho.csd.uu.se (1994-08-26) |
Re: On-the-fly compilation from VM code to machine code danhicks@aol.com (1994-08-27) |
Re: On-the-fly compilation from VM code to machine code hbaker@netcom.com (1994-09-07) |
Re: On-the-fly compilation from VM code to machine code engler@AMSTERDAM.LCS.MIT.EDU (1994-09-07) |
Re: On-the-fly compilation from VM code to machine code hoelzle@xenon.stanford.edu (1994-09-14) |
Re: On-the-fly compilation from VM code to machine code danhicks@aol.com (1994-09-09) |
Re: On-the-fly compilation from VM code to machine code pardo@cs.washington.edu (1994-09-16) |
Newsgroups: | comp.compilers |
From: | engler@AMSTERDAM.LCS.MIT.EDU (Dawson R. Engler) |
Keywords: | interpreter, optimize |
Organization: | MIT Laboratory for Computer Science, Cambridge MA |
References: | 94-08-164 |
Date: | Wed, 7 Sep 1994 03:02:06 GMT |
danhicks@aol.com writes:
> The problem with this is that you can't optimize RISC code "on the fly".
> The efficiency of the code generated would be little better than what you
> could do with an interpreter.
I'm not sure what this means. You certainly can generate optimized
RISC code "on the fly", and the result is substantially better than what
you could do with an interpreter. See a paper that Todd Proebsting and
I wrote:
@inproceedings{engler:dcg,
author = "Dawson R. Engler and Todd A. Proebsting",
title = "DCG: An Efficient, Retargetable Dynamic Code Generation System" ,
journal = "ASPLOS 94",
year = 1994,
month = sep,
annotation = ""
}
In this system, applications specify code using the IR tree language of lcc;
these trees are fed into our runtime system, which generates locally optimized
machine code (using tree pattern matching).
In the context of a stack-based VM, it is straight-forward to translate
stack push/pops into trees and from this generate optimized "RISC code".
We did this for Mogul's stack-based packet filter language, and the resultant
speedup was _not_ "little better than what you could do with an interpreter".
Regards,
Dawson
http://amsterdam.lcs.mit.edu/~engler
--
Return to the
comp.compilers page.
Search the
comp.compilers archives again.