ilocker:关注 Android 安全(新手) QQ: 2597294287

语法:

<result> = phi <ty> [ <val0>, <label0>], ...

示例:

Loop:       ;Infinite loop that counts from 0 on up...
%indvar = phi i32 [ 0, %LoopHeader ], [ %nextindvar, %Loop ]
%nextindvar = add i32 %indvar, 1
br label %Loop

phi 指令用于实现 PHI 节点。

在运行时,phi 指令根据“在当前 block 之前执行的是哪一个 predecessor(前任) block”来得到相应的值。

以上面示例中的 phi 指令为例,如果当前 block 之前执行的是 LoopHeader,则该 phi 指令的值是 0,而如果是从 Loop label 过来的,则该 phi 指令的值是 %nextindvar。

在 phi 指令的语法中,后面是一个列表,列表中的每个元素是一个 value/label 对,每个 label 表示一个当前 block 的 predecessor block,phi 指令就是根据 label 选相应的 value。

phi 指令必须在 basic block 的最前面,也就是在一个 basic block 中,在 phi 指令之前不允许有非 phi 指令。

最新文章

  1. Linux 压缩解压
  2. (实用篇)PHP中单引号与双引号的区别分析
  3. 一个国内的 android 在线帮助网站
  4. bzoj 4010: [HNOI2015]菜肴制作 拓扑排序
  5. [转] Web前端优化之 Server篇
  6. python 学习笔记re
  7. iOS开发——UI篇OC篇&amp;UIStackView详解
  8. (function(){}).call(window) 严格模式匿名函数的this指向undefined
  9. SQL觸發器聯級刪除
  10. SelectedNode与e.node的区别
  11. mysql的压缩特性-需求
  12. ZooKeeper对比Eureka
  13. Kasaraju算法--强连通图遍历及其python实现
  14. 初识 Proxysql
  15. [转]Java事件处理机制- 事件监听器的四种实现方式
  16. R基础学习(二)-- 连接sqlserver
  17. linux学习记录.4.常用命令
  18. RCF库ClientStub.setAutoReconnect
  19. IO流常规操作
  20. div横排放置对齐问题;block,inline,inline-block区别

热门文章

  1. 对于 Web 开发很有用的 jQuery 效果制作教程
  2. HTML5 模拟现实物理效果,感受 Web 技术魅力
  3. HTML5拖放(drag and drop)与plupload的懒人上传
  4. [Java] Tomcat环境变量设置
  5. ARC下内存泄露问题
  6. 单例模式-用GCD实现
  7. Hadoop概念学习系列之Hadoop 生态系统(十二)
  8. android Gui系统之SurfaceFlinger(3)---SurfaceFlinger
  9. 史上最详细“截图”搭建Hexo博客并部署到Github
  10. EMC Documentum DQL整理(一)