Related articles |
---|
wanted: good references for [45]86 code generation kers@cdollin.hpl.hp.com (Chris Dollin) (1998-01-21) |
Re: wanted: good references for [45]86 code generation sergey@solyanik.com (Sergey Solyanik) (1998-01-23) |
Re: wanted: good references for [45]86 code generation ast@halcyon.com (1998-01-24) |
Re: wanted: good references for [45]86 code generation sergey@solyanik.com (Sergey Solyanik) (1998-01-30) |
Re: wanted: good references for [45]86 code generation dgay@barnowl.CS.Berkeley.EDU (1998-02-01) |
Re: wanted: good references for [45]86 code generation mike.hobbs@ccmail.fingerhut.com (Michael Hobbs) (1998-02-01) |
Re: wanted: good references for [45]86 code generation jacob@jacob.remcomp.fr (1998-02-01) |
Re: wanted: good references for [45]86 code generation mzraly@world.std.com (1998-02-03) |
Re: wanted: good references for [45]86 code generation bs@hplb.hpl.hp.com (1998-02-07) |
From: | jacob@jacob.remcomp.fr (Jacob Navia) |
Newsgroups: | comp.compilers |
Date: | 1 Feb 1998 14:32:15 -0500 |
Organization: | Compilers Central |
References: | 98-01-083 98-01-094 98-01-101 98-01-117 |
Keywords: | 386, code |
Andrew Tucker <ast@halcyon.com> wrote ...
> Fraser and Hanson's lcc book describes their code generator for x86
> as well as MIPS and SPARC.
The techniques described by Fraser and Hanson are very useful for
creating a professional x86 code generator. Of course in a book that
is about a *portable* C compiler they didn't go into great depths
maybe, but you can look at lcc-win32 to see an expansion of their
work. I have rewritten their lburg machine description from approx 180
to 550 rules, and then the same techniques generate code that in many
benchmarks runs faster than Bolrand C5.0 for instance.
I think that in a book *explaining* things, the techniques described
MUST be simple for people to grasp. A 550 rules example would have
confused the readers. You can look at my work at
http://www;remcomp.com/lcc-win32 There you will find a ready-to-run
system that will include the source for the code generator. It is MSVC
compatible, and includes a compiler system around lcc.
The techniques of lburg can be improved (and in lcc-win32 they are)
with a peephole optimizer, as it is stated in their book. Look at the
file optim.c in there.
--
Jacob Navia Logiciels/Informatique
41 rue Maurice Ravel Tel (1) 48.23.51.44
93430 Villetaneuse Fax (1) 48.23.95.39
France
--
Return to the
comp.compilers page.
Search the
comp.compilers archives again.