Incremental Analysis of MOD Problem for C

Incremental data flow analysis seeks to efficiently and precisely update data flow information after source code changes, based on the knowledge of the former solution and the changes, without recomputation from scratch. Interprocedural modification side effect analysis (i.e., MOD) finds the set of variables modified by execution of a statement. Computing MOD information for a language with general purpose pointers, like C, is very complicated and costly. We study the applicability of the hybrid algorithm [MR90] to incrementalize PMOD a subproblem of the MOD problem for C. We also show how to update data flow information when non-structural or structural changes are made to the flow graph.

[1]  Barbara G. Ryder ISMM: the incremental software maintenance manager , 1989, Proceedings. Conference on Software Maintenance - 1989.

[2]  Barbara G. Ryder,et al.  Incremental data-flow analysis algorithms , 1988, TOPL.

[3]  John Banning,et al.  : An Efficient , 2022 .

[4]  Barbara G. Ryder,et al.  Hybrid incremental alias algorithms , 1991, Proceedings of the Twenty-Fourth Annual Hawaii International Conference on System Sciences.

[5]  William Landi,et al.  Undecidability of static analysis , 1992, LOPL.

[6]  Barbara G. Ryder,et al.  Conditions for incremental iteration: Examples and counterexamples , 1988, Sci. Comput. Program..

[7]  David Callahan,et al.  The program summary graph and flow-sensitive interprocedual data flow analysis , 1988, PLDI '88.

[8]  Barbara G. Ryder,et al.  Interprocedural modification side effect analysis with pointer aliasing , 1993, PLDI '93.

[9]  Alfred V. Aho,et al.  Compilers: Principles, Techniques, and Tools , 1986, Addison-Wesley series in computer science / World student series edition.

[10]  Barbara G. Ryder,et al.  An efficient hybrid algorithm for incremental data flow analysis , 1989, POPL '90.

[11]  Mary Lou Soffa,et al.  An Incremental Version of Iterative Data Flow Analysis , 1989, IEEE Trans. Software Eng..

[12]  Barbara G. Ryder,et al.  Defining flow sensitivity in data flow problems , 1995 .

[13]  Barbara G. Ryder,et al.  Elimination algorithms for data flow analysis , 1986, CSUR.

[14]  Barbara G. Ryder,et al.  Pointer-induced aliasing: a problem classification , 1991, POPL '91.