[lldb-dev] Patch for review: elf-core dump plugin

Samuel Jacob samueldotj at gmail.com
Thu Jul 11 17:24:10 PDT 2013


Please review the attached patch.

Ashok, thanks for the pre-review comments, please provide if you have more
comments.
I am planning to add test cases after this get patch get committed.

Compiles and works fine on Ubuntu 13.04.
Here is the sample output:

$lldb a.out -c core
Core file '/usr/build/llvm/core' (x86_64) was loaded.
Process 0 stopped
* thread #1: tid = 0x0000, 0x0000000000400570
a.out`recursive_function(i=10) + 44 at test.c:60, name = 'a.out, stop
reason = signal SIGSEGV
    frame #0: 0x0000000000400570 a.out`recursive_function(i=10) + 44 at
test.c:60
   57           recursive_function(i+1);
   58       } else {
   59           char *crash=0;
-> 60           *crash = 0;
   61       }
   62   }
   63

(lldb) bt
* thread #1: tid = 0x0000, 0x0000000000400570
a.out`recursive_function(i=10) + 44 at test.c:60, name = 'a.out, stop
reason = signal SIGSEGV
    frame #0: 0x0000000000400570 a.out`recursive_function(i=10) + 44 at
test.c:60
    frame #1: 0x0000000000400562 a.out`recursive_function(i=9) + 30 at
test.c:57
    frame #2: 0x0000000000400562 a.out`recursive_function(i=8) + 30 at
test.c:57
    frame #3: 0x0000000000400562 a.out`recursive_function(i=7) + 30 at
test.c:57
    frame #4: 0x0000000000400562 a.out`recursive_function(i=6) + 30 at
test.c:57
    frame #5: 0x0000000000400562 a.out`recursive_function(i=5) + 30 at
test.c:57
    frame #6: 0x0000000000400562 a.out`recursive_function(i=4) + 30 at
test.c:57
    frame #7: 0x0000000000400562 a.out`recursive_function(i=3) + 30 at
test.c:57
    frame #8: 0x0000000000400562 a.out`recursive_function(i=2) + 30 at
test.c:57
    frame #9: 0x0000000000400562 a.out`recursive_function(i=1) + 30 at
test.c:57
    frame #10: 0x0000000000400562 a.out`recursive_function(i=0) + 30 at
test.c:57
    frame #11: 0x00000000004005a7 a.out`static_function + 50 at test.c:68
    frame #12: 0x00000000004005b5 a.out`call_me6 + 14 at test.c:77
    frame #13: 0x00000000004005c3 a.out`call_me5 + 14 at test.c:80
    frame #14: 0x00000000004005d3 a.out`call_me4 + 14 at test.c:81
    frame #15: 0x00000000004005e3 a.out`call_me3 + 14 at test.c:82
    frame #16: 0x00000000004005f3 a.out`call_me2 + 14 at test.c:83
    frame #17: 0x0000000000400603 a.out`call_me1 + 14 at test.c:84
    frame #18: 0x0000000000400613 a.out`call_me + 14 at test.c:89
    frame #19: 0x0000000000400670 a.out`test_func(para1=0x00000000020a1010)
+ 91 at test.c:108
    frame #20: 0x000000000040070b a.out`main(argc=1,
argv=0x00007fffba029498) + 145 at test.c:128

Thanks
Samuel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/lldb-dev/attachments/20130711/bf04f137/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: lldb_elfcore.diff
Type: application/octet-stream
Size: 49236 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-dev/attachments/20130711/bf04f137/attachment.obj>


More information about the lldb-dev mailing list