|[6 earlier articles]|
|Re: Back End Generators email@example.com (1994-10-21)|
|Re: Back End Generators firstname.lastname@example.org (1994-10-21)|
|Re: Back End Generators email@example.com (1994-10-21)|
|Re: Back End Generators Peter.Damron@Eng.Sun.COM (1994-10-18)|
|Re: Back End Generators firstname.lastname@example.org (1994-10-28)|
|Re: Back End Generators email@example.com (1994-10-24)|
|Re: Back End Generators davidm@Rational.COM (1994-10-25)|
|From:||davidm@Rational.COM (David Moore)|
|Keywords:||code, tools, bibliography|
|Organization:||Rational Software Corporation|
|Date:||Tue, 25 Oct 1994 03:48:01 GMT|
firstname.lastname@example.org (David Chase) writes:
>email@example.com (John McEnerney) writes:
>> This was the Graham-Glanville algorithm; it was Glanville's PhD thesis.
>> I seem to have lost the original paper. The idea was to use an LR parser
>> to recognize substrings in a prefix representation of the IR tree, and
>> associate code generation actions with the parse. There have been several
>> follow-up papers on this. The only commercial compiler I have heard of
>> that used this was an old Intel cross-compiler for x86 development.
My thesis contains these references:
Glanville R S and Graham S L
A New Method for Compiler Code Construction
5th Annual ACM POPL Conference (1978)
Graham, S L Henry, RR and Schulman R A
An experiment in table driven code generation
Sigplan vol 17 No 6 (1982)
I think these are both on this topic (they're in a box somewhere, so I cannot
Another reference is
Cattel, R.G.G et al
Code generation in a machine independent compiler. Sigplan Vol 14 no 8 (1979)
This is not based on LR parsing but, if memory serves, a top-down greedy
algorithm. It also deals with instructions with side-effects, I think.
I also see this really old reference:
Brooker R A et al (Brooker and Morris, I think it was)
Annual Review in Automatic Programming Vol 3 (1962)
This is the original compiler-compiler paper, but I don't remember if it
discusses code generation, rather than just parsing.
Return to the
Search the comp.compilers archives again.