<div dir="ltr">I'd actually like to remove that functionality, as it is unused. See <a href="http://reviews.llvm.org/D18628">http://reviews.llvm.org/D18628</a><div><br></div><div>Adrian's change r266446 I think obsoletes that patch or at least makes it a lot simpler.</div><div><br></div><div>Peter</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Apr 15, 2016 at 9:50 AM, Sergei Larin <span dir="ltr"><<a href="mailto:slarin@codeaurora.org" target="_blank">slarin@codeaurora.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div lang="EN-US" link="#0563C1" vlink="#954F72"><div><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal">Peter,<u></u><u></u></p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal"> I am afraid I am missing a big picture with debug info cloning.<u></u><u></u></p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal"> Certainly after your patch (and possibly in some cases earlier):<u></u><u></u></p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal"> Cloning: Reduce complexity of debug info cloning and fix correctness issue.<u></u><u></u></p><p class="MsoNormal"> <u></u><u></u></p><p class="MsoNormal"> Commit r260791 contained an error in that it would introduce a cross-module<u></u><u></u></p><p class="MsoNormal"> reference in the old module. It also introduced O(N^2) complexity in the<u></u><u></u></p><p class="MsoNormal"> module cloner by requiring the entire module to be visited for each function.<u></u><u></u></p><p class="MsoNormal"> Fix both of these problems by avoiding use of the CloneDebugInfoMetadata<u></u><u></u></p><p class="MsoNormal"> function (which is only designed to do intra-module cloning) and cloning<u></u><u></u></p><p class="MsoNormal"> function-attached metadata in the same way that we clone all other metadata.<u></u><u></u></p><p class="MsoNormal"> <u></u><u></u></p><p class="MsoNormal"> Differential Revision: <a href="http://reviews.llvm.org/D18583" target="_blank">http://reviews.llvm.org/D18583</a><u></u><u></u></p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal">During CloneFunctionInto we seem to create a new DISubprogram which still carries the name of the _<i>original</i>_ function… which creates certain confusion with debugging scope.<u></u><u></u></p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal">Was it designed that way, or am I missing something here… <u></u><u></u></p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal">Thanks a lot.<u></u><u></u></p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal">Sergei<u></u><u></u></p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal"><span style="font-size:10.5pt;font-family:Consolas">---<u></u><u></u></span></p><p class="MsoNormal"><span style="font-size:10.5pt">Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by The Linux Foundation</span><span style="font-size:10.5pt;font-family:Consolas"><u></u><u></u></span></p><p class="MsoNormal"><u></u> <u></u></p></div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature"><div dir="ltr">-- <div>Peter</div></div></div>
</div>