Proceedings of the 10th ACM SIGACT-SIGPLAN Symposium on Principles of Programming Languages - POPL '83 1983
DOI: 10.1145/567067.567085
|View full text |Cite
|
Sign up to set email alerts
|

Conversion of control dependence to data dependence

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
2

Citation Types

0
257
0
2

Year Published

1999
1999
2021
2021

Publication Types

Select...
5
2
1

Relationship

0
8

Authors

Journals

citations
Cited by 476 publications
(259 citation statements)
references
References 5 publications
0
257
0
2
Order By: Relevance
“…In this step, a Guard Condition [23] for each basic block is computed. A Guard Condition is a boolean expression which specifies if the instructions of the corresponding basic block have to be executed or not.…”
Section: Guard Conditions Computationmentioning
confidence: 99%
See 1 more Smart Citation
“…In this step, a Guard Condition [23] for each basic block is computed. A Guard Condition is a boolean expression which specifies if the instructions of the corresponding basic block have to be executed or not.…”
Section: Guard Conditions Computationmentioning
confidence: 99%
“…A Guard Condition is a boolean expression which specifies if the instructions of the corresponding basic block have to be executed or not. Differently from [23] and [5] the predicates are not exploited to completely remove control constructs from the parallel loop. These expression will indeed be used in the following steps as operand of predicated instructions and to correctly manage reaching definitions.…”
Section: Guard Conditions Computationmentioning
confidence: 99%
“…To use SIMD instructions in the presence of diverging control flow, the programmer or the compiler has to replace control flow by data flow [2]. For code without loops, this is commonly called if conversion.…”
Section: Introductionmentioning
confidence: 99%
“…The values of predicates are manipulated by a set of predicate defining instructions. To explore predication, the compiler generally uses a technique called if-conversion [1], which eliminates branch instructions and replaces affected instructions with predicate defining instructions and predicated forms. This technique enlarges the scope of instruction scheduling and avoids branch misprediction penalties that may be caused by the eliminated branches.…”
Section: Introductionmentioning
confidence: 99%
“…Suppose the compiler applies ifconversion [1] to eliminate the branchs in block 2. This leads to Figure 1(b), where the blocks 2 -5 have been merged into a new hyperblock HB.…”
Section: Introductionmentioning
confidence: 99%