<div dir="ltr"><div class="gmail_extra"><br><div class="gmail_quote">2017-06-05 7:54 GMT-07:00 Charles Saternos <span dir="ltr"><<a href="mailto:charles.saternos@gmail.com" target="_blank">charles.saternos@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hey Teresa,<div><br></div><div>Yep, I can do that - I'll be clear in the output of the command that it's just dumping for now and not meant for piping back into llvm-as. Do you want this code in llvm-dis or llvm-lto2?</div></div></blockquote><div><br></div><div>Ideally I'd vote for both, I'd say it should be the default output if the bitcode contains a summary.</div><div><br></div><div>-- </div><div>Mehdi</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><br></div><div>Thanks,</div><div>Charles</div></div><div class="HOEnZb"><div class="h5"><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Jun 5, 2017 at 10:13 AM, Teresa Johnson <span dir="ltr"><<a href="mailto:tejohnson@google.com" target="_blank">tejohnson@google.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote"><span>On Sat, Jun 3, 2017 at 8:58 AM, Mehdi AMINI <span dir="ltr"><<a href="mailto:joker.eph@gmail.com" target="_blank">joker.eph@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><br><div class="gmail_quote"><span><div>On Sat, Jun 3, 2017 at 8:33 AM Teresa Johnson <<a href="mailto:tejohnson@google.com" target="_blank">tejohnson@google.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div><div class="gmail_extra"><div class="gmail_quote">On Fri, Jun 2, 2017 at 8:41 PM, Mehdi AMINI via llvm-dev <span><<a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div>Oh I just see that there were already a bunch of answers. I missed the thread, sorry.<div><br></div><div>So basically my intuitive approach on this is close to what I perceive Peter's position is: </div><div><br></div><div>- don't create a new format if there is already one.</div><div>- if you really have a good reason to create a new format, it should replace the existing one (i.e. don't maintain two).</div><div>- ideally we should be able to pipe the output if llvm-dis to llvm-as in a lossless manner (if our layering requires to use another tool than llvm-as, so be it).</div></div></blockquote><div><br></div></div></div></div><div><div class="gmail_extra"><div class="gmail_quote"><div>I don't disagree with these points. I was the one who suggested that Charles implement this as a learning experience for his ThinLTO GSoC project, because I have long wanted a simple human-readable dumper for the summaries. I knew about the YAML support Peter added for the type test summaries, but thought that was largely geared towards testing while those summaries weren't automatically generated from the IR. It sounds reasonable to have a single format, and so doing the dumping with YAML seems fine to me. However, I would prefer to have a way to dump that into the llvm disassembly with llvm-dis. </div></div></div></div></blockquote><div><br></div></span><div>That's coherent with the part where I wrote that `llvm-dis | llvm-as` should not lose information :)</div></div></div></blockquote><div><br></div></span><div>It's coherent with the first part, not necessarily with piping into llvm-as and not losing information (which would be a good follow-on, but let's get the dumping part at least for now).</div><span><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_quote"><div>So can't we achieve this goal by appending the YAML format to the output of llvm-dis? (and teach llvm-as to recognize it?)</div><span><div><br></div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div><div class="gmail_extra"><div class="gmail_quote"><div>I'd personally put a higher priority on getting the dumping functionality out first and faster (e.g. emitting as comments in the disassembly to indicate that it is dump only for now), and deal with regenerating the summary from it during llvm-as later.</div></div></div></div></blockquote><div><br></div></span><div>If it is non-trivial to adapt llvm-as, then sure: but you could also have the YAML format printed in a comment which should allow this right?</div></div></div></blockquote><div><br></div></span><div>Yes.</div><div><br></div><div>Charles - can you take a look at extending the existing YAML summary dumper to do this? See pcc's patch on one of the emails here for how to output that, but let's see if we can get that optionally into the llvm-dis output as comments for now.</div><div><br></div><div>Looks like the existing YAML output dumps value ids, but as we discussed in our other thread, it would be good to map those to the value names and emit the value names instead.</div><span class="m_979311562257259208HOEnZb"><font color="#888888"><div><br></div><div>Teresa</div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_quote"><span class="m_979311562257259208m_-5865428604146507291HOEnZb"><font color="#888888"><div><br></div><div>-- </div><div>Mehdi</div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div><div class="gmail_extra"><div class="m_979311562257259208m_-5865428604146507291m_3808573325309481314gmail-m_7186160573003821448m_3609434117667162996gmail_signature"><span style="font-family:Times;font-size:medium"></span></div>
</div></div></blockquote></font></span></div></div>
</blockquote></font></span></div><span><br><br clear="all"><div><br></div>-- <br><div class="m_979311562257259208m_-5865428604146507291gmail_signature" data-smartmail="gmail_signature"><span style="font-family:Times;font-size:medium"><table cellspacing="0" cellpadding="0"><tbody><tr style="color:rgb(85,85,85);font-family:sans-serif;font-size:small"><td nowrap style="border-top-style:solid;border-top-color:rgb(213,15,37);border-top-width:2px">Teresa Johnson |</td><td nowrap style="border-top-style:solid;border-top-color:rgb(51,105,232);border-top-width:2px"> Software Engineer |</td><td nowrap style="border-top-style:solid;border-top-color:rgb(0,153,57);border-top-width:2px"> <a href="mailto:tejohnson@google.com" target="_blank">tejohnson@google.com</a> |</td><td nowrap style="border-top-style:solid;border-top-color:rgb(238,178,17);border-top-width:2px"> <a href="tel:(408)%20460-2413" value="+14084602413" target="_blank">408-460-2413</a></td></tr></tbody></table></span></div>
</span></div></div>
</blockquote></div><br></div>
</div></div></blockquote></div><br></div></div>