summaryrefslogtreecommitdiffstats
path: root/lldb/source/API
diff options
context:
space:
mode:
authorEnrico Granata <egranata@apple.com>2015-01-28 22:18:02 +0000
committerEnrico Granata <egranata@apple.com>2015-01-28 22:18:02 +0000
commit7684e6e1c2b424729a6b432b27f17fa2a3382cb4 (patch)
treea7aaa38ab67f00f44ac0d49fd60d7442cfa4ad05 /lldb/source/API
parent563cba6d2b29510ac23db46173f1b86abe7102cc (diff)
downloadbcm5719-llvm-7684e6e1c2b424729a6b432b27f17fa2a3382cb4.tar.gz
bcm5719-llvm-7684e6e1c2b424729a6b432b27f17fa2a3382cb4.zip
Add logic to ClangASTType and SBType to discover information about vector types
llvm-svn: 227383
Diffstat (limited to 'lldb/source/API')
-rw-r--r--lldb/source/API/SBType.cpp23
1 files changed, 22 insertions, 1 deletions
diff --git a/lldb/source/API/SBType.cpp b/lldb/source/API/SBType.cpp
index 1f253804d4f..31a4eba8bf3 100644
--- a/lldb/source/API/SBType.cpp
+++ b/lldb/source/API/SBType.cpp
@@ -164,6 +164,14 @@ SBType::IsArrayType()
}
bool
+SBType::IsVectorType()
+{
+ if (!IsValid())
+ return false;
+ return m_opaque_sp->GetClangASTType(true).IsVectorType(nullptr, nullptr);
+}
+
+bool
SBType::IsReferenceType()
{
if (!IsValid())
@@ -220,7 +228,20 @@ SBType::GetArrayElementType()
return SBType(TypeImplSP(new TypeImpl(m_opaque_sp->GetClangASTType(true).GetArrayElementType())));
}
-bool
+SBType
+SBType::GetVectorElementType ()
+{
+ SBType type_sb;
+ if (IsValid())
+ {
+ ClangASTType vector_element_type;
+ if (m_opaque_sp->GetClangASTType(true).IsVectorType(&vector_element_type, nullptr))
+ type_sb.SetSP(TypeImplSP(new TypeImpl(vector_element_type)));
+ }
+ return type_sb;
+}
+
+bool
SBType::IsFunctionType ()
{
if (!IsValid())
OpenPOWER on IntegriCloud