2009
DOI: 10.1145/1837852.1621611
|View full text |Cite
|
Sign up to set email alerts
|

Reusable, generic program analyses and transformations

Abstract: The optimizations in modern compilers are constructed for a predetermined set of primitive types. As a result, programmers are unable to exploit optimizations for user-defined types where these optimizations would be correct and beneficial. Moreover, because the set of optimizations is also fixed, programmers are unable to incorporate new optimizations into the compiler. To address these limitations, we apply the reuse methodologies from generic programming to compiler analyses and optimizations. To enable com… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
4
1

Citation Types

0
5
0
1

Year Published

2010
2010
2013
2013

Publication Types

Select...
3
2

Relationship

0
5

Authors

Journals

citations
Cited by 6 publications
(6 citation statements)
references
References 22 publications
0
5
0
1
Order By: Relevance
“…Then, they optimize the CFG produced from the AST. Based on this modified CFG, generic optimizations are written in the specification language Scheme [18]. Although this approach, like our approach, is not satisfied with modern compiler optimizations and intends to enhance them, we disapprove the idea of qualifying the compiler optimization set as fixed set.…”
Section: Related Workmentioning
confidence: 93%
See 2 more Smart Citations
“…Then, they optimize the CFG produced from the AST. Based on this modified CFG, generic optimizations are written in the specification language Scheme [18]. Although this approach, like our approach, is not satisfied with modern compiler optimizations and intends to enhance them, we disapprove the idea of qualifying the compiler optimization set as fixed set.…”
Section: Related Workmentioning
confidence: 93%
“…There are other approaches that are not satisfied by compiler optimizations such as [17] and [18]. In [18], authors argue that optimizations in modern compilers are constructed for a predetermined set of primitive types.…”
Section: Related Workmentioning
confidence: 99%
See 1 more Smart Citation
“…Even though the transformations are generic, they can be driven by domainspecific cost models as in our application study, effectively performing domain-specific optimizations while remaining domain agnostic. This is similar in spirit to the approach of Willcock et al [28], where compiler transformations that deal with basic types are extended to work on more complex types, allowing for the same transformation pattern to be used in multiple domains; the key difference is that in our scenario, transformations are driven by domain-specific cost models, rather than syntax.…”
Section: Related Workmentioning
confidence: 99%
“…DSLs and libraries are particular examples of "multilevel programming": The application scientist programs in a notation that is meaningful to her, while the performance programmer that implements the libraries programs at a level that is closer to the hardware. Mechanisms and tools that facilitate such a division of labor are a subject of intensive research [53], [54].…”
Section: Domain-specific Environmentsmentioning
confidence: 99%