百趣云 百趣云的博客

🔖OLLVM

博主
百趣云
14小时前 · NEW!
先看懂平坦化长什么样正常函数的 CFG(控制流图)是树状的:入口 → 分支 → 汇合 → 返回,层次分明。被 OLLVM 控制流平坦化(Control Flow Flattening)处理过的函数,CFG 变成一个大循环套 switch:入口 ↓ state = 初始值 ↓ ┌─────────────┐ │ while(1) │ ←──┐ │ switch(state) │ │ └─────────────┘ │ ↑___________┘所有真实代码块被拍平到同一层级,执行顺序由 state 变量驱动。读这种代码就像看被洗牌的电影——每