数据流分析

2024/5/7 16:08:25

构造Dominator Tree以及Dominator Frontier

支配树(Dominator Tree) 更新 再谈Dominator Tree的计算 在生成SSA的时候,需要计算在何处插入正确的 Φ (phi-function) ,一种方法是在所有有多个前驱的Basic Block的开头插入 Φ-node,但是这种方法会插入很多的无用的…

数据流分析中的Distributive Dataflow Problems

Distributive Data flow Problems 一个数据流问题包括如下几部分: CFG数据流值的值域初始的数据流值交汇运算(用于将前驱或者后继节点的值进行“交汇”)传输函数 而Distributive Data flow(可分配数据流问题)问题就…

数据流分析的局限性

业余民科,垃圾内容勿看 引子 前面我们介绍了很多关于数据流分析的知识,虽然说数据流分析是整个代码分析基础中的基础,但是数据流分析还是存在很大的局限性,一部分局限性来自于数据流分析所做的假设(例如假设所有路径…

数据流分析(一)

想学数据流分析的人还是找一个国外大学的讲义学吧,以下内容都是自己多年前按照自己的理解写的,很多内容可能会误人子弟,sorry 引子 编译器后端会对前端生成的中间代码做很多优化,也就是在保证程序语义不变的前提下,提…

数据流分析(三)

想学数据流分析的人还是找一个国外大学的讲义学吧,以下内容都是自己多年前按照自己的理解写的,很多内容可能会误人子弟,sorry #引子 在数据流分析(一)和数据流分析(二)中我们介绍了数据流分析的…

数据流分析(二)

想学数据流分析的人还是找一个国外大学的讲义学吧,以下内容都是自己多年前按照自己的理解写的,很多内容可能会误人子弟,sorry 引子 我们在数据流分析(一)中简要介绍了数据流分析的基本概念,下面我们集中分…