本文整理汇总了C++中TargetData::getPointerSize方法的典型用法代码示例。如果您正苦于以下问题:C++ TargetData::getPointerSize方法的具体用法?C++ TargetData::getPointerSize怎么用?C++ TargetData::getPointerSize使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类TargetData
的用法示例。
在下文中一共展示了TargetData::getPointerSize方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: getTypeSize
static unsigned getTypeSize(TargetData &TD, Type *type) {
if (type->isFunctionTy()) /* it is not sized, weird */
return TD.getPointerSize();
if (!type->isSized())
return 100; /* FIXME */
if (StructType *ST = dyn_cast<StructType>(type))
return TD.getStructLayout(ST)->getSizeInBytes();
return TD.getTypeAllocSize(type);
}
示例2: getEntrySize
/// getEntrySize - Return the size of each entry in the jump table.
unsigned MachineJumpTableInfo::getEntrySize(const TargetData &TD) const {
// The size of a jump table entry is 4 bytes unless the entry is just the
// address of a block, in which case it is the pointer size.
switch (getEntryKind()) {
case MachineJumpTableInfo::EK_BlockAddress:
return TD.getPointerSize();
case MachineJumpTableInfo::EK_GPRel32BlockAddress:
case MachineJumpTableInfo::EK_LabelDifference32:
case MachineJumpTableInfo::EK_Custom32:
return 4;
case MachineJumpTableInfo::EK_Inline:
return 0;
}
assert(0 && "Unknown jump table encoding!");
return ~0;
}