[lldb-dev] Patch for review: elf-core dump plugin
Samuel Jacob
samueldotj at gmail.com
Fri Jul 12 15:40:17 PDT 2013
Thanks Ashok for committing.
On Fri, Jul 12, 2013 at 2:35 PM, Thirumurthi, Ashok <
ashok.thirumurthi at intel.com> wrote:
> Thanks Samuel, I know this will be much appreciated!
>
> The only change I had to make was the test on ProcessElfCore.cpp:298,
> which needs to be a null test rather than a comparison with false to build
> using clang trunk. Works as advertised and introduces no regressions, so I
> fired r186207.
>
> I noticed that you skipped the call to ReadFPR that reads AVX registers in
> the constructor of RegisterContext_x86_64. I noticed that register read -a
> includes all expected registers on an SSE machine. Did you run into issues
> with the call during construction? Should we be moving to cupid to query
> this functionality, for instance?
>
Yes - I skipped ReadFPR() because it was accessing AVX registers(valgrind
helped me to find that).
fpregset is never used in RegisterContextCoreLinux_x86_64, so "register
read -a" might not have valid value for floating point registers.
Adding floating point support should be easy. I will do that once I get
some time.
>
> Also, do let us know if you need any help adding tests. Cheers,
>
Today I try to run test-suite and having trouble with it. 'ninja
check-lldb' causing lot of failures, are these failures expected or am I
missing some configuration?
(Ubuntu 13.04, Python 2.7.4, gcc 4.7.3)
$ ninja check-lldb
....
Ran 262 tests.
Failing Tests (76)
FAIL: LLDB (suite) :: TestCallStdStringFunction.py (Linux
jacobs-lnx.eng.vmware.com 3.8.0-25-generic #37-Ubuntu SMP Thu Jun 6
20:47:07 UTC 2013 x86_64 x86_64)
FAIL: LLDB (suite) :: TestFormatters.py (Linux
jacobs-lnx.eng.vmware.com3.8.0-25-generic #37-Ubuntu SMP Thu Jun 6
20:47:07 UTC 2013 x86_64 x86_64)
FAIL: LLDB (suite) :: Test11588.py (Linux
jacobs-lnx.eng.vmware.com3.8.0-25-generic #37-Ubuntu SMP Thu Jun 6
20:47:07 UTC 2013 x86_64 x86_64)
FAIL: LLDB (suite) :: TestBitfields.py (Linux
jacobs-lnx.eng.vmware.com3.8.0-25-generic #37-Ubuntu SMP Thu Jun 6
20:47:07 UTC 2013 x86_64 x86_64)
FAIL: LLDB (suite) :: TestAnonymous.py (Linux
jacobs-lnx.eng.vmware.com3.8.0-25-generic #37-Ubuntu SMP Thu Jun 6
20:47:07 UTC 2013 x86_64 x86_64)
FAIL: LLDB (suite) :: TestVirtual.py (Linux
jacobs-lnx.eng.vmware.com3.8.0-25-generic #37-Ubuntu SMP Thu Jun 6
20:47:07 UTC 2013 x86_64 x86_64)
FAIL: LLDB (suite) :: TestCPPExceptionBreakpoints.py (Linux
jacobs-lnx.eng.vmware.com 3.8.0-25-generic #37-Ubuntu SMP Thu Jun 6
20:47:07 UTC 2013 x86_64 x86_64)
.....
>
> - Ashok
>
>
> -----Original Message-----
> From: lldb-dev-bounces at cs.uiuc.edu [mailto:lldb-dev-bounces at cs.uiuc.edu]
> On Behalf Of Greg Clayton
> Sent: Thursday, July 11, 2013 8:41 PM
> To: Samuel Jacob
> Cc: lldb-dev
> Subject: Re: [lldb-dev] Patch for review: elf-core dump plugin
>
> Very nice, looks great. Check in when you get the chance.
>
> Greg
>
> On Jul 11, 2013, at 5:24 PM, Samuel Jacob <samueldotj at gmail.com> wrote:
>
> > 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
> > <lldb_elfcore.diff>_______________________________________________
> > lldb-dev mailing list
> > lldb-dev at cs.uiuc.edu
> > http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev
>
> _______________________________________________
> lldb-dev mailing list
> lldb-dev at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/lldb-dev/attachments/20130712/6d2a6559/attachment.html>
More information about the lldb-dev
mailing list