Abstract:
Usually, infeasible paths increase program complexity and program redundancy, produce useless DU (def-use) chains, and affect the result of program static analysis, so analyzing this issue can improve path testing and static analysis techniques of programs, such as data flow analyzing, program slicing and so on. Based on the analysis of infeasible paths, this paper presents a new technique of key branch to faster analyze these infeasible paths more quickly. Firstly, the method finds the key branches by these valid information obtained in the data dependency flow and control dependency flow. Then, a tested path is infeasible if the tested path including a key branch or more. The result shows that the method of key branch can find more infeasible paths in the unit time, and consumes almost the same memory as other methods do.