A Simple Graph-Based Intermediate Representation (1995)
by
Cliff Click
| Citations: | 10 - 1 self |
BibTeX
@MISC{Click95asimple,
author = {Cliff Click},
title = {A Simple Graph-Based Intermediate Representation},
year = {1995}
}
Years of Citing Articles
OpenURL
Abstract
We present a graph-based intermediate representation (IR) with simple semantics and a low-memory-cost C++ implementation. The IR uses a directed graph with labeled vertices and ordered inputs but unordered outputs. Vertices are labeled with opcodes, edges are unlabeled. We represent the CFG and basic blocks with the same vertex and edge structures. Each opcode is defined by a C++ class that encapsulates opcode-specific data and behavior. We use inheritance to abstract common opcode behavior, allowing new opcodes to be easily defined from old ones. The resulting IR is simple, fast and easy to use.







