LLVM でオペレーターの完全な名前を取得するにはどうすればよいですか?
ブロックを反復処理してから、各命令でオペレーター名を取得しようとしましたが、その一部しか取得できませんでした。次のコードを実行します。
virtual bool runOnBasicBlock(BasicBlock &bb) {
for (auto it(bb.begin()); it != bb.end(); ++it) {
errs() << it->getName() << '\t' << *it << '\n';
}
}
次のような出力行が表示されます。
icmp %cmp = icmp slt i32 %i.0, %argc
icmp %cmp1 = icmp sgt i32 %call, %max.0
add %inc = add nsw i32 %i.0, 1
との代わりにicmp slt
、icmp sgt
、 、を取得したいと思います。add nsw
icmp
add