Pointer analysis method based on offline constraint graph

A technology of pointer analysis and constraint graph, applied in the field of pointer analysis, which can solve the problems that affect the efficiency of pointer analysis algorithm and redundant depth-first search process.
CN105589730AActive Publication Date: 2016-05-18SOUTHEAST UNIV

Patent Information

Authority / Receiving Office
CN · China
Current Assignee / Owner
SOUTHEAST UNIV
Publication Date
2016-05-18

Smart Images

  • Figure 1
    Figure 1
Patent Text Reader

Abstract

The present invention discloses a pointer analysis method based on an offline constraint graph. The method comprises two phases: an offline analysis phase and an online analysis phase. In the offline analysis phase, ADD firstly constructs an offline constraint graph, next defines and calculates an ancestor set and a descendant set for each node in the offline constraint graph, then calculates a domination tree corresponding to the offline constraint graph, and based on domination node information, calculates equivalent top-layer variable pair information of a pointer. In the online analysis phase, the ADD performs online cycle detection by using the ancestor set and the descendant set of the node on the one hand, and reduces spreading overheads of inter-node point information in an analysis process by using the equivalent top-layer variable pair information of the pointer on the other hand. Compared with the conventional LCD based on the contained pointer analysis method, the ADD is capable of improving pointer analysis efficiency without affecting precision of the point information.
Need to check novelty before this filing date? Find Prior Art

Description

technical field

[0001] The invention belongs to the field of static program analysis and relates to a pointer analysis method. Background technique

[0002] Pointer analysis is a static program analysis technique. Its goal is to statically determine which addresses (variable or function storage locations) a pointer variable can point to, that is, to statically determine all possible values ​​of a pointer variable when the program is running. Pointer analysis takes the program source code (or some kind of intermediate code representation) as input, and outputs the pointer pointing information contained in the program. Since pointers (references) are widely used in C / C++ (Java) programs, many static program analysis techniques need to resolve the indirect references contained in the program according to the pointer pointing information, and the results of pointer analysis directly affect the effectiveness of other static program analysis techniques. As an enabling technique f...

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