Export Citations
Save this search
Please login to be able to save your searches and receive alerts for new content matching your search criteria.
- ArticleJune 1988
A portable global optimizer and linker
PLDI '88: Proceedings of the ACM SIGPLAN 1988 conference on Programming language design and implementationPages 329–338https://doi.org/10.1145/53990.54023To reduce complexity and simplify their implementation, most compilers are organized as a set of passes or phases. Each phase performs a particular piece of the compilation process. In an optimizing compiler, the assignment of function and order of ...
Also Published in:
ACM SIGPLAN Notices: Volume 23 Issue 7 - ArticleJune 1988
Software pipelining: an effective scheduling technique for VLIW machines
PLDI '88: Proceedings of the ACM SIGPLAN 1988 conference on Programming language design and implementationPages 318–328https://doi.org/10.1145/53990.54022This paper shows that software pipelining is an effective and viable scheduling technique for VLIW processors. In software pipelining, iterations of a loop in the source program are continuously initiated at constant intervals, before the preceding ...
Also Published in:
ACM SIGPLAN Notices: Volume 23 Issue 7 - ArticleJune 1988
Optimal loop parallelization
PLDI '88: Proceedings of the ACM SIGPLAN 1988 conference on Programming language design and implementationPages 308–317https://doi.org/10.1145/53990.54021Also Published in:
ACM SIGPLAN Notices: Volume 23 Issue 7 - ArticleJune 1988
Unfold/fold transformations and loop optimization of logic programs
PLDI '88: Proceedings of the ACM SIGPLAN 1988 conference on Programming language design and implementationPages 297–307https://doi.org/10.1145/53990.54020Programs typically spend much of their execution time in loops. This makes the generation of efficient code for loops essential for good performance. Loop optimization of logic programming languages is complicated by the fact that such languages lack ...
Also Published in:
ACM SIGPLAN Notices: Volume 23 Issue 7 - ArticleJune 1988
A piggy-back compiler for Prolog
PLDI '88: Proceedings of the ACM SIGPLAN 1988 conference on Programming language design and implementationPages 288–296https://doi.org/10.1145/53990.54019Also Published in:
ACM SIGPLAN Notices: Volume 23 Issue 7 -
- ArticleJune 1988
Refined types: highly differentiated type systems and their use in the design of intermediate languages
PLDI '88: Proceedings of the ACM SIGPLAN 1988 conference on Programming language design and implementationPages 278–287https://doi.org/10.1145/53990.54018Also Published in:
ACM SIGPLAN Notices: Volume 23 Issue 7 - ArticleJune 1988
Compiling C for vectorization, parallelization, and inline expansion
PLDI '88: Proceedings of the ACM SIGPLAN 1988 conference on Programming language design and implementationPages 241–249https://doi.org/10.1145/53990.54014Practical implementations of real languages are often an excellent way of testing the applicability of theoretical principles. Many stresses and strains arise from fitting practicalities, such as performance and standard compatibility, to theoretical ...
Also Published in:
ACM SIGPLAN Notices: Volume 23 Issue 7 - ArticleJune 1988
Semantic analysis in a concurrent compiler
PLDI '88: Proceedings of the ACM SIGPLAN 1988 conference on Programming language design and implementationPages 233–240https://doi.org/10.1145/53990.54013Traditional compilers are usually sequential programs that serially process source programs through lexical analysis, syntax analysis, semantic analysis and code generation. The availability of multiprocessor computers has made it feasible to consider ...
Also Published in:
ACM SIGPLAN Notices: Volume 23 Issue 7 - ArticleJune 1988
An automatically generated, realistic compiler for imperative programming language
PLDI '88: Proceedings of the ACM SIGPLAN 1988 conference on Programming language design and implementationPages 222–232https://doi.org/10.1145/53990.54012We describe the automatic generation of a complete, realistic compiler from formal specifications of the syntax and semantics of Sol/C, a nontrivial imperative language “sort of like C.” The compiler exhibits a three pass structure, is efficient, and ...
Also Published in:
ACM SIGPLAN Notices: Volume 23 Issue 7 - ArticleJune 1988
Incremental evaluation for a general class of circular attribute grammars
PLDI '88: Proceedings of the ACM SIGPLAN 1988 conference on Programming language design and implementationPages 209–221https://doi.org/10.1145/53990.54011Also Published in:
ACM SIGPLAN Notices: Volume 23 Issue 7 - ArticleJune 1988
An optimizer for Ada - design, experiences and results
PLDI '88: Proceedings of the ACM SIGPLAN 1988 conference on Programming language design and implementationPages 175–184https://doi.org/10.1145/53990.54008In this paper we describe the design of a global machine independent low level optimizer for the Karlsruhe Ada Compiler. We give a short overview on the optimizations and data structures used in the optimizer as well as some experiences with the ...
Also Published in:
ACM SIGPLAN Notices: Volume 23 Issue 7 - ArticleJune 1988
Control flow analysis in scheme
PLDI '88: Proceedings of the ACM SIGPLAN 1988 conference on Programming language design and implementationPages 164–174https://doi.org/10.1145/53990.54007Traditional flow analysis techniques, such as the ones typically employed by optimizing Fortran compilers, do not work for Scheme-like languages. This paper presents a flow analysis technique — control flow analysis — which is applicable to Scheme-like ...
Also Published in:
ACM SIGPLAN Notices: Volume 23 Issue 7 - ArticleJune 1988
An efficient approach to data flow analysis in a multiple pass global optimizer
PLDI '88: Proceedings of the ACM SIGPLAN 1988 conference on Programming language design and implementationPages 154–163https://doi.org/10.1145/53990.54006Data flow analysis is a time-consuming part of the optimization process. As transformations are made in a multiple pass global optimizer, the data flow information must be updated to reflect these changes. Various approaches have been used, including ...
Also Published in:
ACM SIGPLAN Notices: Volume 23 Issue 7 - ArticleJune 1988
DOC: a practical approach to source-level debugging of globally optimized code
PLDI '88: Proceedings of the ACM SIGPLAN 1988 conference on Programming language design and implementationPages 125–134https://doi.org/10.1145/53990.54003As optimizing compilers become more sophisticated, the problem of debugging the source code of an application becomes more difficult. In order to investigate this problem, we implemented DOC, a prototype solution for Debugging Optimized Code. DOC is a ...
Also Published in:
ACM SIGPLAN Notices: Volume 23 Issue 7 - ArticleJune 1988
Design and implementation of the UW Illustrated compiler
PLDI '88: Proceedings of the ACM SIGPLAN 1988 conference on Programming language design and implementationPages 105–114https://doi.org/10.1145/53990.54001We have implemented an illustrated compiler for a simple block structured language. The compiler graphically displays its control and data structures, and so gives its viewers an intuitive understanding of compiler organization and operation. The ...
Also Published in:
ACM SIGPLAN Notices: Volume 23 Issue 7 - ArticleJune 1988
Anatomy of a hardware compiler
PLDI '88: Proceedings of the ACM SIGPLAN 1988 conference on Programming language design and implementationPages 95–104https://doi.org/10.1145/53990.54000Programming-language compilers generate code targeted to machines with fixed architectures, either parallel or serial. Compiler techniques can also be used to generate the hardware on which these programming languages are executed. In this paper we ...
Also Published in:
ACM SIGPLAN Notices: Volume 23 Issue 7 - ArticleJune 1988
Minimizing register usage penalty at procedure calls
PLDI '88: Proceedings of the ACM SIGPLAN 1988 conference on Programming language design and implementationPages 85–94https://doi.org/10.1145/53990.53999Inter-procedural register allocation can minimize the register usage penalty at procedure calls by reducing the saving and restoring of registers at procedure boundaries. A one-pass inter-procedural register allocation scheme based on processing the ...
Also Published in:
ACM SIGPLAN Notices: Volume 23 Issue 7 - ArticleJune 1988
Automatic generation of fast optimizing code generators
PLDI '88: Proceedings of the ACM SIGPLAN 1988 conference on Programming language design and implementationPages 79–84https://doi.org/10.1145/53990.53998Also Published in:
ACM SIGPLAN Notices: Volume 23 Issue 7 - ArticleJune 1988
Interprocedural side-effect analysis in linear time
PLDI '88: Proceedings of the ACM SIGPLAN 1988 conference on Programming language design and implementationPages 57–66https://doi.org/10.1145/53990.53996We present a new method for solving Banning's alias-free flow-insensitive side-effect analysis problem. The algorithm employs a new data structure, called the binding multi-graph, along with depth-first search to achieve a running time that is linear in ...
Also Published in:
ACM SIGPLAN Notices: Volume 23 Issue 7