1,971 papers · page 88 of 99
Robert R. Henry, Kenneth M. Whaley, Bruce Forstall
The University of Washington illustrating compiler (UWPI) automatically illustrates the data structures used in simple programs written in a subset of Pascal2. A UWPI user submits a program to UWPI, and can then watch a graphical display show time varying illustrations of the dat…
Robert Hieb, R. Kent Dybvig, Carl Bruggeman
Languages such as Scheme and Smalltalk that provide continuations as first-class data objects present a challenge to efficient implementation. Allocating activation records in a heap has proven unsatisfactory because of increased frame linkage costs, increased garbage collection …
Susan Horwitz
Text-based file comparators (e.g., the Unix utility diff), are very general tools that can be applied to arbitrary files. However, using such tools to compare programs can be unsatisfactory because their only notion of change is based on program text rather than program behavior.…
Dean Jacobs
This paper presents a type system for logic programs that supports parametric polymorphism and subtypes. This system follows most knowledge representation and object-oriented schemes in that subtyping is name-based, i.e., τ1 is considered to be a subtype of τ2 iff it is declared …
Martin Jourdan, Didier Parigot, Catherine Julié, Olivier Durin, Carole Le Bellec
FNC-2 is a new attribute grammar processing system aiming at expressive power, efficiency, ease of use and versatility. Its development at INRIA started in 1986, and a first running prototype is available since early 1989. Its most important features are: efficient exhaustive and…
Peter B. Kessler
Vernon A. Lee Jr., Hans-Juergen Boehm
The constructive reals provide programmers with a useful mechanism for prototyping numerical programs, and for experimenting with numerical algorithms. Unfortunately, the performance of current implementations is inadequate for some potential applications. In particular, these im…
Thanasis Mitsolides, Malcolm Harrison
The need for searching a space of solutions appears often. Many problems, such as iteration over a dynamically created domain, can be expressed most naturally using a generate-and-process style. Serial programming languages typically support solutions of these problems by providi…
Brian R. Nickerson
Though graph coloring algorithms have been shown to work well when applied to register allocation problems, the technique has not been generalized for processor architectures in which some instructions refer to individual operands that are comprised of multiple registers. This pa…
Karl Pettis, Robert C. Hansen
This paper presents the results of our investigation of code positioning techniques using execution profile data as input into the compilation process. The primary objective of the positioning is to reduce the overhead of the instruction memory hierarchy.
William W. Pugh, Grant E. Weddell
Much recent work in polymorphic programming languages allows subtyping and multiple inheritance for records. In such systems, we would like to extract a field from a record with the same efficiency as if we were not making use of subtyping and multiple inheritance. Methods curren…
Vatsa Santhanam, Daryl Odnert
This paper describes a method for compiling programs using interprocedural register allocation. A strategy for handling programs built from multiple modules is presented, as well as algorithms for global variable promotion and register spill code motion. These algorithms attempt …
Vivek Sarkar
article Free Access Share on Instruction reordering for fork-join parallelism Author: V. Sarkar IBM Research, Thomas. J. Watson Research Center, P.O. Box 704, Yorktown Heights, NY IBM Research, Thomas. J. Watson Research Center, P.O. Box 704, Yorktown Heights, NYView Profile Auth…
Guy L. Steele Jr., Jon L. White
Tim Teitelbaum, Richard Chapman
Article Free Access Share on Higher-order attribute grammars and editing environments Authors: Tim Teitelbaum Department of Computer Science, Cornell University, Ithaca, NY Department of Computer Science, Cornell University, Ithaca, NYView Profile , Richard Chapman Department of …
Ping-Sheng Tseng
This paper describes an AL compiler for the Warp systolic array. AL is a programming language in which the user programs a systolic array as if it were a sequential computer and relies on the compiler to generate parallel code. This paper introduces the notion of data relations i…
Alan L. Wendt
article Free Access Share on Fast code generation using automatically-generated decision trees Author: Alan L. Wendt Department of Computer Science, Colorado State University, Fort Collins, Colorado Department of Computer Science, Colorado State University, Fort Collins, Colorado…
Russell R. Atkinson, Alan J. Demers, Carl Hauser, Christian Jacobi, Peter Kessler, Mark D. Weiser
Cedar is the name for both a language and an environment in use in the Computer Science Laboratory at Xerox PARC since 1980. The Cedar language is a superset of Mesa, the major additions being garbage collection and runtime types. Neither the language nor the environment was orig…
Vasanth Balasundaram, Ken Kennedy
article A technique for summarizing data access and its use in parallelism enhancing transformations Share on Authors: V. Balasundaram Dept. of Computer Science, Rice University Dept. of Computer Science, Rice UniversityView Profile , K. Kennedy Dept. of Computer Science, Rice Un…
David Bernstein, Dina Q. Goldin, Martin Charles Golumbic, Hugo Krawczyk, Yishay Mansour, Itai Nahshon, Ron Y. Pinter
Global register allocation and spilling is commonly performed by solving a graph coloring problem. In this paper we present a new coherent set of heuristic methods for reducing the amount of spill code generated. This results in more efficient (and shorter) compiled code. Our app…