summaryrefslogtreecommitdiffstats
path: root/lldb/source/Plugins/Process/Utility/UnwindLLDB.h
diff options
context:
space:
mode:
authorGreg Clayton <gclayton@apple.com>2011-02-15 00:19:15 +0000
committerGreg Clayton <gclayton@apple.com>2011-02-15 00:19:15 +0000
commite576ab2996b5fa4facf2bf7e73cc4679cb17c133 (patch)
treebdcafd5e6a9f09adf5a3e9d3b7e92f9d693b939c /lldb/source/Plugins/Process/Utility/UnwindLLDB.h
parent91c08ad14a81cc40769442c19a23addfba28371e (diff)
downloadbcm5719-llvm-e576ab2996b5fa4facf2bf7e73cc4679cb17c133.tar.gz
bcm5719-llvm-e576ab2996b5fa4facf2bf7e73cc4679cb17c133.zip
All UnwindPlan objects are now passed around as shared pointers.
ArchDefaultUnwindPlan plug-in interfaces are now cached per architecture instead of being leaked for every frame. Split the ArchDefaultUnwindPlan_x86 into ArchDefaultUnwindPlan_x86_64 and ArchDefaultUnwindPlan_i386 interfaces. There were sporadic crashes that were due to something leaking or being destroyed when doing stack crawls. This patch should clear up these issues. llvm-svn: 125541
Diffstat (limited to 'lldb/source/Plugins/Process/Utility/UnwindLLDB.h')
-rw-r--r--lldb/source/Plugins/Process/Utility/UnwindLLDB.h12
1 files changed, 6 insertions, 6 deletions
diff --git a/lldb/source/Plugins/Process/Utility/UnwindLLDB.h b/lldb/source/Plugins/Process/Utility/UnwindLLDB.h
index 7d1f070305a..1c01a3dbc74 100644
--- a/lldb/source/Plugins/Process/Utility/UnwindLLDB.h
+++ b/lldb/source/Plugins/Process/Utility/UnwindLLDB.h
@@ -10,15 +10,15 @@
#ifndef lldb_UnwindLLDB_h_
#define lldb_UnwindLLDB_h_
-#include "lldb/lldb-private.h"
-#include "lldb/lldb-types.h"
-#include "lldb/Target/Unwind.h"
+#include <vector>
+
+#include "lldb/lldb-include.h"
#include "lldb/Symbol/FuncUnwinders.h"
#include "lldb/Symbol/UnwindPlan.h"
-#include "RegisterContextLLDB.h"
#include "lldb/Target/RegisterContext.h"
-#include <vector>
+#include "lldb/Target/Unwind.h"
+#include "RegisterContextLLDB.h"
namespace lldb_private {
@@ -53,7 +53,7 @@ private:
lldb::addr_t start_pc; // The start address of the function/symbol for this frame - current pc if unknown
lldb::addr_t cfa; // The canonical frame address for this stack frame
lldb_private::SymbolContext sctx; // A symbol context we'll contribute to & provide to the StackFrame creation
- lldb::RegisterContextSP reg_ctx; // These are all RegisterContextLLDB's
+ RegisterContextLLDB::SharedPtr reg_ctx; // These are all RegisterContextLLDB's
Cursor () : start_pc (LLDB_INVALID_ADDRESS), cfa (LLDB_INVALID_ADDRESS), sctx(), reg_ctx() { }
private:
OpenPOWER on IntegriCloud