Overview

What is Data Flow Analysis ?

How application-specific Data flows on CFG with safe approximation.

分析算法感兴趣的数据如何流经控制流图。

safe approximation for different purposes 不同的分析目的,对于safe有不同的定义:

相同点:这两种目的往往殊途同归地达到Soundness。

不同的目的对应了不同的手段:1. Data Abstraction 2. Approximation Strategies i.e. transfer functions & control flow handling.


Preliminaries for Data Flow Analysis

Input & Output States

Definition:

$IN[s]\ OUT[s]$ stand for input & output states of program points i.e. before and after executing the IR statements $s$ respectively.

e.g.:

IMG_5B9834796776-1.jpeg

IMG_1264.jpg

IMG_39DFBE1DA174-1.jpeg

IMG_1266.jpg