From: Mike Spertus Date: Mon, 13 Jun 2016 01:43:14 +0000 (+0000) Subject: Improved Visual Studio 2015 visualization of SmallVectorImpl X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=2a6b57b9f7997582541335a6da312985cdc94185;p=llvm Improved Visual Studio 2015 visualization of SmallVectorImpl When visualizing small vectors in VS2015, show the first few elements in the DisplayString instead of the size. For example, a SmallVector of DeclAccessPair will visualize like {public typename ...Ts, public typename U} The visualization in VS2013 remains the same because we continue to include the old visualizer with a lower-than-default priority of MediumLow, and the same SmallVector would continue to be visualized as {size = 2} git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@272525 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/utils/LLVMVisualizers/llvm.natvis b/utils/LLVMVisualizers/llvm.natvis index 6d37fa01453..6d8475a1c72 100644 --- a/utils/LLVMVisualizers/llvm.natvis +++ b/utils/LLVMVisualizers/llvm.natvis @@ -8,8 +8,8 @@ For Visual Studio 2013 only, put this file into For later versions of Visual Studio, no setup is required. --> - - + + empty {{ size={($T1*)EndX - ($T1*)BeginX} }} @@ -21,6 +21,29 @@ For later versions of Visual Studio, no setup is required. + + + + {(($T1*)BeginX)[0]}{*this,view(elt1)} + + , {(($T1*)BeginX)[1]}{*this,view(elt2)} + + , {(($T1*)BeginX)[2]}{*this,view(elt3)} + + , {(($T1*)BeginX)[2]}{*this,view(elt4)} + + , /* {(($T1*)EndX - ($T1*)BeginX) - 4} more*/ + empty + {{{*this,view(elt0)}}} + + ($T1*)EndX - ($T1*)BeginX + ($T1*)CapacityX - ($T1*)BeginX + + ($T1*)EndX - ($T1*)BeginX + ($T1*)BeginX + + + empty {{ size={Length} }}