LLVM IR program slicing method based on improved system dependence graph

A technology of system dependency graph and program slicing, which is applied in the direction of memory system, program control design, program control device, etc., can solve the problems of high complexity and low versatility, and achieve high slicing accuracy, strong versatility, and complex time The effect of reducing

Inactive Publication Date: 2016-06-22
NANJING UNIV OF POSTS & TELECOMM
View PDF4 Cites 10 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

[0005] Although people have proposed a variety of program slicing methods, the objects of slicing are generally programs written in a specific language such as C, C++, Python, etc., and the versatility is not strong.
Today's programming languages ​​are becoming simpler and more user-friendly, becoming more functional and more complex

Method used

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
View more

Image

Smart Image Click on the blue labels to locate them in the text.
Viewing Examples
Smart Image
  • LLVM IR program slicing method based on improved system dependence graph
  • LLVM IR program slicing method based on improved system dependence graph

Examples

Experimental program
Comparison scheme
Effect test

Embodiment Construction

[0048] In order to make the object, technical solution and advantages of the present invention clearer, the present invention will be further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described here are only used to explain the present invention, not to limit the present invention.

[0049] Such as figure 1 As shown, this embodiment is an LLVMIR program slicing method based on an improved system dependency graph. First, a program dependency graph is constructed, and the LLVMIR statements of a single program are sliced ​​using the graph reachability algorithm. Then, according to the calling relationship between programs and the corresponding relationship between real and formal parameters, the analysis of a single program is extended to multiple programs. Then, a new method is used to construct transitively dependent edges, which improves HRB's method of constructing System De...

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to view more

PUM

No PUM Login to view more

Abstract

The invention discloses an LLVM IR program slicing method based on an improved system dependency graph. First, construct a program dependency graph; then use the graph reachability algorithm to slice the LLVM IR statement of a single program; and then expand the analysis of a single program according to the calling relationship between programs and the corresponding relationship between actual parameters and formal parameters Go to multiple programs; then use a new method to construct transitive dependency edges, and then complete the construction of the system dependency graph; finally, use the two-stage graph reachability algorithm to traverse the system dependency graph to complete the slicing of multiple programs. . The present invention greatly reduces the time complexity of slicing.

Description

technical field [0001] The invention relates to the technical field of software analysis, in particular to a program slicing method. Background technique [0002] Today's era is an era of rapid development of computer technology. People's production and life are inseparable from numerous software systems. While the number and scale of software systems are constantly growing, the complexity is also increasing with the progress of software systems. come higher. Many traditional program analysis methods can no longer meet our needs, and we need more technologies and tools to help us complete the work of program analysis. Therefore, program analysis has become a very important part of the software field, and we need more people to devote themselves to the research work of program analysis. [0003] Among many program analysis techniques, program slicing technology is a very important part. Program slicing is a program decomposition technique, that is, an important method of p...

Claims

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to view more

Application Information

Patent Timeline
no application Login to view more
Patent Type & Authority Applications(China)
IPC IPC(8): G06F9/44G06F9/45G06F11/36
CPCG06F8/433G06F8/75G06F11/362G06F11/3668
Inventor 张迎周徐晨晨吴寄语闫丽尹秀陈星昊王星赵莲
Owner NANJING UNIV OF POSTS & TELECOMM
Who we serve
  • R&D Engineer
  • R&D Manager
  • IP Professional
Why Eureka
  • Industry Leading Data Capabilities
  • Powerful AI technology
  • Patent DNA Extraction
Social media
Try Eureka
PatSnap group products