A Domain-Specific Language for Generating Dataflow Analyzers

被引:5
|
作者
Zeng, Jia [1 ]
Mitchell, Chuck [2 ]
Edwards, Stephen A. [3 ]
机构
[1] Columbia Univ, Dept Comp Sci, New York, NY 10027 USA
[2] Microsoft Corp, Redmond, WA 98052 USA
[3] Columbia Univ, Dept Comp Sci, New York, NY 10027 USA
关键词
Domain-specific language; Dataflow analysis; dynamic class extension; compiler; Phoenix compiler framework;
D O I
10.1016/j.entcs.2006.10.008
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Dataflow analysis is a well-understood and very powerful technique for analyzing programs as part of the compilation process. Virtually all compilers use some sort of dataflow analysis as part of their optimization phase. However, despite being well-understood theoretically, such analyses are often difficult to code, making it difficult to quickly experiment with variants. To address this, we developed a domain-specific language, Analyzer Generator (AG), that synthesizes dataflow analysis phases for Microsoft's Phoenix compiler framework. AG hides the fussy details needed to make analyses modular, yet generates code that is as efficient as the hand-coded equivalent. One key construct we introduce allows IR object classes to be extended without recompiling. Experimental results on three analyses show that AG code can be one-tenth the size of the equivalent handwritten C++ code with no loss of performance. It is our hope that AG will make developing new dataflow analyses much easier.
引用
收藏
页码:103 / 119
页数:17
相关论文
共 50 条
  • [41] A domain-specific language for models of landscape dynamics
    Fall, A
    Fall, J
    [J]. ECOLOGICAL MODELLING, 2001, 141 (1-3) : 1 - 18
  • [42] Variability Support in Domain-Specific Language Development
    Vacchi, Edoardo
    Cazzola, Walter
    Pillay, Suresh
    Combemale, Benoit
    [J]. SOFTWARE LANGUAGE ENGINEERING (SLE 2013), 2013, 8225 : 76 - 95
  • [43] SLang: A Domain-specific Language for Survey Questionnaires
    Araujo, Luciane C.
    Casanova, Marco A.
    Leme, Luiz Andre P. P.
    Furtado, Antonio L.
    [J]. PROCEEDINGS OF THE 22ND INTERNATIONAL CONFERENCE ON ENTERPRISE INFORMATION SYSTEMS (ICEIS), VOL 2, 2020, : 133 - 144
  • [44] A domain-specific language approach to programmable networks
    Muller, G
    Lawall, JL
    Thibault, S
    Jensen, REV
    [J]. IEEE TRANSACTIONS ON SYSTEMS MAN AND CYBERNETICS PART C-APPLICATIONS AND REVIEWS, 2003, 33 (03): : 370 - 381
  • [45] Design and implementation of domain-specific language easytime
    Fister, Iztok, Jr.
    Fister, Iztok
    Mernik, Marjan
    Brest, Janez
    [J]. COMPUTER LANGUAGES SYSTEMS & STRUCTURES, 2011, 37 (04) : 151 - 167
  • [46] MDL, a domain-specific language for molecular dynamics
    Cickovski, Trevor
    Sweet, Chris
    Izaguirre, Jesus A.
    [J]. 40TH ANNUAL SIMULATION SYMPOSIUM, PROCEEDINGS, 2007, : 256 - +
  • [47] Conceptual language models for domain-specific retrieval
    Meij, Edgar
    Trieschnigg, Dolf
    de Rijke, Maarten
    Kraaij, Wessel
    [J]. INFORMATION PROCESSING & MANAGEMENT, 2010, 46 (04) : 448 - 469
  • [48] A Domain-specific Language for Configurable Traceability Analysis
    Buender, Hendrik
    Rieger, Christoph
    Kuchen, Herbert
    [J]. MODELSWARD: PROCEEDINGS OF THE 5TH INTERNATIONAL CONFERENCE ON MODEL-DRIVEN ENGINEERING AND SOFTWARE DEVELOPMENT, 2017, : 374 - 381
  • [49] Domain-specific language models and lexicons for tagging
    Coden, AR
    Pakhomov, SV
    Ando, RKB
    Duffy, PH
    Chute, CG
    [J]. JOURNAL OF BIOMEDICAL INFORMATICS, 2005, 38 (06) : 422 - 430
  • [50] ModelTalk: When Everything Is a Domain-Specific Language
    Hen-Tov, Atzmon
    Pinhasi, Assaf
    Schachter, Lior
    Lorenz, David H.
    [J]. IEEE SOFTWARE, 2009, 26 (04) : 39 - 46