<div dir="ltr">Hi Carlos,<div><br></div><div>Thank your for looking into the LLDB failure. I looked into it briefly and the issue is that we have have 2 function f and g where g is inlined into f as the first call and this causes the first non-prologue line entry of f to be inside the address range of g what means that when we step info f from outside we will end up inside g instead. Previously the first line entry for f matched with the start address of the inlined copy of g where LLDB was able to handle the stepping properly.</div><div><br></div><div>For the concrete example you should compile <a href="https://github.com/llvm-mirror/lldb/blob/26fea9dbbeb3020791cdbc46fbf3cc9d7685d7fd/packages/Python/lldbsuite/test/functionalities/inline-stepping/calling.cpp">https://github.com/llvm-mirror/lldb/blob/26fea9dbbeb3020791cdbc46fbf3cc9d7685d7fd/packages/Python/lldbsuite/test/functionalities/inline-stepping/calling.cpp</a> with "/mnt/ssd/ll/git/build/host-release/bin/clang-5.0 -std=c++11 -g -O0 -fno-builtin -m32 --driver-mode=g++ calling.cpp" and then observe that caller_trivial_2 have a DW_AT_low_pc = 0x8048790 and the inlined inline_trivial_1 inside it have a DW_AT_low_pc = 0x8048793 but the first line entry after "Set prologue_end to true" is at 0x8048796 while previously it was at 0x8048793.</div><div><br></div><div>Tamas</div><br><div class="gmail_quote"><div dir="ltr">On Thu, Sep 14, 2017 at 9:59 AM Carlos Alberto Enciso via lldb-dev <<a href="mailto:lldb-dev@lists.llvm.org" target="_blank">lldb-dev@lists.llvm.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div><div><div>Hi,<br><br></div>I have been working on a compiler issue, where instructions associated to the function prolog are assigned line information, causing the debugger to show incorrectly the beginning of the function body.<br></div><div><br></div><div>For a full description, please see:<br></div><br><a href="https://reviews.llvm.org/D37625" target="_blank">https://reviews.llvm.org/D37625</a><br><a href="https://reviews.llvm.org/rL313047" target="_blank">https://reviews.llvm.org/rL313047</a><br><br></div>The submitted patch caused some LLDB tests to fail. I have attached the log failure.</div><div><br></div><div>I have no knowledge about the test framework used by LLDB.</div><div><br></div><div>What is the best way to proceed in this case?</div><div><br></div><div>Thanks very much for your feedback.</div><div><br></div><div>Carlos Enciso<br></div><div><br><br><div><br></div></div></div>
_______________________________________________<br>
lldb-dev mailing list<br>
<a href="mailto:lldb-dev@lists.llvm.org" target="_blank">lldb-dev@lists.llvm.org</a><br>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev</a><br>
</blockquote></div></div>