Demand-driven Inlining in a Region-based Optimizer for ILP Architectures
<|reference_start|>Demand-driven Inlining in a Region-based Optimizer for ILP Architectures: Region-based compilation repartitions a program into more desirable compilation units using profiling information and procedure inlining to enable region formation analysis. Heuristics play a key role in determining when it is most beneficial to inline procedures during region formation. An ILP optimizing compiler using a region-based approach restructures a program to better reflect dynamic behavior and increase interprocedural optimization and scheduling opportunities. This paper presents an interprocedural compilation technique which performs procedure inlining on-demand, rather than as a separate phase, to improve the ability of a region-based optimizer to control code growth, compilation time and memory usage while improving performance. The interprocedural region formation algorithm utilizes a demand-driven, heuristics-guided approach to inlining, restructuring an input program into interprocedural regions. Experimental results are presented to demonstrate the impact of the algorithm and several inlining heuristics upon a number of traditional and novel compilation characteristics within a region-based ILP compiler and simulator.<|reference_end|>
@article{way2006demand-driven,
    title={Demand-driven Inlining in a Region-based Optimizer for ILP Architectures},
    author={Thomas P. Way and Lori L. Pollock},
    journal={arXiv preprint arXiv:cs/0604043},
    year={2006},
    archivePrefix={arXiv},
    eprint={cs/0604043},
    primaryClass={cs.DC cs.PL}
}