• DocumentCode
    2835406
  • Title

    Function Inlining Algorithm for Program Analysis

  • Author

    Wang Tiantian ; Su Xiaohong ; Ma Peijun

  • Author_Institution
    Sch. of Comput. Sci. & Technol., Harbin Inst. of Technol., Harbin, China
  • fYear
    2009
  • fDate
    11-13 Dec. 2009
  • Firstpage
    1
  • Lastpage
    4
  • Abstract
    Most of existing inlining algorithms are used in optimizing compilers and are not suitable for program analysis. Therefore, an inlining algorithm based on program dependence graph is proposed. It uses simple function call tree to determine the sequence of inlining and adopts program dependence graph as the intermediate representation for a program. Inline expansion is performed on program dependence graphs, and a single program dependence graph without call node is produced in the end, so that the original program is transformed into a semantically equivalent program that is free of function invocation. This algorithm has already been applied to the code normalization process of an automatic grading system of student programs and a similar code detection system. Test results show that it can improve the variation removal rate of the code normalization and facilitate program analysis.
  • Keywords
    program diagnostics; trees (mathematics); function call tree; function inlining algorithm; optimizing compiler; program analysis; program dependence graph; Algorithm design and analysis; Computer science; Functional programming; Impedance; Optimizing compilers; Software maintenance; Testing; Tree graphs;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Computational Intelligence and Software Engineering, 2009. CiSE 2009. International Conference on
  • Conference_Location
    Wuhan
  • Print_ISBN
    978-1-4244-4507-3
  • Electronic_ISBN
    978-1-4244-4507-3
  • Type

    conf

  • DOI
    10.1109/CISE.2009.5364393
  • Filename
    5364393