Add some cleanup to the DataLayout changes requested by Chandler.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@166607 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Micah Villmow
2012-10-24 18:36:13 +00:00
parent 199063ea37
commit b52fb87617
11 changed files with 38 additions and 27 deletions

View File

@@ -524,6 +524,14 @@ std::string DataLayout::getStringRepresentation() const {
return OS.str();
}
unsigned DataLayout::getPointerTypeSizeInBits(Type *Ty) const
{
if (Ty->isPointerTy()) return getTypeSizeInBits(Ty);
if (Ty->isVectorTy()
&& cast<VectorType>(Ty)->getElementType()->isPointerTy())
return getTypeSizeInBits(cast<VectorType>(Ty)->getElementType());
return getPointerSizeInBits(0);
}
uint64_t DataLayout::getTypeSizeInBits(Type *Ty) const {
assert(Ty->isSized() && "Cannot getTypeInfo() on a type that is unsized!");