如何在LLVM传递中添加新的代码行?

时间:2017-01-23 12:09:26

标签: c++ llvm

我正在编写 LLVM传递,其中我需要添加一行代码

import webbrowser webbrowser.open_new(url)

我需要在程序的某个特定点添加它。那么我将如何写一个直接添加这行代码的传递(我应采取什么方法)以及如何使用LLVM传递在特定点输入此代码(此时需要进行此更改的信号) )吗

1 个答案:

答案 0 :(得分:1)

要获得一组指令,您可以编写C / C ++代码并使用以下命令将其编译为llvm bitcode:

  

clang test.cpp -emit-llvm -S -o test.ll

然后使用您喜欢的编辑器打开 test.ll 并阅读说明集。 有一次,你可以写自己的通行证,其中包括:

  1. 将创建一个函数,其中包含上面获得的一组指令和
  2. 将找到调用此函数的点