(Enter summary)
Abstract: Path splitting is a new technique for improving the amount of data flow information statically
available to the compiler about a fragment of code. Path splitting replicates code in
order to provide optimal reaching definitions information within given regions of the control
flow graph. This improved information is used to extend the applicability of various classical
code optimizations, including copy and constant propagation, common subexpression
elimination, dead code elimination, and code... (Update)
Context of citations to this paper: More
...of unnecessary code. In the following 3 sections we outline each of these phases. Details can be found in the appendix and in [21]. Throughout, we refer to a simple example. The original flow graph, before any optimizations, appears in Figure 5(a) x : 3 w : x x : a...
...related to other work that focuses on improving the performance of particular program paths. A partial list of such works includes [8, 7, 9, 13, 6, 15]. A more detailed discussion of related work can be found in [11] As stated in the introduction, the interprocedural express...
Cited by: More
The Interprocedural Express-lane Transformation - Melski, Reps (2003)
(Correct)
Path Splitting: A Technique for Improving Data-Flow Analysis - Poletto, Kaashoek, Engler (1995)
(Correct)
Active bibliography (related documents): More All
0.2: An Infrastructure for Profile-Driven Dynamic Recompilation - Burger, Dybvig (1998)
(Correct)
0.2: Optimizing Fortran90D/HPF for Distributed-Memory Computers - Roth (1997)
(Correct)
0.2: A Transparent Method for Correlating Profiles with Source.. - Eugene Albert Gem (1999)
(Correct)
Similar documents based on text: More All
0.7: An x86 Protected Mode Virtual Machine Monitor for the MIT Exokernel - Coffing (1999)
(Correct)
0.7: Time Optimal Self-Stabilizing Spanning Tree Algorithms - Aggarwal (1993)
(Correct)
0.6: Identifying and Merging Related Bibliographic Records - Hylton (1996)
(Correct)
Related documents from co-citation: More All
2: Avoiding unconditional jumps by code replication
- Mueller, Whalley - 1992
2: Using profile information to assist classic compiler code optimizations
- Chang, Mahlke et al. - 1991
2: Trace Scheduling: A Technique for Global Microcode Compaction (context) - Fisher - 1981
BibTeX entry: (Update)
Massimiliano Poletto. Path splitting: a technique for improving data flow analysis. Master's thesis, Massachusetts Institute of Technology, 1995. Also available online, at ftp://cag.lcs.mit.edu/pub/maxp/ms.ps[.gz]. http://citeseer.ist.psu.edu/poletto95path.html More
@misc{ poletto95path,
author = "M. Poletto",
title = "Path splitting: a technique for improving data flow analysis",
text = "Massimiliano Poletto. Path splitting: a technique for improving data flow
analysis. Master's thesis, Massachusetts Institute of Technology, 1995.
Also available online, at ftp://cag.lcs.mit.edu/pub/maxp/ms.ps[.gz].",
year = "1995",
url = "citeseer.ist.psu.edu/poletto95path.html" }
Citations (may not include all citations):
3972
Introduction to Algorithms (context) - Cormen, Leiserson et al. - 1990
1399
Compilers: Principles (context) - Aho, Sethi et al. - 1986
407
Trace scheduling: a technique for global microcode compactio.. (context) - Fisher - 1981
230
Compiler transformations for high-performance computing
- Bacon, Graham et al. - 1992
225
Flow Analysis of Computer Programs (context) - Hecht - 1977
183
Profile guided code positioning (context) - Pettis, Hansen - 1990
173
Bulldog: a compiler for VLIW architectures (context) - Ellis - 1985
156
The Multiflow trace scheduling compiler
- Lowney, Freudenberger et al. - 1993
156
A unified approach to global program optimization (context) - Kildall - 1973
152
An efficient method of computing static single assignment fo.. (context) - Cytron, Ferrante et al. - 1989
145
Customization: optimizing compiler technology for SELF (context) - Chambers, Ungar - 1989
130
Optimally profiling and tracing programs
- Ball, Larus - 1992
116
Monotone data flow analysis frameworks (context) - Kam, Ullman - 1977
104
Lazy code motion
- Knoop, Ruething et al. - 1994
103
Predicting conditional branch directions from previous runs .. (context) - Fisher, Freudenberger - 1992
99
Hints for computer system design
- Lampson - 1983
94
Using profile information to assist classic code optimizatio..
- Chang, Mahlke et al. - 1991
90
Optimal loop parallelization (context) - Aiken, Nicolau - 1988
84
The SUIF compiler for scalable parallel machines (context) - Amarasinghe, Anderson et al. - 1995
79
A portable global optimizer and linker (context) - Benitez, Davidson - 1988
64
Efficient program tracing (context) - Larus - 1993
60
Predicting program behavior using real or estimated profiles
- Wall - 1991
58
Rewriting executable files to measure program behavior
- Larus, Ball - 1994
56
A retargetable compiler for ANSI C
- Fraser, Hanson - 1991
45
Effective partial redundancy elimination
- Briggs, Cooper - 1994
45
Enhanced modulo scheduling for loops with conditional branch..
- Warter, Haab et al. - 1992
41
Sharlit --- a tool for building optimizers
- Tjiang, Hennessy - 1992
40
Accurate static estimators for program optimization (context) - Wagner, Maverick et al. - 1994
34
A case for runtime code generation (context) - Keppel, Eggers et al. - 1991
33
Superblock formation using static program analysis
- Hank, Mahlke et al. - 1993
31
retargetable dynamic code generation system (context) - Engler, Proebsting et al. - 1994
28
Technical Report CSL-TR (context) - Smith, pixie - 1991
26
An analysis of inline substitution for a structured programm.. (context) - Scheifler - 1977
25
Instruction-level parallel processing (context) - Fisher, Rau - 1991
25
Inline function expansion for compiling C programs (context) - Hwu, Chang - 1989
21
Peephole optimization (context) - McKeeman - 1965
20
An overview of the SUIF compiler for scalable parallel machi..
- Amarasinghe, Anderson et al. - 1993
20
Eliminating branches using a superoptimizer and the GNU C co..
- Granlund, Kenner - 1992
20
Avoiding unconditional jumps by code replication
- Mueller, Whalley - 1992
13
Quick compilers using peephole optimization
- Davidson, Whalley - 1989
9
The design of very fast portable compilers (context) - Tanenbaum, Kaashoek et al. - 1989
5
Automatic Generation of Data-flow Analyzers: A tool for buil..
- Tjiang - 1993
5
optimizing research compiler (context) - Compiler, SUIF et al. - 1994
4
Profile-driven Compilation
- Samples - 1991
2
Avoiding conditional branches in loops by code replication (context) - Mueller, Whalley - 1995
Documents on the same site (http://fermivista.math.jussieu.fr/ftp/ftp.cag.lcs.mit.edu.html): More
Reactive Synchronization Algorithms for Multiprocessors - Lim (1994)
(Correct)
MGS: A Multigrain Shared Memory System - Yeung (1996)
(Correct)
Dribbling Registers: A Mechanism for Reducing Context.. - Vijayaraghavan.. (1992)
(Correct)
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC