llvm-project/lldb/source
Greg Clayton 7bcb93d5a5 <rdar://problem/13643315>
Fixed performance issues that arose after changing SBTarget, SBProcess, SBThread and SBFrame over to using a std::shared_ptr to a ExecutionContextRef. The ExecutionContextRef doesn't store a std::weak_ptr to a stack frame because stack frames often get replaced with new version, so it held onto a StackID object that would allow us to ask the thread each time for the frame for the StackID. The linear function was too slow for large recursive stacks. We also fixed an issue where anytime the std::shared_ptr<ExecutionContextRef> in any SBTarget, SBProcess, SBThread objects was turned into an ExecutionContext object, it would try to resolve all items in the ExecutionContext which are shared pointers. Even if the StackID in the ExecutionContextRef was invalid, it was looking through all frames in every thread. This causes a lot of unnecessary frame accesses.

llvm-svn: 182627
2013-05-24 00:58:29 +00:00
..
API Add ${ansi.XX} parsing to lldb prompt, use-color setting, and -no-use-colors command line options. 2013-05-23 20:47:45 +00:00
Breakpoint Hardened LLDB against NULL conditions being 2013-05-10 21:58:45 +00:00
Commands <rdar://problem/13925432> 2013-05-21 17:39:04 +00:00
Core ObjectFileELF::GetModuleSpecifications on Linux should work now. 2013-05-23 20:57:03 +00:00
DataFormatters Add ${ansi.XX} parsing to lldb prompt, use-color setting, and -no-use-colors command line options. 2013-05-23 20:47:45 +00:00
Expression Fixed a bug where persistent variables did not 2013-05-22 22:49:06 +00:00
Host ObjectFileELF::GetModuleSpecifications on Linux should work now. 2013-05-23 20:57:03 +00:00
Interpreter Fixed a file leak introduced with my last checkin. Also be sure to include <stdio.h> just in case. 2013-05-22 23:29:16 +00:00
Plugins Adds PT_TLS and PT_GNU_EH_FRAME names to DumpELFProgramHeaders 2013-05-23 23:01:14 +00:00
Symbol Patch from Yacine Belkadi that fixes a typo in an error message. 2013-05-20 16:52:10 +00:00
Target <rdar://problem/13643315> 2013-05-24 00:58:29 +00:00
Utility Added a test case that verifies that LLDB can debug across a process exec'ing itself into a new program. This currently is only enabled for Darwin since we exec from 64 bit to 32 bit and vice versa for 'x86_64' targets. 2013-05-21 21:55:59 +00:00
CMakeLists.txt Fix CMake install target 2013-05-17 20:55:19 +00:00
Makefile Remove LLDB dependency on xcodeworkspace (on Linux) for version number 2013-02-28 16:51:15 +00:00
lldb-log.cpp Don't compare 4 characters on a 2 character string. 2013-05-22 23:36:10 +00:00
lldb.cpp Remove the initialization/termination of the now-removed OperatingSystemDarwinKernel. 2013-05-03 03:55:48 +00:00