[lldb-dev] Line number resolution problem

Greg Clayton gclayton at apple.com
Wed Oct 8 11:27:13 PDT 2014


Please attach the output of "dwarfdump --debug-line -e <FILE>". I can tell you more when I see that output.

Greg

> On Oct 8, 2014, at 5:10 AM, Mario Zechner <badlogicgames at gmail.com> wrote:
> 
> Hi,
> 
> i'm currently trying to track down the following issue. We create LLVM IR like this
> compilation unit: JdwpThreads.java
>    ; line 8
>    %t16 = load %Object** %$r6, !dbg !{i32 8, i32 0, metadata !33, null}
>     store %Object* %t16, %Object** %r4, !dbg !{i32 8, i32 0, metadata !33, null}
> 
>     ; line 19
>     call void @"llvm.dbg.declare"(metadata !{%Object** %r4}, metadata !38), !dbg !{i32 19, i32 0, metadata !34, null}
>     %t17 = load %Object** %r4, !dbg !{i32 19, i32 0, metadata !34, null}
>     call void @"[j]java.lang.Thread.start()V[Invokevirtual(com/robovm/debug/server/apps/JdwpThreads,java/lang/Thread)]"(%Env* %p0, %Object* %t17), !dbg !{i32 19, i32 0, metadata !34, null}
> 
>     ; line 20
>     %t18 = trunc i32 0 to i8, !dbg !{i32 20, i32 0, metadata !34, null}
>     call void @"[j]com.robovm.debug.server.apps.JdwpThreads.stopped(Z)[set]"(%Env* %p0, i8 %t18), !dbg !{i32 20, i32 0, metadata !34, null}
> 
>     ; line 21
>     %t19 = load %Object** %r4, !dbg !{i32 21, i32 0, metadata !34, null}
>     call void @"[j]java.lang.Thread.join()V[Invokevirtual(com/robovm/debug/server/apps/JdwpThreads,java/lang/Thread)]"(%Env* %p0, %Object* %t19), !dbg !{i32 21, i32 0, metadata !34, null}
> 
> When setting a breakpoint for line 19 or 20 in that compilation unit, LLDB resolves it to line 21
> 
> (lldb) br set -f JdwpThreads.java -l 19
> 
> Breakpoint 1: where = JdwpThreadTest`[J]com.robovm.debug.server.apps.JdwpThreads.main([Ljava/lang/String;)V + 282 at JdwpThreads.java:21, address = 0x0028531f
> 
> (lldb) br set -f JdwpThreads.java -l 20
> 
> Breakpoint 2: where = JdwpThreadTest`[J]com.robovm.debug.server.apps.JdwpThreads.main([Ljava/lang/String;)V + 282 at JdwpThreads.java:21, address = 0x0028531f
> 
> 
> The functions being called are all inlined functions. I suspected that to be the issue but don't know how to resolve it.
> 
> I'm a bit puzzled as to why that is and would appreciate any pointers. I can provide a Mac OS X binary or a dwarfdump if required.
> 
> Thanks,
> Mario
> _______________________________________________
> lldb-dev mailing list
> lldb-dev at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev




More information about the lldb-dev mailing list