LLVM - 开发属于自己的llvm plugin(1)
开始 这里使用的语言是Rust! LLVM 插件仅仅是一个 dylib,LLVM 工具(例如opt、lld )加载它时会为其提供PassBuilder。因此,你必须在你的Cargo.toml 添加下面这行: [lib] crate-type = ["cdylib"] PassBuilder允许注册
阅读全文 →开始 这里使用的语言是Rust! LLVM 插件仅仅是一个 dylib,LLVM 工具(例如opt、lld )加载它时会为其提供PassBuilder。因此,你必须在你的Cargo.toml 添加下面这行: [lib] crate-type = ["cdylib"] PassBuilder允许注册
阅读全文 →ollvm有很多种方法去除,其中ollvm老是生成那种没什么鸟用的分支跳转,无论是用unidbg/unicorn去trace还是做上下文收集把无用分支跳转nop掉(部分分支永远跑不通),都无法解决ollvm的问题。 这个时候github老是给我推送什么把二进制文件翻译成LLVM-IR的奇怪文章,这个
阅读全文 →本次编译及运行测试均在Deepin(Debian)平台。 下载源代码 首先我们得克隆llvm-project完整的代码,不能只下载llvm子项目的代码(这样只有旧版才能编译的了)。 github git clone https://github.com/llvm/llvm-project gitee
阅读全文 →