数据流分析 Data-flow analysis
数据流分析 是一种用于收集计算机进程在不同点计算的值的信息的技术。一个进程的控制流图(control flow graph, CFG)被用来确定对变量的一次赋值可能传播到进程中的哪些部分。这些信息通常被编译器用来优化进程。数据流分析的一个典型的例子就是可到达定义的计算。
进行数据流分析的最简单的一种形式就是对控制流图的某个节点创建数据流方程,然后通过迭代计算,反复求解,直到到达不动点。这种一般的方法是由Gary Kildall在Naval Postgraduate School讲课时发明的。