TRICK-tracking and ReusIng compiler's knowledge

被引:0
|
作者
Mannarswamy, Sandya [1 ]
Doval, Shruti [1 ]
Sandanagobalane, Hariharan [1 ]
Nanjundaiah, Mahesha [1 ]
机构
[1] Hewlett Packard Corp, Bangalore, Karnataka, India
关键词
compiler; optimization; tools; reuse; program analysis;
D O I
10.1145/1229493.1229498
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Compilers, during compilation, analyze the application being compiled and build up extensive knowledge about the program. This knowledge is essential for the compiler to produce correct object code. Though some part of this knowledge is retained in the generated object files as symbol table information to be used by the linker and/or debugger, most of it is discarded after the compilation is done. In this paper, we introduce the TRICK framework, which is an attempt to retain and reuse this internal information generated by the compiler as part of its program analysis, in building new tools or enhancing existing tools as well for reuse by the compiler for continuous program optimization. We present examples of how development and maintenance of various program analysis tools can be simplified by using the TRICK framework describing tools developed by our group as well as how TRICK framework can be employed in continuous program optimization by the compiler. TRICK framework can be part of both static and dynamic compilation system, though our current usage model is in the context of a static compilation system,
引用
收藏
页码:28 / 37
页数:10
相关论文
共 50 条
  • [1] A compiler scheme for reusing intermediate computation results
    Ding, YH
    Li, ZY
    [J]. CGO 2004: INTERNATIONAL SYMPOSIUM ON CODE GENERATION AND OPTIMIZATION, 2004, : 277 - 288
  • [2] Reusing design knowledge
    Ahmed, S
    Wallace, K
    [J]. ADVANCES IN DESIGN, 2006, : 75 - +
  • [3] REFUSING THE GOD TRICK: Engaging Black Women's Knowledge
    Harrison, Faye V.
    [J]. CULTURAL ANTHROPOLOGY, 2022, 37 (02) : 182 - 190
  • [4] Knowledge management by reusing experience
    Delaître, S
    Moisan, S
    [J]. KNOWLEDGE ENGINEERING AND KNOWLEDGE MANAGEMENT, PROCEEDINGS: METHODS, MODELS, AND TOOLS, 2000, 1937 : 304 - 311
  • [5] The CakeML Compiler Explorer Tracking Intermediate Representations in a Verified Compiler
    Hjort, Rikard
    Holmgren, Jakob
    Persson, Christian
    [J]. TRENDS IN FUNCTIONAL PROGRAMMING (TFP 2017), 2018, 10788 : 135 - 148
  • [6] Transfer Learning by Reusing Structured Knowledge
    Yang, Qiang
    Zheng, Vincent W.
    Li, Bin
    Zhuo, Hankz Hankui
    [J]. AI MAGAZINE, 2011, 32 (02) : 95 - 106
  • [7] BQL: Capturing and Reusing Debugging Knowledge
    Gu, Zhongxian
    Barr, Earl T.
    Su, Zhendong
    [J]. 2011 33RD INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE), 2011, : 1001 - 1003
  • [8] Reusing knowledge in embedded systems modelling
    Marincic, Jelena
    Mader, Angelika
    Wieringa, Roel
    Lucas, Yan
    [J]. EXPERT SYSTEMS, 2013, 30 (03) : 185 - 199
  • [9] Towards Reusing Data Cleaning Knowledge
    Almeida, Ricardo
    Maio, Paulo
    Oliveira, Paulo
    Joao, Barroso
    [J]. NEW CONTRIBUTIONS IN INFORMATION SYSTEMS AND TECHNOLOGIES, VOL 1, PT 1, 2015, 353 : 143 - 150
  • [10] Reusing design knowledge based on design cases and knowledge map
    Yang, Cheng
    Liu, Zheng
    Wang, Haobai
    Shen, Jiaoqi
    [J]. INTERNATIONAL JOURNAL OF TECHNOLOGY AND DESIGN EDUCATION, 2013, 23 (04) : 1063 - 1077