1998
DOI: 10.1007/bfb0026423
|View full text |Cite
|
Sign up to set email alerts
|

Basic-block graphs: Living dinosaurs?

Abstract: Abstract. Since decades, basic-block (BB) graphs have been the stateof-the-art means for representing programs in advanced industrial compiler environments. The usual justification for introducing the intermediate BB-structures in the program representation is performance: analyses on BB-graphs are generally assumed to outperform their counterparts on single-instruction (SI) graphs, which, undoubtedly, are conceptually much simpler, easier to implement, and more straightforward to verify. In this article, we d… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

0
8
0

Year Published

1998
1998
2014
2014

Publication Types

Select...
5
2

Relationship

2
5

Authors

Journals

citations
Cited by 9 publications
(8 citation statements)
references
References 16 publications
0
8
0
Order By: Relevance
“…We use instructions rather than basic blocks as nodes of the control-flow graph because this simplifies semantics and reasoning over static analyses without significantly slowing compilation [50]. The dynamic semantics of RTL is defined by the labeled transition system shown in figure 10.…”
Section: Rtl Instructionsmentioning
confidence: 99%
“…We use instructions rather than basic blocks as nodes of the control-flow graph because this simplifies semantics and reasoning over static analyses without significantly slowing compilation [50]. The dynamic semantics of RTL is defined by the labeled transition system shown in figure 10.…”
Section: Rtl Instructionsmentioning
confidence: 99%
“…The CFG is not a basic-block graph: instead, it is a partial map from CFG nodes to single instructions (in Figure 4, this map has type PTree.t instr 1 ), and we stick to this important design choice of CompCert. As explained by Knoop et al [1998], it allows for simpler implementations of code manipulations and simplifies correctness proofs of analyses or transformations, while still achieving acceptable performance.…”
Section: Syntax and Semanticsmentioning
confidence: 99%
“…6 Source and destination node of a flow-graph edge corresponding to a node n of a traditional node-labeled flow graph represent the usual distinction between the entry and the exit point of n explicitly. This simplifies the formal development of the theory significantly, particularly the definition of the value-flow graph in Section 3.1 because the implicit treatment of this distinction, which, unfortunately is usually necessary for the traditional flow-graph representation, is obsolete here; a point which is intensely discussed in [11].…”
Section: Preliminariesmentioning
confidence: 99%