1,971 papers · page 91 of 99
Christopher W. Fraser, Alan L. Wendt
article Free Access Share on Automatic generation of fast optimizing code generators Authors: C. W. Fraser AT&T Bell Laboratories, Murray Hill, NJ AT&T Bell Laboratories, Murray Hill, NJView Profile , A. L. Wendt Univ. of Arizona, Tucson, AZ Univ. of Arizona, Tucson, AZView Profi…
Susan Horwitz, Thomas W. Reps, David W. Binkley
Suneel Jain, Carol L. Thompson
Kurt Keutzer, Wayne H. Wolf
Programming-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 demonstrate that many compilati…
Monica Lam
This 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 iterations complete. The advant…
James R. Larus, Paul N. Hilfinger
Two references to a record structure conflict if they access the same field and at least one modifies the location. Because structures can be connected by pointers, deciding if two statements conflict requires knowledge of the possible aliases for the locations that they access.
Barbara Liskov, Liuba Shrira
This paper deals with the integration of an efficient asynchronous remote procedure call mechanism into a programming language. It describes a new data type called a promise that was designed to support asynchronous calls. Promises allow a caller to run in parallel with a call an…
Barton P. Miller, Jong-Deok Choi
This paper addresses the design and implementation of an integrated debugging system for parallel programs running on shared memory multi-processors (SMMP). We describe the use of flowback analysis to provide information on causal relationships between events in a program's execu…
Joseph Pallas, David M. Ungar
We have adapted an interactive programming system (Smalltalk) to a multiprocessor (the Firefly). The task was not as difficult as might be expected, thanks to the application of three basic strategies: serialization, replication, and reorganization. Serialization of access to res…
Frank Pfenning, Conal Elliott
We describe motivation, design, use, and implementation of higher-order abstract syntax as a central representation for programs, formulas, rules, and other syntactic objects in program manipulation and other formal systems where matching and substitution or unification are centr…
Uwe F. Pleban, Peter Lee
We 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 produces object programs whos…
John H. Reppy
Synchronous message passing via channels is an interprocess communication (IPC) mechanism found in several concurrent languages, such as CSP, occam, and Amber. Such languages provide a powerful selective I/O operation, which plays a vital role in managing communication with multi…
John R. Rose
Article Free Access Share on Refined types: highly differentiated type systems and their use in the design of intermediate languages Author: J. R. Rose Thinking Machines Corporation, Cambridge, MA Thinking Machines Corporation, Cambridge, MAView Profile Authors Info & Claims PLDI…
Birgit Schwarz, Walter Kirchgässner, Rudolf Landwehr
In 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 optimizer. Detailed measurements a…
V. Seshadri, David B. Wortman, Michael D. Junkin, S. Weber, C. P. Yu, I. Small
Traditional 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 alternatives to this serial …
Olin Shivers
Traditional 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 languages. As a demonstrati…
Janice M. Stone
We present a case study that illustrates a method of debugging concurrent processes in a parallel programming environment. It uses a new approach called speculative replay to reconstruct the behavior of a program from the histories of its individual processes. Known time dependen…
David W. Wall
A large register set can be exploited by keeping variables and constants in registers instead of in memory. Hardware register windows and compile-time or link-time global register allocation are ways to do this. A measure of the effectiveness of any of these register management s…
Janet A. Walz, Gregory F. Johnson
article Free Access Share on Incremental evaluation for a general class of circular attribute grammars Authors: J. A. Walz Cornell Univ., Ithaca, NY Cornell Univ., Ithaca, NYView Profile , G. F. Johnson Univ. of Maryland, College Park, MD Univ. of Maryland, College Park, MDView P…
J. L. Weiner, S. Ramakrishnan
Article A piggy-back compiler for Prolog Share on Authors: J. L. Weiner Univ. of New Hampshire Univ. of New HampshireView Profile , S. Ramakrishman Univ. of New Hampshire Univ. of New HampshireView Profile Authors Info & Claims PLDI '88: Proceedings of the ACM SIGPLAN 1988 confer…