<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Jun 24, 2015 at 2:28 PM, Oleg Ranevskyy <span dir="ltr"><<a href="mailto:llvm.mail.list@gmail.com" target="_blank">llvm.mail.list@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 bgcolor="#FFFFFF" text="#000000">
    Hi David,<br>
    <br>
    I got a problem related to the change made in r188651 - not
    including file/line info for artificial arguments like "this" and
    "self".<br>
    Would you be able to take a look at it, please?<br></div></blockquote><div><br></div><div>Could you provide a simple test case? (& ideally: does this reproduce on X86, a platform I've easy access to (& if it doesn't, I'd be curious to understand why not...))</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div bgcolor="#FFFFFF" text="#000000">I am compiling the code for ARM linux with fast ISel disabled:
    -mllvm -fast-isel=0. The problem is that it's not possible to step
    into<span></span> the
    constructor, destructor or a method of a class while debugging.
    Clang generates correct .loc in function prologues, but then,  due
    to r188651, inserts a debug info location with zeroed line number
    (.loc 1 0 0) for "this", which misleads the debugger. <br>
    <br>
    Could you explain the reasoning behind this change, please?<br></div></blockquote><div><br>The reason for the change, if I recall correctly (perhaps I mentioned in the commit message, I'm not sure) was to reduce debug info size for the debug_info section - I don't believe the intent was to have any impact on the line table.<br><br>(artificial variables, like "this" don't have a location they are declared on, so there was/is no need to have a DW_AT_decl_file/line in the debug_info describing their declaration location)<br> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div bgcolor="#FFFFFF" text="#000000">
    <br>
    This hasn't been noticed before due to the fast ISel omitting
    location info for arguments, so the correct location from the
    prologue is used. It is probably yet another problem to handle.<br>
    <br>
    Thanks in advance for any help.<br>
    Kind regards,<br>
    Oleg<br>
  </div>

</blockquote></div><br></div></div>