Author: dgregor
Date: Wed Jul 27 00:22:46 2011
New Revision: 136207

URL: http://llvm.org/viewvc/llvm-project?rev=136207&view=rev
Log:
Easier debugging with Visual Studio Visualizers, from Nikola Smiljanic!

Added:
    cfe/trunk/utils/clangVisualizers.txt   (with props)
Modified:
    cfe/trunk/www/hacking.html

Added: cfe/trunk/utils/clangVisualizers.txt
URL: 
http://llvm.org/viewvc/llvm-project/cfe/trunk/utils/clangVisualizers.txt?rev=136207&view=auto
==============================================================================
--- cfe/trunk/utils/clangVisualizers.txt (added)
+++ cfe/trunk/utils/clangVisualizers.txt Wed Jul 27 00:22:46 2011
@@ -0,0 +1,44 @@
+
+[Visualizer]
+
+llvm::SmallVector<*,*>{
+       preview (
+               #(
+                       "[",
+                       ($T1*)$e.EndX - ($T1*)$e.BeginX,
+                       "](",
+                       #array(
+                               expr: (($T1*)$e.BeginX)[$i],
+                               size: ($T1*)$e.EndX - ($T1*)$e.BeginX
+                       ),
+                       ")"
+               )
+       )
+
+       children (
+               #(
+                       #([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::StringRef{
+       preview ([$e.Data,s])
+       stringview ([$e.Data,sb])
+
+       children (
+               #(
+                       #([size] : $e.Length),
+                       #array(expr: $e.Data[$i], size: $e.Length)
+               )
+       )
+}
+
+clang::Token{
+       preview((clang::tok::TokenKind)(int)$e.Kind)
+}
\ No newline at end of file

Propchange: cfe/trunk/utils/clangVisualizers.txt
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: cfe/trunk/utils/clangVisualizers.txt
------------------------------------------------------------------------------
    svn:keywords = Id

Propchange: cfe/trunk/utils/clangVisualizers.txt
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Modified: cfe/trunk/www/hacking.html
URL: 
http://llvm.org/viewvc/llvm-project/cfe/trunk/www/hacking.html?rev=136207&r1=136206&r2=136207&view=diff
==============================================================================
--- cfe/trunk/www/hacking.html (original)
+++ cfe/trunk/www/hacking.html Wed Jul 27 00:22:46 2011
@@ -86,6 +86,28 @@
     </ul>
 
   <!--=====================================================================-->
+  <h3 id="debuggingVisualStudio">Debugging using Visual Studio</h3>
+  <!--=====================================================================-->
+
+  <p>The file <tt>utils/clangVisualizers.txt</tt> provides debugger 
visualizers that make debugging
+  of more complex data types much easier.</p>
+  <p>There are two ways to install them:</p>
+  
+  <ul>
+      <li>Put the path to <tt>clangVisualizers.txt</tt> in the environment 
variable called
+      <tt>_vcee_autoexp</tt>. This method should work for Visual Studio 2008 
and above.
+      </li>
+      <li>Edit your local <tt>autoexp.dat</tt> (make sure you make a backup 
first!), 
+      located in <tt>Visual Studio Directory\Common7\Packages\Debugger</tt> 
and append 
+      the contents of <tt>clangVisuailzers.txt</tt> to it. This method should 
work for 
+      Visual Studio 2005 and above.
+       </li>
+  </ul>
+
+  <p><i>[Note: To disable the visualizer for any specific variable, type 
+  <tt>variable_name,!</tt> inside the watch window.]</i></p>
+
+  <!--=====================================================================-->
   <h2 id="testing">Testing</h2>
   <!--=====================================================================-->
 


_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to