如何获得LLVM IR指令的文本表示?

问题描述:

如果Illvm::Instruction型的,我们可以通过errs() << I;如何获得LLVM IR指令的文本表示?

打印出人类可读的形式(文本表示)相同的我想要的分配完全相同的表述到std::string到C类型的字符串。我怎样才能做到这一点?

好,LLVM提供了一个字符串流,以及:

#include <llvm/Support/raw_ostream.h> 

使用方法如下:

std::string str; 
llvm::raw_string_ostream(str) << I; 

// use str