scispace - formally typeset
Proceedings ArticleDOI

A language for writing code generators

Christopher W. Fraser
- Vol. 24, Iss: 7, pp 238-245
Reads0
Chats0
TLDR
Each specification is compiled into a fast, monolithic C program that accepts dags, annotated with intermediate code, and generates, optimizes, and emits code for the target machine.
Abstract
Each specification is compiled into a fast, monolithic C program that accepts dags (directed acyclic graphs) annotated with intermediate code, and generates, optimizes, and emits code for the target machine. The code generators are used with a front end for ANSI C. The resulting compilers emit code similar to pcci’s, but they run about twice as fast. The compilers are in use by small research groups at Bell Labs and Princeton University and by classes at Princeton.

read more

Citations
More filters
Journal ArticleDOI

Engineering a simple, efficient code-generator generator

TL;DR: This paper describes a simple program that generates matchers that are fast, compact, and easy to understand and run up to 25 times faster than Twig's matchers.
Proceedings ArticleDOI

VCODE: a retargetable, extensible, very fast dynamic code generation system

TL;DR: VCODE dynamically generates code at an approximate cost of six to ten instructions per generated instruction, making it over an order of magnitude faster than the most efficient general-purpose code generation system in the literature.
Journal ArticleDOI

A retargetable compiler for ANSI C

TL;DR: al. as mentioned in this paper developed a retargetable compiler for ANSI C, called lcc, which implements target-independent function tracing and expression-level profiling, simulating register declarations and partitioning switch statement cases into dense tables.
Journal ArticleDOI

DCG: an efficient, retargetable dynamic code generation system

TL;DR: In this article, the authors present a system, dcg, that allows clients to specify dynamically generated code in a machine-independent manner, which is easily retargeted and extremely efficient (code generation costs approximately 350 instructions per generated instruction).
Journal ArticleDOI

A code generation interface for ANSI C

TL;DR: The interface between the target‐independent front end and the target-dependent back ends of ANSI C is described, which consists of shared data structures, a few functions, and a dag language.
References
More filters
Journal ArticleDOI

Pattern Matching in Trees

TL;DR: Five new techniques for tree pattern matching are presented, analyzed for time and space complexity, and compared with previously known methods.
Journal ArticleDOI

Optimal Code Generation for Expression Trees

TL;DR: A dynamic programming algorithm is presented which produces optimal code for any machine in this class of machines, which runs in time linearly proportional to the size of the input.
Journal ArticleDOI

Code selection through object code optimization

TL;DR: Cet article montre comment une optimisation de code objet minutieux a simplifiee un compilateur and the rendu facile a recibler.
Proceedings ArticleDOI

Optimal code generation for expression trees: an application BURS theory

TL;DR: This paper introduces a class of rewrite systems called Bottom-Up Rewrite Systems (BURS), and a table-driven algorithm to solve REACHABILITY for member of the class, then modified to solve C-REACHABILITIES and specialized for a subclass of BURS so that all cost manipulation is encoded into the tables and is not performed explicitly at solving time.
Proceedings ArticleDOI

An improvement to bottom-up tree pattern matching

TL;DR: An improvement on an algorithm for generating tables to drive a bottom-up tree pattern matcher has time and space requirements roughly comparable to those of LALR parser generators, and orders of magnitude better than those of the unimproved table-generating algorithm.