Value dependence graphs: Representation without taxation

Download: PDF.

“Value dependence graphs: Representation without taxation” by Daniel Weise, Roger F. Crew, Michael D. Ernst, and Bjarne Steensgaard. In POPL '94: Proceedings of the 21st Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, (Portland, OR), Jan. 1994, pp. 297-310.
A previous version appeared as Microsoft Research technical report MSR-TR-94-03, (Redmond, WA), April 13, 1994.

Abstract

The value dependence graph (VDG) is a sparse dataflow-like representation that simplifies program analysis and transformation. It is a functional representation that represents control flow as data flow and makes explicit all machine quantities, such as stores and I/O channels. We are developing a compiler that builds a VDG representing a program, analyzes and transforms the VDG, then produces a control flow graph (CFG) [ASU86] from the optimized VDG. This framework simplifies transformations and improves upon several published results. For example, it enables more powerful code motion than [CLZ86, FOW87], eliminates as many redundancies as [AWZ88, RWZ88] (except for redundant loops), and provides important information to the code scheduler [BR91]. We exhibit a fast, one-pass method for elimination of partial redundancies that never performs redundant code motion [KRS92, DS93] and is simpler than the classical [MR79, Dha91] or SSA [RWZ88] methods. These results accrue from eliminating the CFG from the analysis/transformation phases and using demand dependences in preference to control dependences.

Download: PDF.

BibTeX entry:

@inproceedings{WeiseCES94:POPL,
   author = {Daniel Weise and Roger F. Crew and Michael D. Ernst and
	Bjarne Steensgaard},
   title = {Value dependence graphs: Representation without taxation},
   booktitle = {POPL '94: Proceedings of the 21st Annual ACM
	SIGPLAN-SIGACT Symposium on Principles of Programming Languages},
   pages = {297--310},
   address = {Portland, OR},
   month = jan,
   year = {1994}
}

(This webpage was created with bibtex2web.)

Back to Michael Ernst's publications.