COMPILATION DEPENDENCES IN AN AMBITIOUS OPTIMIZING COMPILER (INTERPROCEDURAL, RECOMPILATION)

Date
1985
Journal Title
Journal ISSN
Volume Title
Publisher
Abstract

When interprocedural analysis and optimization are employed in an optimizing compiler based in a software development environment, cooperation between the components of the environment is essential. Many components in such a software development environment are involved in the computation of either interprocedural information or the initial information from which the interprocedural information is derived. These components must be capable of both recording the information that they produce in the environment's database and interpreting information left in the database by other components. To ensure that the components effectively cooperate, the impact of collecting interprocedural information and performing interprocedural optimizations must be carefully considered in the design of the environment. This dissertation presents an overview of the impact of interprocedural analysis and optimization on a software development environment designed to aid numerical programmers and an examination of the problems that arise in an ambitious optimizing compiler which introduces compilation dependences between the procedures of a program. The concept of a program compiler encapsulates the analysis required to collect interprocedural information, track compilation dependences, and make smart recompilation decisions. A program compiler is responsible for analyzing a program that has been altered and determining a course of action that will return the executable image of that program to a state that is consistent with its source. The design presented for a program compiler incorporates passes that perform the necessary interprocedural analysis. Interprocedural summary and aliasing information is collected using methods presented in the literature. Techniques for detecting interprocedural constants are presented. These methods range from expensive algorithms that detect most of the interprocedural constants to cheaper algorithms that detect fewer constants. Recompilation algorithms that detect the subtle dependences introduced between the procedures of a program when interprocedural information is used by the optimizer are described.

Description
Advisor
Degree
Doctor of Philosophy
Type
Thesis
Keywords
Computer science
Citation

TORCZON, LINDA MARIE. "COMPILATION DEPENDENCES IN AN AMBITIOUS OPTIMIZING COMPILER (INTERPROCEDURAL, RECOMPILATION)." (1985) Diss., Rice University. https://hdl.handle.net/1911/15935.

Has part(s)
Forms part of
Published Version
Rights
Copyright is held by the author, unless otherwise indicated. Permission to reuse, publish, or reproduce the work beyond the bounds of fair use or other exemptions to copyright law must be obtained from the copyright holder.
Link to license
Citable link to this page