aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Target/Target.cpp
diff options
context:
space:
mode:
authorMicah Villmow <villmow@gmail.com>2012-10-11 17:21:41 +0000
committerMicah Villmow <villmow@gmail.com>2012-10-11 17:21:41 +0000
commit083189730e40a2da15e6b66e5b220b707febdb9e (patch)
tree6daffbfbb571af888a60f19b0933c443c8488107 /llvm/lib/Target/Target.cpp
parentb1e3e5f553024fcdb5436081854f7d9c3f12852b (diff)
downloadllvm-083189730e40a2da15e6b66e5b220b707febdb9e.zip
llvm-083189730e40a2da15e6b66e5b220b707febdb9e.tar.gz
llvm-083189730e40a2da15e6b66e5b220b707febdb9e.tar.bz2
Add in the first iteration of support for llvm/clang/lldb to allow variable per address space pointer sizes to be optimized correctly.
llvm-svn: 165726
Diffstat (limited to 'llvm/lib/Target/Target.cpp')
-rw-r--r--llvm/lib/Target/Target.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/llvm/lib/Target/Target.cpp b/llvm/lib/Target/Target.cpp
index 219cbf1..393178a 100644
--- a/llvm/lib/Target/Target.cpp
+++ b/llvm/lib/Target/Target.cpp
@@ -56,13 +56,21 @@ LLVMByteOrdering LLVMByteOrder(LLVMTargetDataRef TD) {
}
unsigned LLVMPointerSize(LLVMTargetDataRef TD) {
- return unwrap(TD)->getPointerSize();
+ return unwrap(TD)->getPointerSize(0);
+}
+
+unsigned LLVMPointerSizeForAS(LLVMTargetDataRef TD, unsigned AS) {
+ return unwrap(TD)->getPointerSize(AS);
}
LLVMTypeRef LLVMIntPtrType(LLVMTargetDataRef TD) {
return wrap(unwrap(TD)->getIntPtrType(getGlobalContext()));
}
+LLVMTypeRef LLVMIntPtrTypeForAS(LLVMTargetDataRef TD, unsigned AS) {
+ return wrap(unwrap(TD)->getIntPtrType(getGlobalContext(), AS));
+}
+
unsigned long long LLVMSizeOfTypeInBits(LLVMTargetDataRef TD, LLVMTypeRef Ty) {
return unwrap(TD)->getTypeSizeInBits(unwrap(Ty));
}