diff options
author | Matt Arsenault <Matthew.Arsenault@amd.com> | 2013-07-26 17:37:20 +0000 |
---|---|---|
committer | Matt Arsenault <Matthew.Arsenault@amd.com> | 2013-07-26 17:37:20 +0000 |
commit | 6f4be90570e54ce89dc053c43918b39cf439dff9 (patch) | |
tree | 56d3e3825b60c69fde7f2ec7172fe88ed64f5130 /llvm/lib/IR/DataLayout.cpp | |
parent | 8ea2e40296a0cb143cb0b431a18a17aaee0100f3 (diff) | |
download | bcm5719-llvm-6f4be90570e54ce89dc053c43918b39cf439dff9.tar.gz bcm5719-llvm-6f4be90570e54ce89dc053c43918b39cf439dff9.zip |
Re-add DataLayout pointer size convenience functions.
These were reverted in r167222 along with the rest
of the last different address space pointer size attempt.
These will be used in later commits.
llvm-svn: 187223
Diffstat (limited to 'llvm/lib/IR/DataLayout.cpp')
-rw-r--r-- | llvm/lib/IR/DataLayout.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/llvm/lib/IR/DataLayout.cpp b/llvm/lib/IR/DataLayout.cpp index adb2d7a62ac..d1096d74242 100644 --- a/llvm/lib/IR/DataLayout.cpp +++ b/llvm/lib/IR/DataLayout.cpp @@ -507,6 +507,16 @@ std::string DataLayout::getStringRepresentation() const { return OS.str(); } +unsigned DataLayout::getPointerTypeSizeInBits(Type *Ty) const { + assert(Ty->isPtrOrPtrVectorTy() && + "This should only be called with a pointer or pointer vector type"); + + if (Ty->isPointerTy()) + return getTypeSizeInBits(Ty); + + Type *EleTy = cast<VectorType>(Ty)->getElementType(); + return getTypeSizeInBits(EleTy); +} /*! \param abi_or_pref Flag that determines which alignment is returned. true |