<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><br class=""><div><blockquote type="cite" class=""><div class="">On Dec 20, 2016, at 9:55 AM, David Blaikie via llvm-dev <<a href="mailto:llvm-dev@lists.llvm.org" class="">llvm-dev@lists.llvm.org</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div dir="ltr" class="">Dandy :)<br class=""><br class="">I looked into ways to do this for the GDB visualizers - but was unable to come up with a totally automated solution, unfortunately.</div></div></blockquote>I've wanted the same.  Best I could think of was to embed them (or a reference to them) in the binary for the debugger to look at.  No idea if it would be accepted though.  Just a thought.</div><div><br class=""></div><div>Also thanks for adding the docs.  Would you (or would you mind if I) add a similar one for the lldb pretty printers?</div><div><br class=""></div><div>Cheers,</div><div>Pete<br class=""><blockquote type="cite" class=""><div class=""><br class=""><div class="gmail_quote"><div dir="ltr" class="">On Tue, Dec 20, 2016 at 9:51 AM Yaron Keren <<a href="mailto:yaron.keren@gmail.com" class="">yaron.keren@gmail.com</a>> wrote:<br class=""></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="rtl" class="gmail_msg"><div dir="ltr" class="gmail_msg">The VC visualizers are automatcially installed.</div><div dir="ltr" class="gmail_msg"><br class="gmail_msg"></div></div><div class="gmail_extra gmail_msg"><br class="gmail_msg"><div class="gmail_quote gmail_msg"><div dir="ltr" class="gmail_msg">2016-12-20 19:45 GMT+02:00 David Blaikie via llvm-dev <span dir="ltr" class="gmail_msg"><<a href="mailto:llvm-dev@lists.llvm.org" class="gmail_msg" target="_blank">llvm-dev@lists.llvm.org</a>></span>:</div><blockquote class="gmail_quote gmail_msg" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr" class="gmail_msg">Added something in r290186.<br class="gmail_msg"><br class="gmail_msg">Say, Reid - do you know anything about the MSVC formatters that are also provided in LLVM? Perhaps you could add a brief bit of documentation about them, if they need an explicit wiring up (if they just come for free/automatically - might not be worth documenting, people will find it when they need it) or point this thread to someone who knows about them to provide such documentation.<br class="gmail_msg"><br class="gmail_msg">- Dave<div class="gmail_msg"><div class="gmail_msg m_-4835767555128121896h5"><br class="gmail_msg"><br class="gmail_msg"><div class="gmail_quote gmail_msg"><div dir="ltr" class="gmail_msg">On Tue, Dec 20, 2016 at 2:43 AM Piotr Padlewski <<a href="mailto:piotr.padlewski@gmail.com" class="gmail_msg" target="_blank">piotr.padlewski@gmail.com</a>> wrote:<br class="gmail_msg"></div><blockquote class="gmail_quote gmail_msg" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr" class="m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg">I guess adding section "Debugging" at the bottom of programmers manual would sounds like a good plan to me.</div><div dir="ltr" class="m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg"><div class="m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg"><br class="m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg"></div><div class="m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg">Piotr</div></div><div class="gmail_extra m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg"><br class="m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg"><div class="gmail_quote m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg">2016-12-20 6:03 GMT+01:00 David Blaikie <span dir="ltr" class="m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg"><<a href="mailto:dblaikie@gmail.com" class="m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg" target="_blank">dblaikie@gmail.com</a>></span>:<br class="m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg"><blockquote class="gmail_quote m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr" class="m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg">Good point - any ideas on where in the programmer's manual would suit best? Looking around I sort of feel like it belongs in the "Picking the right data structure" section - but I fear someone merely examining existing data structures might not think to look there for help in their task (if they have no need to 'pick' a data structure for a new use, etc).<br class="m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg"></div><div class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181HOEnZb m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg"><div class="m_-4835767555128121896m_-6487262218281366511gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181h5 gmail_msg"><br class="m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg"><div class="gmail_quote m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg"><div dir="ltr" class="m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg">On Mon, Dec 19, 2016 at 2:47 AM Piotr Padlewski <<a href="mailto:piotr.padlewski@gmail.com" class="m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg" target="_blank">piotr.padlewski@gmail.com</a>> wrote:<br class="m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg"></div><blockquote class="gmail_quote m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr" class="m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg">Excellent. I think it would make sense to add small section somewhere in documentation (e.g. <span class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621gmail-doc m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg" style="color:rgb(202,121,0);text-decoration:none;font-family:"lucida grande","lucida sans unicode",geneva,verdana,sans-serif;font-size:14px"><a class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621gmail-reference gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621gmail-internal" href="http://llvm.org/docs/ProgrammersManual.html" style="color:rgb(202,121,0);text-decoration:none;font-family:"lucida grande","lucida sans unicode",geneva,verdana,sans-serif;font-size:14px" target="_blank">LLVM Programmer’s Manual</a></span>) about it, so it won't be lost somewhere in the mailing list.<div class="m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg"><br class="m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg"></div><div class="m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg">Piotr</div></div><div class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg gmail_extra m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg"><br class="m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg"><div class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg gmail_quote m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg"></div></div><div class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg gmail_extra m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg"><div class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg gmail_quote m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg">2016-12-17 1:04 GMT+01:00 David Blaikie via llvm-dev <span dir="ltr" class="m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg"><<a href="mailto:llvm-dev@lists.llvm.org" class="m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg" target="_blank">llvm-dev@lists.llvm.org</a>></span>:<br class="m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg"></div></div><div class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg gmail_extra m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg"><div class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg gmail_quote m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg"><blockquote class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg gmail_quote m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr" class="m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg">Added some basic DenseMap support in r290011</div><div class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621HOEnZb gmail_msg"><div class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621h5 gmail_msg"><br class="m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg"><div class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg gmail_quote m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg"><div dir="ltr" class="m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg">On Fri, Dec 16, 2016 at 2:05 PM David Blaikie <<a href="mailto:dblaikie@gmail.com" class="m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg" target="_blank">dblaikie@gmail.com</a>> wrote:<br class="m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg"></div><blockquote class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg gmail_quote m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr" class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg">I've added a few LLVM GDB pretty printers a while back (& just added llvm::Optional earlier today) & thought people might be interested in how to use them, etc.<br class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg"><br class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg">I use them by adding the following to my .gdbinit:<br class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg"><font face="monospace" class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg"><br class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg">  source /path/to/llvm/src/utils/gdb-scripts/prettyprinters.py</font><br class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg"><br class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg">Also, I can suggest adding:<br class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg"><br class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg"><font face="monospace" class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg">  set print pretty on</font><br class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg"><br class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg">there too, it helps a lot when printing complex nested data structures.<br class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg"><br class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg">Once you have that, you can get pretty output like this:<br class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg"><br class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg"><div class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg"><font face="monospace" class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg">(gdb) p Abbrev->AbbrDeclSets</font></div><div class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg"><font face="monospace" class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg">$1 = std::map with 1 elements = {</font></div><div class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg"><font face="monospace" class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg">  [0] = {</font></div><div class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg"><font face="monospace" class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg">    Offset = 0,</font></div><div class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg"><font face="monospace" class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg">    FirstAbbrCode = 1,</font></div><div class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg"><font face="monospace" class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg">    Decls = std::vector of length 1, capacity 1 = {{</font></div><div class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg"><font face="monospace" class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg">        Code = 1,</font></div><div class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg"><font face="monospace" class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg">        Tag = llvm::dwarf::Tag::DW_TAG_compile_unit,</font></div><div class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg"><font face="monospace" class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg">        CodeByteSize = 1 '\001',</font></div><div class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg"><font face="monospace" class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg">        HasChildren = false,</font></div><div class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg"><font face="monospace" class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg">        AttributeSpecs = llvm::SmallVector of length 8, capacity 8 = {{</font></div><div class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg"><font face="monospace" class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg">            Attr = llvm::dwarf::Attribute::DW_AT_low_pc,</font></div><div class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg"><font face="monospace" class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg">            Form = llvm::dwarf::Form::DW_FORM_addr,</font></div><div class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg"><font face="monospace" class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg">            ByteSize = llvm::Optional is not initialized</font></div><div class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg"><font face="monospace" class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg">          }, {</font></div><div class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg"><font face="monospace" class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg">            Attr = llvm::dwarf::Attribute::DW_AT_high_pc,</font></div><div class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg"><font face="monospace" class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg">            Form = llvm::dwarf::Form::DW_FORM_data8,</font></div><div class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg"><font face="monospace" class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg">            ByteSize = llvm::Optional is initialized = {</font></div><div class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg"><font face="monospace" class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg">              value = 8 '\b'</font></div><div class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg"><font face="monospace" class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg">            }</font><br class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg"><br class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg">Here you can see the pretty printers for SmallVector and Optional, but there's also support for StringRef, SmallString, and ArrayRef.<br class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg"><br class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg">I've tried doing a DenseMap pretty printer, but haven't quite figured it out yet (having trouble calling member functions to do some of teh more complicated parts of DenseMap iteration - may end up printing it with the tombstone/empty values present, but not sure how easy that'll be to read, etc). Happy to take requests or talk people through adding more pretty printers anyone wants to add :)<br class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg"><br class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg">Enjoy!<br class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975m_-831224463331190621m_-6775797877069835748gmail_msg">- Dave</div></div></blockquote></div>
</div></div><br class="m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg"></blockquote></div></div><div class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg gmail_extra m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg"><div class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg gmail_quote m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg"><blockquote class="m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg gmail_quote m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">_______________________________________________<br class="m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg">
LLVM Developers mailing list<br class="m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg">
<a href="mailto:llvm-dev@lists.llvm.org" class="m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg" target="_blank">llvm-dev@lists.llvm.org</a><br class="m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg">
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev" rel="noreferrer" class="m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev</a><br class="m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg">
<br class="m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg"></blockquote></div><br class="m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg m_-4835767555128121896m_-6487262218281366511m_8655034452614254181m_-3495430350676290975gmail_msg"></div>
</blockquote></div>
</div></div></blockquote></div><br class="m_-4835767555128121896m_-6487262218281366511gmail_msg gmail_msg"></div>
</blockquote></div></div></div></div>
<br class="gmail_msg">_______________________________________________<br class="gmail_msg">
LLVM Developers mailing list<br class="gmail_msg">
<a href="mailto:llvm-dev@lists.llvm.org" class="gmail_msg" target="_blank">llvm-dev@lists.llvm.org</a><br class="gmail_msg">
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev" rel="noreferrer" class="gmail_msg" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev</a><br class="gmail_msg">
<br class="gmail_msg"></blockquote></div><br class="gmail_msg"></div>
</blockquote></div>
_______________________________________________<br class="">LLVM Developers mailing list<br class=""><a href="mailto:llvm-dev@lists.llvm.org" class="">llvm-dev@lists.llvm.org</a><br class="">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev<br class=""></div></blockquote></div><br class=""></body></html>