【发布时间】:2013-05-27 14:24:59
【问题描述】:
我已经阅读了这个页面,http://llvm.org/docs/WritingAnLLVMPass.html
我可以完全做Hello.so的例子。
现在我只想制作一个可以由 opt 调用的 .so 文件,并将我的 IR 文件名作为输入参数读取。在我提交之后,它会输出文件名。
我之前尝试过几种方法,但我仍然不知道该怎么做......
我希望我能做到这样。
opt -load ../Debug+Asserts/lib/xxxx.so -flag
当我按下 ENTER 时,它会输出文件名 -> "llvm.ll"
谁能帮我写这个简单的程序,我打算优化llvm IR作为我的学期项目,现在我卡在这里...帮助我,谢谢~
你能详细告诉我代码吗,这对我不起作用
using namespace llvm;
namespace {
struct Hello : public ModulePass {
static char ID;
Hello() : ModulePass(ID) {}
virtual bool runOnModule(Module &M) {
dbgs() << M.getModuleIdentifier() << "\n";
return false;
}
};
}
char Hello::ID = 0;
static RegisterPass<Hello> X("hello", "Hello World Pass", false, false);
~
【问题讨论】:
-
比 LLVM 优化得更远?这很难......
-
我要优化分支分歧问题(还有一些我们可以做的,也许哈哈
标签: optimization llvm clang