diff options
| author | Greg Clayton <gclayton@apple.com> | 2011-02-15 00:19:15 +0000 |
|---|---|---|
| committer | Greg Clayton <gclayton@apple.com> | 2011-02-15 00:19:15 +0000 |
| commit | e576ab2996b5fa4facf2bf7e73cc4679cb17c133 (patch) | |
| tree | bdcafd5e6a9f09adf5a3e9d3b7e92f9d693b939c /lldb/source/Plugins/Process/Utility/UnwindLLDB.h | |
| parent | 91c08ad14a81cc40769442c19a23addfba28371e (diff) | |
| download | bcm5719-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.h | 12 |
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: |

