llvm
acnowa
这个作者很懒,什么都没留下…
展开
-
LLVM获取前驱和后继基本块的数量
今天在查找LLVM的有关资料的时候,发现了一个很好的页面。链接在这里 。这里介绍了检查和使用控制流图的各种使用程序。包括前驱、后继的遍历,获取前驱后继的数量等等使用操作。在里面即提供了pred_size()函数和succ_size()函数来直接的获取基本块的前驱和后继数量。此外BasicBlock类下的方法hasNPredecessors()和hasNPredecessors()函数也很好用。...原创 2020-06-25 17:30:20 · 899 阅读 · 0 评论 -
afl-fuzzer下的llvm_mode编译的一些坑。
由于AFL的llvm_mode需要安装llvm,于是进行llvm的安装。一开始参照网上的安装方法:下载源码然后进行编译等一系列操作。这个过程及其耗时,向师兄请教了一下,才知道llvm提供了Pre-Built Binaries。也就是有预编译好的,只要直接下下来用就行了,不需要进行编译了。...原创 2020-06-21 11:54:50 · 2302 阅读 · 2 评论 -
afl中llvm_mode下的afl-llvm-pass.so.cc源码解析
菜鸟入门,如有任何不当之处,烦请各位路过的大佬指正,不胜感激!首先在匿名的命名空间中,定义一个继承自ModulePass的AFLCoverage类。而对于ModulePass的理解我们可以参考官网对其的介绍:The ModulePass class is the most general of all superclasses that you can use. Deriving from ModulePass indicates that your pass uses the entire prog原创 2020-06-07 22:16:32 · 1925 阅读 · 1 评论