Related articles |
---|
intermediate languages johnson@cs.uiuc.edu (Ralph Johnson) (1990-08-09) |
Intermediate Languages farnum@sequoia.Berkeley.EDU (Charlie Farnum) (1990-08-09) |
Newsgroups: | comp.compilers |
From: | Ralph Johnson <johnson@cs.uiuc.edu> |
Keywords: | code, optimize |
Organization: | Compilers Central |
Date: | Thu, 09 Aug 90 17:59:17 GMT |
My experience is that register transfers are a very nice intermediate
language. My compiler uses two intermediate languages, abstract syntax trees
for language dependent optimizations, and register transfers for language
independent optimizations. I learned about RTL from the papers by Davidson
and Fraser. Also, the GNU compilers use a register transfer language.
Register transfers are very compatible with static single assignment form,
which is a data structure for representing programs developed by a group at
IBM. You could use SSA without RTL, or RTL without SSA, but I have had good
success using them together.
The end of the message has some references for your reading pleasure. The
ones on SSA all have Zadeck as a co-author.
Ralph Johnson - University of Illinois at Urbana-Champaign
_______
@InProceedings{alpern88,
author="Bowen Alpern and Mark N. Wegman and F. Kenneth Zadeck",
title="Detecting Equality of Variables in Programs",
booktitle=popl88,
year=1988,
pages="1-11"
}
@InProceedings{cytron86,
author = "Ron Cytron and Andy Lowry and Kenneth Zadeck",
title = "Code Motion of Control Structures in High-Level Languages",
booktitle = popl86,
year = 1986,
pages = "70-85"
}
@InProceedings{cytron89,
author = "Ron Cytron and Jeanne Ferrante and Barry Rosen
and Mark Wegman and Kenneth Zadeck",
title = "An Efficient Method of Computing Static Single Assignment Form",
booktitle = popl89,
year = 1989,
pages = "25-35"
}
@ARTICLE{davidson80,
author="Jack W. Davidson and Christopher W. Fraser",
title="The Design and Application of a Retargetable Peephole Optimizer",
journal=toplas,
volume=2,
number=2,
month=apr,
year=1980,
pages="191--202"
}
@phdthesis{davidson81,
author="Jack W. Davidson",
title="Simplifying Code Generation Through Peephole Optimizations",
school="University of Arizona",
year="1981"}
@article{davidson84,
author="Jack W. Davidson and Christopher W. Fraser",
title="Code Selection through Object Code Optimization",
journal=toplas,
volume=6,
number=4,
year=1984,
pages="505-526"}
@inproceedings{davidson84a,
author="Jack W. Davidson and Christopher W. Fraser",
title="Automatic Generation of Peephole Optimizations",
booktitle="Proceedings of the ACM SIGPLAN '84 Symposiom on
Compiler Construction",
year="1984",
pages="111-116"}
@article{davidson84b,
author="Jack W. Davidson and Christopher W. Fraser",
journal="Software - Practice and Experience",
title="Register Allocation and Exhaustive Peephole Optimization",
volume=14,
number=9,
month=sep,
year=1984,
pages="857-865"}
@techreport{davidson85,
author="Jack W. Davidson",
title="Simple Machine Description Grammars",
institution="Department of Computer Science, University of Virgina",
year="1985"}
@InProceedings{davidson86,
author="Jack W. Davidson",
title="A Retargetable Instruction Reorganizer",
booktitle=sigplan86,
year=1986,
pages="234-241"
}
@article{davidson87,
author="Jack W. Davidson and Christopher W. Fraser",
title="Automatic Interence and Fast Interpretation of Peephole
Optimization Rules",
journal="Software - Practice and Experience",
volume=17,
number=11,
pages="801-812",
month=nov,
year=1987}
--
Return to the
comp.compilers page.
Search the
comp.compilers archives again.