Proceedings of the ACM SIGPLAN 1995 Conference on Programming Language Design and Implementation 1995
DOI: 10.1145/207110.207154
|View full text |Cite
|
Sign up to set email alerts
|

Global code motion/global value numbering

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
25
0

Year Published

1996
1996
2017
2017

Publication Types

Select...
4
3
1

Relationship

0
8

Authors

Journals

citations
Cited by 71 publications
(25 citation statements)
references
References 15 publications
0
25
0
Order By: Relevance
“…Global code motion has been solved both in isolation [15,22] as well as in integration with register allocation [6,31]. Moreover, attempts at exploiting fine-grained instruction level parallelism using SIMD instructions [35,42] suggest that the selection of such instructions should be done together with global code motion.…”
Section: Related Workmentioning
confidence: 99%
“…Global code motion has been solved both in isolation [15,22] as well as in integration with register allocation [6,31]. Moreover, attempts at exploiting fine-grained instruction level parallelism using SIMD instructions [35,42] suggest that the selection of such instructions should be done together with global code motion.…”
Section: Related Workmentioning
confidence: 99%
“…In this algorithm, the only modification is that ψ operations have to be handled with the same rules as the φ operations. We have also ported dead code elimination [9] and global value numbering [4] algorithms to this representation, and we expect that partial redundancy elimination [2], and induction variable analysis [14] should be easy to adapt.…”
Section: The Psi-ssa Representationmentioning
confidence: 99%
“…Although SSA provides the freedom to think outside the lexical box because each assignment essentially becomes its own variable, even SSAPRE does not take advantage of this but regards expressions in terms of the source variables from which their operands come; in fact, it makes stronger assumptions about the namespace than basic SSA [34]. The fact that many redundant results in a program do not come from lexically identical expressions (nor do all lexically identical expressions produce the same results) has motivated research to make PRE more effective [5] and led Click to assert that "in practice, GVN finds a larger set of congruences than PRE" [9].…”
Section: Related Workmentioning
confidence: 99%
“…SSA is a major boon for GVN, since (SSA versions of) variables are always in the same class, and therefore so are expressions on those versions in the same class, statically and globally. Congruences can be found by hashing [9,6] or by first assuming all expressions to be equal and splitting classes when incongruences are found [3,16,30]. Since identifying an operation as redundant depends on the operation having the same global number as an earlier operation, in traditional GVN such an earlier operation must dominate (i.e., occur on all paths to) the later operation.…”
Section: Gvnmentioning
confidence: 99%