aboutsummaryrefslogtreecommitdiff
path: root/utils/clangVisualizers.txt
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2012-08-15 20:02:54 +0000
committerDimitry Andric <dim@FreeBSD.org>2012-08-15 20:02:54 +0000
commit56d91b49b13fe55c918afbda19f6165b5fbff87a (patch)
tree9abb1a658a297776086f4e0dfa6ca533de02104e /utils/clangVisualizers.txt
parent41e20f564abdb05101d6b2b29c59459a966c22cc (diff)
downloadsrc-56d91b49b13fe55c918afbda19f6165b5fbff87a.tar.gz
src-56d91b49b13fe55c918afbda19f6165b5fbff87a.zip
Vendor import of clang trunk r161861:vendor/clang/clang-trunk-r161861
Notes
Notes: svn path=/vendor/clang/dist/; revision=239313 svn path=/vendor/clang/clang-trunk-r161861/; revision=239314; tag=vendor/clang/clang-trunk-r161861
Diffstat (limited to 'utils/clangVisualizers.txt')
-rw-r--r--utils/clangVisualizers.txt313
1 files changed, 285 insertions, 28 deletions
diff --git a/utils/clangVisualizers.txt b/utils/clangVisualizers.txt
index 0fef65f4ed3e..8019b9cc16e3 100644
--- a/utils/clangVisualizers.txt
+++ b/utils/clangVisualizers.txt
@@ -3,15 +3,47 @@
llvm::SmallVector<*,*>{
preview (
+ #if ((($T1*)$e.EndX - ($T1*)$e.BeginX) == 0) ( "empty" )
+ #else (
+ #(
+ "[",
+ ($T1*)$e.EndX - ($T1*)$e.BeginX,
+ "](",
+ #array(
+ expr: (($T1*)$e.BeginX)[$i],
+ size: ($T1*)$e.EndX - ($T1*)$e.BeginX
+ ),
+ ")"
+ )
+ )
+ )
+
+ children (
#(
- "[",
- ($T1*)$e.EndX - ($T1*)$e.BeginX,
- "](",
+ #([size] : ($T1*)$e.EndX - ($T1*)$e.BeginX),
+ #([capacity] : ($T1*)$e.CapacityX - ($T1*)$e.BeginX),
#array(
expr: (($T1*)$e.BeginX)[$i],
size: ($T1*)$e.EndX - ($T1*)$e.BeginX
- ),
- ")"
+ )
+ )
+ )
+}
+
+llvm::SmallVectorImpl<*>{
+ preview (
+ #if ((($T1*)$e.EndX - ($T1*)$e.BeginX) == 0) ( "empty" )
+ #else (
+ #(
+ "[",
+ ($T1*)$e.EndX - ($T1*)$e.BeginX,
+ "](",
+ #array(
+ expr: (($T1*)$e.BeginX)[$i],
+ size: ($T1*)$e.EndX - ($T1*)$e.BeginX
+ ),
+ ")"
+ )
)
)
@@ -27,6 +59,11 @@ llvm::SmallVector<*,*>{
)
}
+llvm::SmallString<*>{
+ preview ([$e.BeginX,s])
+ stringview ([$e.BeginX,sb])
+}
+
llvm::StringRef{
preview ([$e.Data,s])
stringview ([$e.Data,sb])
@@ -55,6 +92,7 @@ llvm::PointerIntPair<*,*,*,*>{
children (
#(
+ #([raw members] : [$e,!]),
#([ptr] : ($T1*)($e.Value & $e.PointerBitMask)),
#([int] : ($T3)($e.Value >> $e.IntShift) & $e.IntMask)
)
@@ -63,18 +101,16 @@ llvm::PointerIntPair<*,*,*,*>{
llvm::PointerUnion<*,*>{
preview (
- #if ((($e.Val.Value >> $e.Val.IntShift) & $e.Val.IntMask) == 0) (
- "PT1"
- ) #else (
- "PT2"
- )
+ #if ((($e.Val.Value >> $e.Val.IntShift) & $e.Val.IntMask) == 0) ( "PT1" )
+ #else ( "PT2" )
)
children (
#(
+ #([raw members] : [$e,!]),
#if ((($e.Val.Value >> $e.Val.IntShift) & $e.Val.IntMask) == 0) (
#([ptr] : ($T1)($e.Val.Value & $e.Val.PointerBitMask))
- ) #else (
+ ) #else (
#([ptr] : ($T2)($e.Val.Value & $e.Val.PointerBitMask))
)
)
@@ -83,13 +119,9 @@ llvm::PointerUnion<*,*>{
llvm::PointerUnion3<*,*,*>{
preview (
- #if (($e.Val.Val.Value & 0x2) == 2) (
- "PT2"
- ) #elif (($e.Val.Val.Value & 0x1) == 1) (
- "PT3"
- ) #else (
- "PT1"
- )
+ #if (($e.Val.Val.Value & 0x2) == 2) ( "PT2" )
+ #elif (($e.Val.Val.Value & 0x1) == 1) ( "PT3" )
+ #else ( "PT1" )
)
children (
@@ -107,22 +139,17 @@ llvm::PointerUnion3<*,*,*>{
llvm::PointerUnion4<*,*,*,*>{
preview (
- #if (($e.Val.Val.Value & 0x3) == 3) (
- "PT4"
- ) #elif (($e.Val.Val.Value & 0x2) == 2) (
- "PT2"
- ) #elif (($e.Val.Val.Value & 0x1) == 1) (
- "PT3"
- ) #else (
- "PT1"
- )
+ #if (($e.Val.Val.Value & 0x3) == 3) ( "PT4" )
+ #elif (($e.Val.Val.Value & 0x2) == 2) ( "PT2" )
+ #elif (($e.Val.Val.Value & 0x1) == 1) ( "PT3" )
+ #else ( "PT1" )
)
children (
#(
#if (($e.Val.Val.Value & 0x3) == 3) (
#([ptr] : ($T4)(($e.Val.Val.Value >> 2) << 2))
- ) #elif (($e.Val.Val.Value & 0x2) == 2) (
+ ) #elif (($e.Val.Val.Value & 0x2) == 2) (
#([ptr] : ($T2)(($e.Val.Val.Value >> 2) << 2))
) #elif (($e.Val.Val.Value & 0x1) == 1) (
#([ptr] : ($T3)(($e.Val.Val.Value >> 2) << 2))
@@ -132,3 +159,233 @@ llvm::PointerUnion4<*,*,*,*>{
)
)
}
+
+llvm::IntrusiveRefCntPtr<*>{
+ preview (
+ #if ($e.Obj == 0) ( "empty" )
+ #else (
+ #(
+ "[RefCnt=", $e.Obj->ref_cnt,
+ ", ",
+ "Obj=", $e.Obj,
+ "]"
+ )
+ )
+ )
+
+ children (
+ #if ($e.Obj == 0) ( #array(expr: 0, size: 0) )
+ #else (
+ #(
+ #(RefCnt : $e.Obj->ref_cnt),
+ #(Obj : $e.Obj)
+ )
+ )
+ )
+}
+
+llvm::OwningPtr<*>{
+ preview (
+ #if ($e.Ptr == 0) ( "empty" )
+ #else ( $e.Ptr )
+ )
+
+ children (
+ #if ($e.Ptr == 0) ( #array(expr: 0, size: 0) )
+ #else ( #(Ptr : $e.Ptr) )
+ )
+}
+
+llvm::SmallPtrSet<*,*>{
+ preview (
+ #(
+ #if (($e.CurArray) == ($e.SmallArray)) ( "[Small Mode] " )
+ #else ( "[Big Mode] " ),
+ "NumElements=", $e.NumElements,
+ " CurArraySize=", $e.CurArraySize
+ )
+ )
+
+ children (
+ #(
+ #([raw members] : [$c,!]),
+ #(NumElements : $e.NumElements),
+ #(CurArraySize : $e.CurArraySize),
+ #array(
+ expr: $e.CurArray[$i],
+ size: $e.CurArraySize + 1
+ ) : ($T1*)&$e
+ )
+ )
+}
+
+llvm::DenseMap<*,*,*>{
+ preview (
+ #if ($e.NumEntries == 0) ( "empty" )
+ #else (
+ #(
+ "[NumEntries=", $e.NumEntries,
+ " NumBuckets=", $e.NumBuckets,
+ "]"
+ )
+ )
+ )
+
+ children (
+ #if ($e.NumEntries == 0) ( #array(expr: 0, size: 0) )
+ #else (
+ #(
+ #([raw members] : [$c,!]),
+ #(NumEntries : $e.NumEntries),
+ #(NumBuckets : $e.NumBuckets),
+ #array(
+ expr: $e.Buckets[$i],
+ size: $e.NumBuckets
+ )
+ )
+ )
+ )
+}
+
+llvm::StringMap<*,*>{
+ preview (
+ #(
+ "[NumBuckets=", $e.NumBuckets,
+ " ItemSize=", $e.ItemSize,
+ "]"
+ )
+ )
+
+ children (
+ #(
+ #([raw members] : [$c,!]),
+ #(NumBuckets : $e.NumBuckets),
+ #(ItemSize : $e.ItemSize),
+ #array(
+ expr: $e.TheTable[$i],
+ size: $e.NumBuckets,
+ ) : (llvm::StringMapEntry<$T1>*)&$e
+ )
+ )
+}
+
+llvm::StringMapEntry<*>{
+ preview (
+ #if ($e.StrLen == 0) ( "empty" )
+ #else ( #(Entry : $e.second) )
+ )
+
+ children (
+ #if ($e.StrLen == 0) ( "empty" )
+ #else ( #(Entry : $e.second) )
+ )
+}
+
+clang::DirectoryEntry|clang::FileEntry|clang::PragmaHandler{
+ preview ( [$e.Name,s] )
+ children (
+ #(
+ #([raw members] : [$c,!]),
+ #(Name : [$e.Name,s])
+ )
+ )
+}
+
+clang::DeclarationName{
+ preview (
+ ; enum values from clang::DeclarationName::StoredNameKind
+ #if ($e.Ptr == 0) (
+ "empty"
+ ) #elif (($e.Ptr & $e.PtrMask) == $e.StoredIdentifier) (
+ #else ( #("Identifier, ", (clang::IdentifierInfo*)($e.Ptr & ~$e.PtrMask)) )
+ ) #elif (($e.Ptr & $e.PtrMask) == $e.StoredObjCZeroArgSelector) (
+ #("ZeroArgSelector, ", (clang::IdentifierInfo*)($e.Ptr & ~$e.PtrMask))
+ ) #elif (($e.Ptr & $e.PtrMask) == $e.StoredObjCOneArgSelector) (
+ #("OneArgSelector, ", (clang::IdentifierInfo*)($e.Ptr & ~$e.PtrMask))
+ ) #elif (($e.Ptr & $e.PtrMask) == $e.StoredDeclarationNameExtra) (
+ #switch (((clang::DeclarationNameExtra*)($e.Ptr & ~$e.PtrMask)).ExtraKindOrNumArgs)
+ #case 0 ( ;DeclarationNameExtra::CXXConstructor
+ #("CXXConstructorName, ", (clang::CXXSpecialName*)($e.Ptr & ~$e.PtrMask))
+ )
+ #case 1 ( ;DeclarationNameExtra::CXXDestructor
+ #("CXXDestructorName, ", (clang::CXXSpecialName*)($e.Ptr & ~$e.PtrMask))
+ )
+ #case 2 ( ;DeclarationNameExtra::CXXConversionFunction
+ #("CXXConversionFunctionName, ", (clang::CXXSpecialName*)($e.Ptr & ~$e.PtrMask))
+ )
+ #case 46 ( ;DeclarationNameExtra::CXXLiteralOperator
+ #("CXXLiteralOperatorName, ", (clang::CXXLiteralOperatorIdName*)($e.Ptr & ~$e.PtrMask))
+ )
+ #case 47 ( ;DeclarationNameExtra::CXXUsingDirective
+ #("CXXUsingDirective") ;TODO What to add here?
+ )
+ #default (
+ #if (((clang::DeclarationNameExtra*)($e.Ptr & ~$e.PtrMask)).ExtraKindOrNumArgs < 47) (
+ #("CXXOperatorName, ", (clang::CXXOperatorIdName*)($e.Ptr & ~$e.PtrMask))
+ ) #else (
+ #("ObjCMultiArgSelector, ", (clang::MultiKeywordSelector*)($e.Ptr & ~$e.PtrMask))
+ )
+ )
+ )
+ )
+
+ children (
+ #(
+ ; enum values from clang::DeclarationName::StoredNameKind
+ #if ($e.Ptr == 0) (
+ #array( expr: 0, size: 0 )
+ ) #else (
+ #(
+ #([raw members] : [$e.Ptr,!]),
+ if (($e.Ptr & $e.PtrMask) == $e.StoredIdentifier) (
+ #(Ptr : (clang::IdentifierInfo*)($e.Ptr & ~$e.PtrMask))
+ ) #elif (($e.Ptr & $e.PtrMask) == $e.StoredObjCZeroArgSelector) (
+ #(Ptr : (clang::IdentifierInfo*)($e.Ptr & ~$e.PtrMask))
+ ) #elif (($e.Ptr & $e.PtrMask) == $e.StoredObjCOneArgSelector) (
+ #(Ptr : (clang::IdentifierInfo*)($e.Ptr & ~$e.PtrMask))
+ ) #elif (($e.Ptr & $e.PtrMask) == $e.StoredDeclarationNameExtra) (
+ #switch (((clang::DeclarationNameExtra*)($e.Ptr & ~$e.PtrMask)).ExtraKindOrNumArgs)
+ #case 0 ( ;DeclarationNameExtra::CXXConstructor
+ #(Ptr : (clang::CXXSpecialName*)($e.Ptr & ~$e.PtrMask))
+ )
+ #case 1 ( ;DeclarationNameExtra::CXXDestructor
+ #(Ptr : (clang::CXXSpecialName*)($e.Ptr & ~$e.PtrMask))
+ )
+ #case 2 ( ;DeclarationNameExtra::CXXConversionFunction
+ #(Ptr : (clang::CXXSpecialName*)($e.Ptr & ~$e.PtrMask))
+ )
+ #case 46 ( ;DeclarationNameExtra::CXXLiteralOperator
+ #(Ptr : (clang::CXXLiteralOperatorIdName*)($e.Ptr & ~$e.PtrMask))
+ )
+ #case 47 ( ;DeclarationNameExtra::CXXUsingDirective
+ #(Ptr : $e.Ptr) ;TODO What to add here?
+ )
+ #default (
+ #if (((clang::DeclarationNameExtra*)($e.Ptr & ~$e.PtrMask)).ExtraKindOrNumArgs < 47) (
+ #(Ptr : (CXXOperatorIdName*)($e.Ptr & ~$e.PtrMask))
+ ) #else (
+ #(Ptr : (clang::MultiKeywordSelector*)($e.Ptr & ~$e.PtrMask))
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+}
+
+clang::DeclSpec{
+ preview (
+ #(
+ "[",
+ (clang::DeclSpec::SCS)$e.StorageClassSpec,
+ ", ",
+ (clang::TypeSpecifierType)$e.TypeSpecType,
+ "]"
+ )
+ )
+}
+
+llvm::Triple{
+ preview ( $e.Data )
+}