History log of /external/lldb/source/Plugins/Process/elf-core/ThreadElfCore.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
da46268acaf149c10f5cd0834cb7ec48aab81b81 23-Jul-2013 Ed Maste <emaste@freebsd.org> elf-core: Remove now-unused compile-time FreeBSD support

This change removes the final instances of compile-time #ifdef magic
from the elf core plugin. Also rename the classes to ELFLinux... as
they're specific to Linux.


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@186977 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/source/Plugins/Process/elf-core/ThreadElfCore.cpp
3c2a6c63f4df24518b8cc57ae6081f90e8d60f41 23-Jul-2013 Ed Maste <emaste@freebsd.org> elf-core: Improve FreeBSD support and move data extraction to parse time

Extracting thread data at parse time simplifies multi-platform support.
This change adds FreeBSD thread names and auxv info.

Thanks to Samuel Jacob for review, testing, and improvements.


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@186975 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/source/Plugins/Process/elf-core/ThreadElfCore.cpp
1423616562fe98269b57fd5569192030ad701541 22-Jul-2013 Ed Maste <emaste@freebsd.org> elf-core: Run-time reg context selection

Instantiate RegisterContextCore... based on getOS() instead of with
compile-time #ifdef-ery.

The assert()s here are unfortunate, but better than crashing with no
explanation. (This would previously happen for an unsupported
architecture, anyhow.)

We should add an equivalent OS and architecture test to
ProcessElfCore::DoLoadCore() and cleanly report the error to the user.



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@186865 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/source/Plugins/Process/elf-core/ThreadElfCore.cpp
2029d588e8475bedbd1d0c9bd10f9571900fb041 17-Jul-2013 Ed Maste <emaste@freebsd.org> elf-core: Support FreeBSD at compile-time

Compile-time #ifdef-ery isn't right, but this makes core debugging work on
FreeBSD and highlights the parts that will need to be changed for runtime
arch support.


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@186534 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/source/Plugins/Process/elf-core/ThreadElfCore.cpp
f6f52692f0f8f79860e573ef18a9ed93ef5e2668 17-Jul-2013 Ashok Thirumurthi <ashok.thirumurthi@intel.com> Re-introduces ELF core file support for Linux x86-64
Usage: 'lldb a.out -c core'.
TODO: FreeBSD support.
TODO: Support for AVX registers.
TODO: Refactor so that RegisterContextCore* don't inherit from classes that use ProcessMonitor
to fix the build on OS/X.



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@186516 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/source/Plugins/Process/elf-core/ThreadElfCore.cpp
750ed92ac45e252f1c8b9c2dde31c497f277b2e8 13-Jul-2013 Greg Clayton <gclayton@apple.com> Revert the ELF core file support until a few things can be worked out:

RegisterContextCoreLinux_x86_64 inherits from RegisterContextLinux_x86_64 which inherits from RegisterContext_x86_64 which uses has:

ProcessMonitor &GetMonitor();

This register context used by the core file can't use this since the process plug-in will be ProcessElfCore and the implementation of GetMonitor() does:

ProcessMonitor &
RegisterContext_x86_64::GetMonitor()
{
ProcessSP base = CalculateProcess();
ProcessPOSIX *process = static_cast<ProcessPOSIX*>(base.get());
return process->GetMonitor();
}

ProcessELFCore doesn't, nor should it inherit from ProcessPOSIX and any call to GetMonitor() will fail for ELF core files.

Suggested cleanups:
- Make a register context class that is a base class that doesn't have any reading smarts, then make one that uses ProcessPOSIX and the has the GetMonitor() call, and one that gets its data straight from the core file.



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@186223 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/source/Plugins/Process/elf-core/ThreadElfCore.cpp
26345cbada66df8e698111cdf8d1689ccefe8331 12-Jul-2013 Ashok Thirumurthi <ashok.thirumurthi@intel.com> Introduces core file support for Linux x86-64 using 'lldb a.out -c core'.
TODO: Support for RegisterContext_x86_64::ReadFPR.

Patch by Samuel Jacob!


git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@186207 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/source/Plugins/Process/elf-core/ThreadElfCore.cpp