[cfe-dev] Visual Studio visualizer improvements for Clang

Michael Spertus via cfe-dev cfe-dev at lists.llvm.org
Wed Mar 16 13:17:06 PDT 2016


Not unlike gdb visualizers, Visual Studio visualizers require some setup: You have to put clang.natvis and llvm.natvis in Documents\Visual Studio 20xx\Visualizers. However, VS2015 added support for visualizers in a project. Once we stop supporting VS2013, we will be able to automagically eliminate the manual setup. Is there a timeline for dropping VS2013 support?

Mike

-----Original Message-----
From: cfe-dev [mailto:cfe-dev-bounces at lists.llvm.org] On Behalf Of Jonathan Roelofs via cfe-dev
Sent: Wednesday, March 16, 2016 12:21 PM
To: C Bergström <cbergstrom at pathscale.com>; David Blaikie <dblaikie at gmail.com>
Cc: cfe-dev at lists.llvm.org
Subject: Re: [cfe-dev] Visual Studio visualizer improvements for Clang



On 3/16/16 11:16 AM, C Bergström via cfe-dev wrote:
> Cool results, but XML - ewwie..
> ---------
> I digress - What's lldb do in this case?

https://github.com/llvm-mirror/llvm/blob/master/utils/lldbDataFormatters.py

>
> On Thu, Mar 17, 2016 at 1:14 AM, David Blaikie <dblaikie at gmail.com 
> <mailto:dblaikie at gmail.com>> wrote:
>
>     FWIW, GDB has a visualizer system in python - I wrote up some
>     visualizers for SmallVector, etc, but I couldn't find a way to plug
>     them in for free into GDB (everything required some reconfiguration
>     of GDB to point to a script directory or the like). I might check
>     them in anyway with a README telling people how to set them up if
>     they want to.
>
>     On Wed, Mar 16, 2016 at 9:59 AM, C Bergström <cfe-dev at lists.llvm.org
>     <mailto:cfe-dev at lists.llvm.org>> wrote:
>
>         Looks cool! I'm not a VS guy - how did you achieve this? Was
>         there some source changes in clang or is this a plugin that
>         leverages clang for VS?
>
>         Thanks
>
>         On Wed, Mar 16, 2016 at 11:04 PM, Michael Spertus via cfe-dev
>         <cfe-dev at lists.llvm.org <mailto:cfe-dev at lists.llvm.org>> wrote:
>
>             Chandler suggested that I socialize the improvements that I
>             have been making to Clang data structure visualizations in
>             Visual Studio. For example, these changes replace the
>             traditional incomprehensible Locals/Watch display of a
>             TemplateArgumentLoc____
>
>             __ __
>
>             ____
>
>             __ __
>
>             Now it clearly displays that it is a Type Template Parameter
>             where T has been replaced by struct A.____
>
>             ____
>
>             __ __
>
>             I only have a small portion of the Clang data types done so
>             far, but it is already really helping me keep track of what
>             is going on while debugging Clang (It’s also been an
>             excellent way for me to learn Clang data structures J ). I
>             will be continuing to add further visualizations over the
>             next few weeks and ongoing. ____
>
>             __ __
>
>             I hope these prove helpful to the community,____
>
>             __ __
>
>             Mike____
>
>
>             _______________________________________________
>             cfe-dev mailing list
>             cfe-dev at lists.llvm.org <mailto:cfe-dev at lists.llvm.org>
>             http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev
>
>
>
>         _______________________________________________
>         cfe-dev mailing list
>         cfe-dev at lists.llvm.org <mailto:cfe-dev at lists.llvm.org>
>         http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev
>
>
>
>
>
> _______________________________________________
> cfe-dev mailing list
> cfe-dev at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev
>

--
Jon Roelofs
jonathan at codesourcery.com
CodeSourcery / Mentor Embedded
_______________________________________________
cfe-dev mailing list
cfe-dev at lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev


More information about the cfe-dev mailing list