本文整理汇总了C++中BlockIterator::isDecoded方法的典型用法代码示例。如果您正苦于以下问题:C++ BlockIterator::isDecoded方法的具体用法?C++ BlockIterator::isDecoded怎么用?C++ BlockIterator::isDecoded使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类BlockIterator
的用法示例。
在下文中一共展示了BlockIterator::isDecoded方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: dumpInstruction
void CorDisasm::dumpInstruction(const BlockIterator &BIter) const {
assert(BIter.isDecoded() && "Cannot print before Decode");
uint64_t InstSize = BIter.InstrSize;
string buffer;
raw_string_ostream OS(buffer);
OS << format("%8llx: ", BIter.Addr);
dumpBytes(ArrayRef<uint8_t>(BIter.Ptr, InstSize), OS);
if ((TheTargetArch == Target_X86) || (TheTargetArch == Target_X64)) {
// For architectures with a variable size instruction, we pad the
// byte dump with space up to 7 bytes. Some instructions might be longer,
// but ...
const char *Padding[] = {"",
" ",
" ",
" ",
" ",
" ",
" "};
OS << (Padding[(InstSize < 7) ? (7 - InstSize) : 0]);
}
IP->printInst(&BIter.Inst, OS, "", *STI);
Print->Dump(OS.str().c_str());
}