Program Slicing Method of LLVM IR Based on Information-Flow Analysis

Program slicing is one of the important methods for program analysis and understanding, which has been widely used in the actual production and research. Currently there is an information flow analysis method that uses information flow relationships to define slices. The information-flow method can analyze intra-procedures precisely, but not inter-procedures. Therefore, the inter-procedural slicing technology based on information flow analysis needs further study. In order to further improve the information-flow analysis method, an inter-procedural slicing algorithm based on information-flow analysis is proposed in this paper. An information-flow slicer is implemented based on this algorithm, named as InfoSlicer. The object language of this paper is LLVM IR, which can better meet full development of the applications when compared with other front-end languages.