Skip to main navigation Skip to search Skip to main content

Function inlining algorithm for program analysis

  • School of Computer Science and Technology, Harbin Institute of Technology

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

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.

Original languageEnglish
Title of host publicationProceedings - 2009 International Conference on Computational Intelligence and Software Engineering, CiSE 2009
DOIs
StatePublished - 2009
Externally publishedYes
Event2009 International Conference on Computational Intelligence and Software Engineering, CiSE 2009 - Wuhan, China
Duration: 11 Dec 200913 Dec 2009

Publication series

NameProceedings - 2009 International Conference on Computational Intelligence and Software Engineering, CiSE 2009

Conference

Conference2009 International Conference on Computational Intelligence and Software Engineering, CiSE 2009
Country/TerritoryChina
CityWuhan
Period11/12/0913/12/09

Keywords

  • Function call tree
  • Inlining
  • Program analysis
  • Program dependence graph

Fingerprint

Dive into the research topics of 'Function inlining algorithm for program analysis'. Together they form a unique fingerprint.

Cite this