[Lldb-commits] [lldb] r122059 - in /lldb/trunk: include/lldb/Target/ lldb.xcodeproj/ source/Plugins/Process/MacOSX-User/source/ source/Plugins/Process/Utility/ source/Plugins/Process/Utility/libunwind/ source/Plugins/Process/gdb-remote/
Greg Clayton
gclayton at apple.com
Fri Dec 17 07:50:21 PST 2010
Author: gclayton
Date: Fri Dec 17 09:50:20 2010
New Revision: 122059
URL: http://llvm.org/viewvc/llvm-project?rev=122059&view=rev
Log:
Removed libunwind sources as we aren't using them anymore.
Removed:
lldb/trunk/source/Plugins/Process/Utility/LibUnwindRegisterContext.cpp
lldb/trunk/source/Plugins/Process/Utility/LibUnwindRegisterContext.h
lldb/trunk/source/Plugins/Process/Utility/MacOSXLibunwindCallbacks.cpp
lldb/trunk/source/Plugins/Process/Utility/MacOSXLibunwindCallbacks.h
lldb/trunk/source/Plugins/Process/Utility/UnwindLibUnwind.cpp
lldb/trunk/source/Plugins/Process/Utility/UnwindLibUnwind.h
lldb/trunk/source/Plugins/Process/Utility/libunwind/
Modified:
lldb/trunk/include/lldb/Target/Thread.h
lldb/trunk/lldb.xcodeproj/project.pbxproj
lldb/trunk/source/Plugins/Process/MacOSX-User/source/ThreadMacOSX.cpp
lldb/trunk/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
lldb/trunk/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h
lldb/trunk/source/Plugins/Process/gdb-remote/ThreadGDBRemote.cpp
lldb/trunk/source/Plugins/Process/gdb-remote/ThreadGDBRemote.h
Modified: lldb/trunk/include/lldb/Target/Thread.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/Target/Thread.h?rev=122059&r1=122058&r2=122059&view=diff
==============================================================================
--- lldb/trunk/include/lldb/Target/Thread.h (original)
+++ lldb/trunk/include/lldb/Target/Thread.h Fri Dec 17 09:50:20 2010
@@ -16,7 +16,6 @@
#include "lldb/Core/UserSettingsController.h"
#include "lldb/Target/ExecutionContextScope.h"
#include "lldb/Target/StackFrameList.h"
-#include "libunwind/include/libunwind.h"
#define LLDB_THREAD_MAX_STOP_EXC_DATA 8
Modified: lldb/trunk/lldb.xcodeproj/project.pbxproj
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/lldb.xcodeproj/project.pbxproj?rev=122059&r1=122058&r2=122059&view=diff
==============================================================================
--- lldb/trunk/lldb.xcodeproj/project.pbxproj (original)
+++ lldb/trunk/lldb.xcodeproj/project.pbxproj Fri Dec 17 09:50:20 2010
@@ -282,17 +282,11 @@
26D5B14B11B07550009A862E /* CommandObjectTarget.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 269416AD119A024800FF2715 /* CommandObjectTarget.cpp */; };
26D5B14C11B07550009A862E /* PathMappingList.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 495BBACB119A0DBE00418BEA /* PathMappingList.cpp */; };
26D5B14D11B07550009A862E /* StringExtractorGDBRemote.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2676A093119C93C8008A98EF /* StringExtractorGDBRemote.cpp */; };
- 26D5B14E11B07550009A862E /* MacOSXLibunwindCallbacks.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9654F79C1197DA1300F72B43 /* MacOSXLibunwindCallbacks.cpp */; };
- 26D5B15011B07550009A862E /* Registers.s in Sources */ = {isa = PBXBuildFile; fileRef = 9654F7B51197DA3F00F72B43 /* Registers.s */; };
- 26D5B15111B07550009A862E /* unw_getcontext.s in Sources */ = {isa = PBXBuildFile; fileRef = 9654F7BA1197DA3F00F72B43 /* unw_getcontext.s */; };
- 26D5B15211B07550009A862E /* LibUnwindRegisterContext.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26B4666F11A2091600CF6220 /* LibUnwindRegisterContext.cpp */; };
26D5B15311B07550009A862E /* ABIMacOSX_i386.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 497650CE11A21BEE008DDB57 /* ABIMacOSX_i386.cpp */; };
26D5B15511B07550009A862E /* Baton.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26A0604811A5D03C00F75969 /* Baton.cpp */; };
26D5B15611B07550009A862E /* CommandObjectArgs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 499F381F11A5B3F300F5CE02 /* CommandObjectArgs.cpp */; };
- 26D5B15911B07550009A862E /* UnwindLibUnwind.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26E3EEBE11A98A1900FBADB6 /* UnwindLibUnwind.cpp */; };
26D5B15A11B07550009A862E /* UnwindMacOSXFrameBackchain.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26E3EEE311A9901300FBADB6 /* UnwindMacOSXFrameBackchain.cpp */; };
26D5B15B11B07550009A862E /* RegisterContextMacOSXFrameBackchain.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26E3EEF711A994E800FBADB6 /* RegisterContextMacOSXFrameBackchain.cpp */; };
- 26D5B18E11B07979009A862E /* libuwind.cxx in Sources */ = {isa = PBXBuildFile; fileRef = 9654F7B31197DA3F00F72B43 /* libuwind.cxx */; };
26DE1E6B11616C2E00A093E2 /* lldb-forward-rtti.h in Headers */ = {isa = PBXBuildFile; fileRef = 26DE1E6911616C2E00A093E2 /* lldb-forward-rtti.h */; settings = {ATTRIBUTES = (Public, ); }; };
26DE1E6C11616C2E00A093E2 /* lldb-forward.h in Headers */ = {isa = PBXBuildFile; fileRef = 26DE1E6A11616C2E00A093E2 /* lldb-forward.h */; settings = {ATTRIBUTES = (Public, ); }; };
26DE204111618AB900A093E2 /* SBSymbolContext.h in Headers */ = {isa = PBXBuildFile; fileRef = 26DE204011618AB900A093E2 /* SBSymbolContext.h */; settings = {ATTRIBUTES = (Public, ); }; };
@@ -599,8 +593,6 @@
26B167A41123BF5500DC7B4F /* ThreadSafeValue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ThreadSafeValue.h; path = include/lldb/Core/ThreadSafeValue.h; sourceTree = "<group>"; };
26B42B1E1187A92B0079C8C8 /* lldb-include.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "lldb-include.h"; path = "include/lldb/lldb-include.h"; sourceTree = "<group>"; };
26B42C4C1187ABA50079C8C8 /* LLDB.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = LLDB.h; path = include/lldb/API/LLDB.h; sourceTree = "<group>"; };
- 26B4666F11A2091600CF6220 /* LibUnwindRegisterContext.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = LibUnwindRegisterContext.cpp; path = Utility/LibUnwindRegisterContext.cpp; sourceTree = "<group>"; };
- 26B4667011A2091600CF6220 /* LibUnwindRegisterContext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = LibUnwindRegisterContext.h; path = Utility/LibUnwindRegisterContext.h; sourceTree = "<group>"; };
26B4E26E112F35F700AB3F64 /* TimeValue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = TimeValue.h; path = include/lldb/Host/TimeValue.h; sourceTree = "<group>"; };
26BC7C2510F1B3BC00F91463 /* lldb-defines.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "lldb-defines.h"; path = "include/lldb/lldb-defines.h"; sourceTree = "<group>"; };
26BC7C2610F1B3BC00F91463 /* lldb-enumerations.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "lldb-enumerations.h"; path = "include/lldb/lldb-enumerations.h"; sourceTree = "<group>"; };
@@ -899,8 +891,6 @@
26DFBC58113B48F300DD817F /* CommandObjectMultiword.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CommandObjectMultiword.cpp; path = source/Commands/CommandObjectMultiword.cpp; sourceTree = "<group>"; };
26DFBC59113B48F300DD817F /* CommandObjectRegexCommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CommandObjectRegexCommand.cpp; path = source/Interpreter/CommandObjectRegexCommand.cpp; sourceTree = "<group>"; };
26E3EEBD11A9870400FBADB6 /* Unwind.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Unwind.h; path = include/lldb/Target/Unwind.h; sourceTree = "<group>"; };
- 26E3EEBE11A98A1900FBADB6 /* UnwindLibUnwind.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = UnwindLibUnwind.cpp; path = Utility/UnwindLibUnwind.cpp; sourceTree = "<group>"; };
- 26E3EEBF11A98A1900FBADB6 /* UnwindLibUnwind.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = UnwindLibUnwind.h; path = Utility/UnwindLibUnwind.h; sourceTree = "<group>"; };
26E3EEE311A9901300FBADB6 /* UnwindMacOSXFrameBackchain.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = UnwindMacOSXFrameBackchain.cpp; path = Utility/UnwindMacOSXFrameBackchain.cpp; sourceTree = "<group>"; };
26E3EEE411A9901300FBADB6 /* UnwindMacOSXFrameBackchain.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = UnwindMacOSXFrameBackchain.h; path = Utility/UnwindMacOSXFrameBackchain.h; sourceTree = "<group>"; };
26E3EEF711A994E800FBADB6 /* RegisterContextMacOSXFrameBackchain.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = RegisterContextMacOSXFrameBackchain.cpp; path = Utility/RegisterContextMacOSXFrameBackchain.cpp; sourceTree = "<group>"; };
@@ -1024,31 +1014,6 @@
961FAC18123605A200F93A47 /* ArchDefaultUnwindPlan.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = ArchDefaultUnwindPlan.cpp; path = source/Utility/ArchDefaultUnwindPlan.cpp; sourceTree = "<group>"; };
961FAC1C12360C7D00F93A47 /* ArchDefaultUnwindPlan-x86.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = "ArchDefaultUnwindPlan-x86.cpp"; path = "Utility/ArchDefaultUnwindPlan-x86.cpp"; sourceTree = "<group>"; };
961FAC1D12360C7D00F93A47 /* ArchDefaultUnwindPlan-x86.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "ArchDefaultUnwindPlan-x86.h"; path = "Utility/ArchDefaultUnwindPlan-x86.h"; sourceTree = "<group>"; };
- 9654F79C1197DA1300F72B43 /* MacOSXLibunwindCallbacks.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = MacOSXLibunwindCallbacks.cpp; path = Utility/MacOSXLibunwindCallbacks.cpp; sourceTree = "<group>"; };
- 9654F79D1197DA1300F72B43 /* MacOSXLibunwindCallbacks.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = MacOSXLibunwindCallbacks.h; path = Utility/MacOSXLibunwindCallbacks.h; sourceTree = "<group>"; };
- 9654F7A11197DA3F00F72B43 /* libunwind.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = libunwind.h; sourceTree = "<group>"; };
- 9654F7A31197DA3F00F72B43 /* compact_unwind_encoding.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = compact_unwind_encoding.h; sourceTree = "<group>"; };
- 9654F7A41197DA3F00F72B43 /* unwind.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = unwind.h; sourceTree = "<group>"; };
- 9654F7A61197DA3F00F72B43 /* AddressSpace.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = AddressSpace.hpp; sourceTree = "<group>"; };
- 9654F7A71197DA3F00F72B43 /* ArchDefaultUnwinder.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = ArchDefaultUnwinder.hpp; sourceTree = "<group>"; };
- 9654F7A81197DA3F00F72B43 /* AssemblyInstructions.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = AssemblyInstructions.hpp; sourceTree = "<group>"; };
- 9654F7A91197DA3F00F72B43 /* AssemblyParser.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = AssemblyParser.hpp; sourceTree = "<group>"; };
- 9654F7AA1197DA3F00F72B43 /* CompactUnwinder.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = CompactUnwinder.hpp; sourceTree = "<group>"; };
- 9654F7AB1197DA3F00F72B43 /* dwarf2.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = dwarf2.h; sourceTree = "<group>"; };
- 9654F7AC1197DA3F00F72B43 /* DwarfInstructions.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = DwarfInstructions.hpp; sourceTree = "<group>"; };
- 9654F7AD1197DA3F00F72B43 /* DwarfParser.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = DwarfParser.hpp; sourceTree = "<group>"; };
- 9654F7AE1197DA3F00F72B43 /* FileAbstraction.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = FileAbstraction.hpp; sourceTree = "<group>"; };
- 9654F7AF1197DA3F00F72B43 /* InternalMacros.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InternalMacros.h; sourceTree = "<group>"; };
- 9654F7B21197DA3F00F72B43 /* libunwind_priv.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = libunwind_priv.h; sourceTree = "<group>"; };
- 9654F7B31197DA3F00F72B43 /* libuwind.cxx */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = libuwind.cxx; sourceTree = "<group>"; };
- 9654F7B41197DA3F00F72B43 /* Registers.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = Registers.hpp; sourceTree = "<group>"; };
- 9654F7B51197DA3F00F72B43 /* Registers.s */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = Registers.s; sourceTree = "<group>"; };
- 9654F7B61197DA3F00F72B43 /* RemoteDebuggerDummyUnwinder.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = RemoteDebuggerDummyUnwinder.hpp; sourceTree = "<group>"; };
- 9654F7B71197DA3F00F72B43 /* RemoteProcInfo.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = RemoteProcInfo.hpp; sourceTree = "<group>"; };
- 9654F7B81197DA3F00F72B43 /* RemoteRegisterMap.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = RemoteRegisterMap.hpp; sourceTree = "<group>"; };
- 9654F7B91197DA3F00F72B43 /* RemoteUnwindProfile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RemoteUnwindProfile.h; sourceTree = "<group>"; };
- 9654F7BA1197DA3F00F72B43 /* unw_getcontext.s */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; path = unw_getcontext.s; sourceTree = "<group>"; };
- 9654F7BD1197DA3F00F72B43 /* UnwindCursor.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = UnwindCursor.hpp; sourceTree = "<group>"; };
96A6D9C51249D96F00250B38 /* ArchVolatileRegs.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = ArchVolatileRegs.cpp; path = source/Utility/ArchVolatileRegs.cpp; sourceTree = "<group>"; };
96A6D9C71249D98800250B38 /* ArchVolatileRegs-x86.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = "ArchVolatileRegs-x86.cpp"; path = "Utility/ArchVolatileRegs-x86.cpp"; sourceTree = "<group>"; };
96A6D9C81249D98800250B38 /* ArchVolatileRegs-x86.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "ArchVolatileRegs-x86.h"; path = "Utility/ArchVolatileRegs-x86.h"; sourceTree = "<group>"; };
@@ -1639,17 +1604,10 @@
961FAC1D12360C7D00F93A47 /* ArchDefaultUnwindPlan-x86.h */,
961FABE81235F26800F93A47 /* UnwindAssemblyProfiler-x86.cpp */,
961FABE91235F26800F93A47 /* UnwindAssemblyProfiler-x86.h */,
- 9654F79F1197DA3F00F72B43 /* libunwind */,
- 26B4667011A2091600CF6220 /* LibUnwindRegisterContext.h */,
- 26B4666F11A2091600CF6220 /* LibUnwindRegisterContext.cpp */,
- 9654F79D1197DA1300F72B43 /* MacOSXLibunwindCallbacks.h */,
- 9654F79C1197DA1300F72B43 /* MacOSXLibunwindCallbacks.cpp */,
26E3EEF811A994E800FBADB6 /* RegisterContextMacOSXFrameBackchain.h */,
26E3EEF711A994E800FBADB6 /* RegisterContextMacOSXFrameBackchain.cpp */,
2615DBC91208B5FC0021781D /* StopInfoMachException.h */,
2615DBC81208B5FC0021781D /* StopInfoMachException.cpp */,
- 26E3EEBF11A98A1900FBADB6 /* UnwindLibUnwind.h */,
- 26E3EEBE11A98A1900FBADB6 /* UnwindLibUnwind.cpp */,
26E3EEE411A9901300FBADB6 /* UnwindMacOSXFrameBackchain.h */,
26E3EEE311A9901300FBADB6 /* UnwindMacOSXFrameBackchain.cpp */,
);
@@ -2274,61 +2232,6 @@
path = source/Host/common;
sourceTree = "<group>";
};
- 9654F79F1197DA3F00F72B43 /* libunwind */ = {
- isa = PBXGroup;
- children = (
- 9654F7A01197DA3F00F72B43 /* include */,
- 9654F7A51197DA3F00F72B43 /* src */,
- );
- name = libunwind;
- path = Utility/libunwind;
- sourceTree = "<group>";
- };
- 9654F7A01197DA3F00F72B43 /* include */ = {
- isa = PBXGroup;
- children = (
- 9654F7A11197DA3F00F72B43 /* libunwind.h */,
- 9654F7A21197DA3F00F72B43 /* mach-o */,
- 9654F7A41197DA3F00F72B43 /* unwind.h */,
- );
- path = include;
- sourceTree = "<group>";
- };
- 9654F7A21197DA3F00F72B43 /* mach-o */ = {
- isa = PBXGroup;
- children = (
- 9654F7A31197DA3F00F72B43 /* compact_unwind_encoding.h */,
- );
- path = "mach-o";
- sourceTree = "<group>";
- };
- 9654F7A51197DA3F00F72B43 /* src */ = {
- isa = PBXGroup;
- children = (
- 9654F7A61197DA3F00F72B43 /* AddressSpace.hpp */,
- 9654F7A71197DA3F00F72B43 /* ArchDefaultUnwinder.hpp */,
- 9654F7A81197DA3F00F72B43 /* AssemblyInstructions.hpp */,
- 9654F7A91197DA3F00F72B43 /* AssemblyParser.hpp */,
- 9654F7AA1197DA3F00F72B43 /* CompactUnwinder.hpp */,
- 9654F7AB1197DA3F00F72B43 /* dwarf2.h */,
- 9654F7AC1197DA3F00F72B43 /* DwarfInstructions.hpp */,
- 9654F7AD1197DA3F00F72B43 /* DwarfParser.hpp */,
- 9654F7AE1197DA3F00F72B43 /* FileAbstraction.hpp */,
- 9654F7AF1197DA3F00F72B43 /* InternalMacros.h */,
- 9654F7B21197DA3F00F72B43 /* libunwind_priv.h */,
- 9654F7B31197DA3F00F72B43 /* libuwind.cxx */,
- 9654F7B41197DA3F00F72B43 /* Registers.hpp */,
- 9654F7B51197DA3F00F72B43 /* Registers.s */,
- 9654F7B61197DA3F00F72B43 /* RemoteDebuggerDummyUnwinder.hpp */,
- 9654F7B71197DA3F00F72B43 /* RemoteProcInfo.hpp */,
- 9654F7B81197DA3F00F72B43 /* RemoteRegisterMap.hpp */,
- 9654F7B91197DA3F00F72B43 /* RemoteUnwindProfile.h */,
- 9654F7BA1197DA3F00F72B43 /* unw_getcontext.s */,
- 9654F7BD1197DA3F00F72B43 /* UnwindCursor.hpp */,
- );
- path = src;
- sourceTree = "<group>";
- };
/* End PBXGroup section */
/* Begin PBXHeadersBuildPhase section */
@@ -2791,14 +2694,9 @@
26D5B14B11B07550009A862E /* CommandObjectTarget.cpp in Sources */,
26D5B14C11B07550009A862E /* PathMappingList.cpp in Sources */,
26D5B14D11B07550009A862E /* StringExtractorGDBRemote.cpp in Sources */,
- 26D5B14E11B07550009A862E /* MacOSXLibunwindCallbacks.cpp in Sources */,
- 26D5B15011B07550009A862E /* Registers.s in Sources */,
- 26D5B15111B07550009A862E /* unw_getcontext.s in Sources */,
- 26D5B15211B07550009A862E /* LibUnwindRegisterContext.cpp in Sources */,
26D5B15311B07550009A862E /* ABIMacOSX_i386.cpp in Sources */,
26D5B15511B07550009A862E /* Baton.cpp in Sources */,
26D5B15611B07550009A862E /* CommandObjectArgs.cpp in Sources */,
- 26D5B15911B07550009A862E /* UnwindLibUnwind.cpp in Sources */,
26D5B15A11B07550009A862E /* UnwindMacOSXFrameBackchain.cpp in Sources */,
26D5B15B11B07550009A862E /* RegisterContextMacOSXFrameBackchain.cpp in Sources */,
26680324116005D9008E1FE4 /* SBThread.cpp in Sources */,
@@ -2833,7 +2731,6 @@
9AC703AF117675410086C050 /* SBInstruction.cpp in Sources */,
9AC703B1117675490086C050 /* SBInstructionList.cpp in Sources */,
9AA69DB1118A024600D753A0 /* SBInputReader.cpp in Sources */,
- 26D5B18E11B07979009A862E /* libuwind.cxx in Sources */,
49F1A74611B3388F003ED505 /* ClangExpressionDeclMap.cpp in Sources */,
49D7072911B5AD11001AD875 /* ClangASTSource.cpp in Sources */,
4CA9637B11B6E99A00780E28 /* CommandObjectApropos.cpp in Sources */,
Modified: lldb/trunk/source/Plugins/Process/MacOSX-User/source/ThreadMacOSX.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/Process/MacOSX-User/source/ThreadMacOSX.cpp?rev=122059&r1=122058&r2=122059&view=diff
==============================================================================
--- lldb/trunk/source/Plugins/Process/MacOSX-User/source/ThreadMacOSX.cpp (original)
+++ lldb/trunk/source/Plugins/Process/MacOSX-User/source/ThreadMacOSX.cpp Fri Dec 17 09:50:20 2010
@@ -23,8 +23,6 @@
#include "lldb/Breakpoint/WatchpointLocation.h"
#include "lldb/Core/StreamString.h"
#include "lldb/Target/Unwind.h"
-#include "LibUnwindRegisterContext.h"
-#include "UnwindLibUnwind.h"
#include "UnwindMacOSXFrameBackchain.h"
using namespace lldb;
Removed: lldb/trunk/source/Plugins/Process/Utility/LibUnwindRegisterContext.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/Process/Utility/LibUnwindRegisterContext.cpp?rev=122058&view=auto
==============================================================================
--- lldb/trunk/source/Plugins/Process/Utility/LibUnwindRegisterContext.cpp (original)
+++ lldb/trunk/source/Plugins/Process/Utility/LibUnwindRegisterContext.cpp (removed)
@@ -1,336 +0,0 @@
-//===-- LibUnwindRegisterContext.cpp ----------------------------*- C++ -*-===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-
-#include "LibUnwindRegisterContext.h"
-
-// C Includes
-// C++ Includes
-// Other libraries and framework includes
-#include "lldb/Core/DataBufferHeap.h"
-#include "lldb/Core/DataExtractor.h"
-#include "lldb/Target/Thread.h"
-// Project includes
-
-using namespace lldb;
-using namespace lldb_private;
-
-//----------------------------------------------------------------------
-// LibUnwindRegisterContext constructor
-//----------------------------------------------------------------------
-LibUnwindRegisterContext::LibUnwindRegisterContext
-(
- Thread &thread,
- StackFrame *frame,
- const lldb_private::unw_cursor_t& unwind_cursor
-) :
- RegisterContext (thread, frame),
- m_unwind_cursor (unwind_cursor),
- m_unwind_cursor_is_valid (true)
-{
-}
-
-//----------------------------------------------------------------------
-// Destructor
-//----------------------------------------------------------------------
-LibUnwindRegisterContext::~LibUnwindRegisterContext()
-{
-}
-
-void
-LibUnwindRegisterContext::Invalidate ()
-{
- m_unwind_cursor_is_valid = false;
-}
-
-size_t
-LibUnwindRegisterContext::GetRegisterCount ()
-{
- return m_thread.GetRegisterContext()->GetRegisterCount();
-}
-
-const lldb::RegisterInfo *
-LibUnwindRegisterContext::GetRegisterInfoAtIndex (uint32_t reg)
-{
- return m_thread.GetRegisterContext()->GetRegisterInfoAtIndex(reg);
-}
-
-size_t
-LibUnwindRegisterContext::GetRegisterSetCount ()
-{
- return m_thread.GetRegisterContext()->GetRegisterSetCount();
-}
-
-
-
-const lldb::RegisterSet *
-LibUnwindRegisterContext::GetRegisterSet (uint32_t reg_set)
-{
- return m_thread.GetRegisterContext()->GetRegisterSet (reg_set);
-}
-
-
-
-bool
-LibUnwindRegisterContext::ReadRegisterValue (uint32_t reg, Scalar &value)
-{
- if (m_unwind_cursor_is_valid == false)
- return false;
-
- // Read the register
- unw_word_t reg_value;
- if (unw_get_reg (&m_unwind_cursor, reg, ®_value) != UNW_ESUCCESS)
- return false;
-
- const RegisterInfo *reg_info = GetRegisterInfoAtIndex (reg);
- switch (reg_info->encoding)
- {
- case eEncodingUint:
- switch (reg_info->byte_size)
- {
- case 1:
- case 2:
- case 4:
- value = (uint32_t)reg_value;
- return true;
-
- case 8:
- value = (uint64_t)reg_value;
- return true;
- }
- break;
-
- case eEncodingSint:
- switch (reg_info->byte_size)
- {
- case 1:
- case 2:
- case 4:
- value = (int32_t)reg_value;
- return true;
-
- case 8:
- value = (int64_t)reg_value;
- return true;
- }
- break;
-
- case eEncodingIEEE754:
- if (reg_info->byte_size > sizeof(unw_word_t))
- return false;
-
- switch (reg_info->byte_size)
- {
- case sizeof (float):
- if (sizeof (float) == sizeof(uint32_t))
- {
- value = (uint32_t)reg_value;
- return true;
- }
- else if (sizeof (float) == sizeof(uint64_t))
- {
- value = (uint64_t)reg_value;
- return true;
- }
- break;
-
- case sizeof (double):
- if (sizeof (double) == sizeof(uint32_t))
- {
- value = (uint32_t)reg_value;
- return true;
- }
- else if (sizeof (double) == sizeof(uint64_t))
- {
- value = (uint64_t)reg_value;
- return true;
- }
- break;
-
- case sizeof (long double):
- if (sizeof (long double) == sizeof(uint32_t))
- {
- value = (uint32_t)reg_value;
- return true;
- }
- else if (sizeof (long double) == sizeof(uint64_t))
- {
- value = (uint64_t)reg_value;
- return true;
- }
- break;
- }
- break;
-
- default:
- break;
- }
- return false;
-}
-
-
-bool
-LibUnwindRegisterContext::ReadRegisterBytes (uint32_t reg, DataExtractor &data)
-{
- Scalar reg_value;
-
- if (ReadRegisterValue (reg, reg_value))
- {
- if (reg_value.GetData(data))
- {
- // "reg_value" is local and now "data" points to the data within
- // "reg_value", so we must make a copy that will live within "data"
- DataBufferSP data_sp (new DataBufferHeap (data.GetDataStart(), data.GetByteSize()));
- data.SetData (data_sp, 0, data.GetByteSize());
- return true;
- }
- }
- return false;
-}
-
-
-bool
-LibUnwindRegisterContext::WriteRegisterValue (uint32_t reg, const Scalar &value)
-{
- const RegisterInfo *reg_info = GetRegisterInfoAtIndex (reg);
- if (reg_info == NULL)
- return false;
- unw_word_t reg_value = 0;
- switch (value.GetType())
- {
- case Scalar::e_void:
- return false;
-
- case Scalar::e_sint: reg_value = value.SInt(); break;
- case Scalar::e_uint: reg_value = value.UInt(); break;
- case Scalar::e_slong: reg_value = value.SLong(); break;
- case Scalar::e_ulong: reg_value = value.ULong(); break;
- case Scalar::e_slonglong: reg_value = value.SLongLong(); break;
- case Scalar::e_ulonglong: reg_value = value.ULongLong(); break;
- case Scalar::e_float:
- if (sizeof (float) == sizeof (unsigned int))
- reg_value = value.UInt();
- else if (sizeof (float) == sizeof (unsigned long))
- reg_value = value.ULong();
- else if (sizeof (float) == sizeof (unsigned long long))
- reg_value = value.ULongLong();
- else
- return false;
- break;
-
- case Scalar::e_double:
- if (sizeof (double) == sizeof (unsigned int))
- reg_value = value.UInt();
- else if (sizeof (double) == sizeof (unsigned long))
- reg_value = value.ULong();
- else if (sizeof (double) == sizeof (unsigned long long))
- reg_value = value.ULongLong();
- else
- return false;
- break;
-
- case Scalar::e_long_double:
- if (sizeof (long double) == sizeof (unsigned int))
- reg_value = value.UInt();
- else if (sizeof (long double) == sizeof (unsigned long))
- reg_value = value.ULong();
- else if (sizeof (long double) == sizeof (unsigned long long))
- reg_value = value.ULongLong();
- else
- return false;
- break;
- }
-
- return unw_set_reg (&m_unwind_cursor, reg, reg_value) == UNW_ESUCCESS;
-}
-
-
-bool
-LibUnwindRegisterContext::WriteRegisterBytes (uint32_t reg, DataExtractor &data, uint32_t data_offset)
-{
- const RegisterInfo *reg_info = GetRegisterInfoAtIndex (reg);
-
- if (reg_info == NULL)
- return false;
- if (reg_info->byte_size > sizeof (unw_word_t))
- return false;
-
- Scalar value;
- uint32_t offset = data_offset;
-
- switch (reg_info->encoding)
- {
- case eEncodingUint:
- if (reg_info->byte_size <= 4)
- value = data.GetMaxU32 (&offset, reg_info->byte_size);
- else if (reg_info->byte_size <= 8)
- value = data.GetMaxU64 (&offset, reg_info->byte_size);
- else
- return false;
- break;
-
- case eEncodingSint:
- if (reg_info->byte_size <= 4)
- value = (int32_t)data.GetMaxU32 (&offset, reg_info->byte_size);
- else if (reg_info->byte_size <= 8)
- value = data.GetMaxS64 (&offset, reg_info->byte_size);
- else
- return false;
- break;
-
- case eEncodingIEEE754:
- switch (reg_info->byte_size)
- {
- case sizeof (float):
- value = data.GetFloat (&offset);
- break;
-
- case sizeof (double):
- value = data.GetDouble (&offset);
- break;
-
- case sizeof (long double):
- value = data.GetLongDouble (&offset);
- break;
- default:
- return false;
- }
-
- default:
- return false;
- }
- return WriteRegisterValue (reg, value);
-}
-
-
-bool
-LibUnwindRegisterContext::ReadAllRegisterValues (lldb::DataBufferSP &data_sp)
-{
- // libunwind frames can't handle this it doesn't always have all register
- // values. This call should only be called on frame zero anyway so there
- // shouldn't be any problem
- return false;
-}
-
-bool
-LibUnwindRegisterContext::WriteAllRegisterValues (const lldb::DataBufferSP &data_sp)
-{
- // Since this class doesn't respond to "ReadAllRegisterValues()", it must
- // not have been the one that saved all the register values. So we just let
- // the thread's register context (the register context for frame zero) do
- // the writing.
- return m_thread.GetRegisterContext()->WriteAllRegisterValues(data_sp);
-}
-
-
-uint32_t
-LibUnwindRegisterContext::ConvertRegisterKindToRegisterNumber (uint32_t kind, uint32_t num)
-{
- return m_thread.GetRegisterContext()->ConvertRegisterKindToRegisterNumber (kind, num);
-}
-
Removed: lldb/trunk/source/Plugins/Process/Utility/LibUnwindRegisterContext.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/Process/Utility/LibUnwindRegisterContext.h?rev=122058&view=auto
==============================================================================
--- lldb/trunk/source/Plugins/Process/Utility/LibUnwindRegisterContext.h (original)
+++ lldb/trunk/source/Plugins/Process/Utility/LibUnwindRegisterContext.h (removed)
@@ -1,83 +0,0 @@
-//===-- LibUnwindRegisterContext.h ------------------------------*- C++ -*-===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-
-#ifndef lldb_LibUnwindRegisterContext_h_
-#define lldb_LibUnwindRegisterContext_h_
-
-// C Includes
-// C++ Includes
-// Other libraries and framework includes
-// Project includes
-#include "lldb/lldb-private.h"
-#include "lldb/Target/RegisterContext.h"
-
-#include "libunwind/include/libunwind.h"
-
-class LibUnwindRegisterContext : public lldb_private::RegisterContext
-{
-public:
- //------------------------------------------------------------------
- // Constructors and Destructors
- //------------------------------------------------------------------
- LibUnwindRegisterContext (lldb_private::Thread &thread,
- lldb_private::StackFrame *frame,
- const lldb_private::unw_cursor_t &unwind_cursor);
-
- virtual
- ~LibUnwindRegisterContext ();
-
- //------------------------------------------------------------------
- // Subclasses must override these functions
- //------------------------------------------------------------------
- virtual void
- Invalidate ();
-
- virtual size_t
- GetRegisterCount ();
-
- virtual const lldb::RegisterInfo *
- GetRegisterInfoAtIndex (uint32_t reg);
-
- virtual size_t
- GetRegisterSetCount ();
-
- virtual const lldb::RegisterSet *
- GetRegisterSet (uint32_t reg_set);
-
- virtual bool
- ReadRegisterValue (uint32_t reg, lldb_private::Scalar &value);
-
- virtual bool
- ReadRegisterBytes (uint32_t reg, lldb_private::DataExtractor &data);
-
- virtual bool
- ReadAllRegisterValues (lldb::DataBufferSP &data_sp);
-
- virtual bool
- WriteRegisterValue (uint32_t reg, const lldb_private::Scalar &value);
-
- virtual bool
- WriteRegisterBytes (uint32_t reg, lldb_private::DataExtractor &data, uint32_t data_offset);
-
- virtual bool
- WriteAllRegisterValues (const lldb::DataBufferSP &data_sp);
-
- virtual uint32_t
- ConvertRegisterKindToRegisterNumber (uint32_t kind, uint32_t num);
-
-private:
- lldb_private::unw_cursor_t m_unwind_cursor;
- bool m_unwind_cursor_is_valid;
- //------------------------------------------------------------------
- // For LibUnwindRegisterContext only
- //------------------------------------------------------------------
- DISALLOW_COPY_AND_ASSIGN (LibUnwindRegisterContext);
-};
-
-#endif // lldb_LibUnwindRegisterContext_h_
Removed: lldb/trunk/source/Plugins/Process/Utility/MacOSXLibunwindCallbacks.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/Process/Utility/MacOSXLibunwindCallbacks.cpp?rev=122058&view=auto
==============================================================================
--- lldb/trunk/source/Plugins/Process/Utility/MacOSXLibunwindCallbacks.cpp (original)
+++ lldb/trunk/source/Plugins/Process/Utility/MacOSXLibunwindCallbacks.cpp (removed)
@@ -1,320 +0,0 @@
-//===-- MacOSXLibunwindCallbacks.cpp ----------------------------*- C++ -*-===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-
-#ifndef liblldb_MacOSXLibunwindCallbacks_cpp_
-#define liblldb_MacOSXLibunwindCallbacks_cpp_
-#if defined(__cplusplus)
-
-#include "lldb/Core/DataExtractor.h"
-#include "lldb/Core/FileSpec.h"
-#include "lldb/Core/DataBufferHeap.h"
-#include "lldb/Symbol/ObjectFile.h"
-#include "lldb/Symbol/SymbolContext.h"
-#include "lldb/Target/Process.h"
-#include "lldb/Target/RegisterContext.h"
-#include "lldb/Target/Target.h"
-#include "lldb/Target/Thread.h"
-
-#include "lldb/lldb-enumerations.h"
-#include "llvm-c/EnhancedDisassembly.h"
-
-#include "libunwind/include/libunwind.h"
-
-using namespace lldb;
-
-namespace lldb_private {
-
-/* Don't implement (libunwind does not use)
- find_proc_info
- put_unwind_info
- get_dyn_info_list_addr
- access_mem
- resume
-*/
-/*
- Should implement (not needed yet)
- access_fpreg
- access_vecreg
- proc_is_sigtramp
- proc_is_inferior_function_call
- access_reg_inf_func_call
-*/
-
-static int
-access_reg (lldb_private::unw_addr_space_t as, lldb_private::unw_regnum_t regnum, lldb_private::unw_word_t *valp, int write, void *arg)
-{
- if (arg == 0)
- return -1;
- Thread *th = (Thread *) arg;
- /* FIXME Only support reading for now. */
- if (write == 1)
- return -1;
- if (th->GetRegisterContext()->GetRegisterInfoAtIndex(regnum) == NULL)
- return -1;
- DataExtractor de;
- if (!th->GetRegisterContext()->ReadRegisterBytes (regnum, de))
- return -1;
- memcpy (valp, de.GetDataStart(), de.GetByteSize());
- return UNW_ESUCCESS;
-}
-
-static int
-get_proc_name (lldb_private::unw_addr_space_t as, lldb_private::unw_word_t ip, char *bufp, size_t buf_len, lldb_private::unw_word_t *offp, void *arg)
-{
- if (arg == 0)
- return -1;
- Thread *thread = (Thread *) arg;
- Target &target = thread->GetProcess().GetTarget();
- Address addr;
- if (!target.GetSectionLoadList().ResolveLoadAddress(ip, addr))
- return -1;
-
- SymbolContext sc;
- if (!target.GetImages().ResolveSymbolContextForAddress (addr, eSymbolContextFunction, sc))
- return -1;
- if (!sc.symbol)
- return -1;
- strlcpy (bufp, sc.symbol->GetMangled().GetMangledName().AsCString(""), buf_len);
- if (offp)
- *offp = addr.GetLoadAddress(&target) - sc.symbol->GetValue().GetLoadAddress(&target);
- return UNW_ESUCCESS;
-}
-
-static int
-find_image_info (lldb_private::unw_addr_space_t as, lldb_private::unw_word_t load_addr, lldb_private::unw_word_t *mh,
- lldb_private::unw_word_t *text_start, lldb_private::unw_word_t *text_end,
- lldb_private::unw_word_t *eh_frame, lldb_private::unw_word_t *eh_frame_len,
- lldb_private::unw_word_t *compact_unwind_start, lldb_private::unw_word_t *compact_unwind_len, void *arg)
-{
- if (arg == 0)
- return -1;
- Thread *thread = (Thread *) arg;
- Target &target = thread->GetProcess().GetTarget();
- Address addr;
- if (!target.GetSectionLoadList().ResolveLoadAddress(load_addr, addr))
- return -1;
-
- SymbolContext sc;
- if (!target.GetImages().ResolveSymbolContextForAddress (addr, eSymbolContextModule, sc))
- return -1;
-
- SectionList *sl = sc.module_sp->GetObjectFile()->GetSectionList();
- static ConstString g_segment_name_TEXT("__TEXT");
- SectionSP text_segment_sp(sl->FindSectionByName(g_segment_name_TEXT));
- if (!text_segment_sp)
- return -1;
-
- *mh = text_segment_sp->GetLoadBaseAddress (&target);
- *text_start = text_segment_sp->GetLoadBaseAddress (&target);
- *text_end = *text_start + text_segment_sp->GetByteSize();
-
- static ConstString g_section_name_eh_frame ("__eh_frame");
- SectionSP eh_frame_section_sp = text_segment_sp->GetChildren().FindSectionByName(g_section_name_eh_frame);
- if (eh_frame_section_sp.get()) {
- *eh_frame = eh_frame_section_sp->GetLoadBaseAddress (&target);
- *eh_frame_len = eh_frame_section_sp->GetByteSize();
- } else {
- *eh_frame = 0;
- *eh_frame_len = 0;
- }
-
- static ConstString g_section_name_unwind_info ("__unwind_info");
- SectionSP unwind_info_section_sp = text_segment_sp->GetChildren().FindSectionByName(g_section_name_unwind_info);
- if (unwind_info_section_sp.get()) {
- *compact_unwind_start = unwind_info_section_sp->GetLoadBaseAddress (&target);
- *compact_unwind_len = unwind_info_section_sp->GetByteSize();
- } else {
- *compact_unwind_start = 0;
- *compact_unwind_len = 0;
- }
- return UNW_ESUCCESS;
-}
-
-static int
-get_proc_bounds (lldb_private::unw_addr_space_t as, lldb_private::unw_word_t ip, lldb_private::unw_word_t *low, lldb_private::unw_word_t *high, void *arg)
-{
- if (arg == 0)
- return -1;
- Thread *thread = (Thread *) arg;
- Target &target = thread->GetProcess().GetTarget();
- Address addr;
- if (!target.GetSectionLoadList().ResolveLoadAddress(ip, addr))
- return -1;
- SymbolContext sc;
- if (!target.GetImages().ResolveSymbolContextForAddress (addr, eSymbolContextFunction | eSymbolContextSymbol, sc))
- return -1;
- if (sc.function)
- {
- lldb::addr_t start, len;
- start = sc.function->GetAddressRange().GetBaseAddress().GetLoadAddress(&target);
- len = sc.function->GetAddressRange().GetByteSize();
- if (start == LLDB_INVALID_ADDRESS || len == LLDB_INVALID_ADDRESS)
- return -1;
- *low = start;
- *high = start + len;
- return UNW_ESUCCESS;
- }
- if (sc.symbol)
- {
- lldb::addr_t start, len;
- start = sc.symbol->GetAddressRangeRef().GetBaseAddress().GetLoadAddress(&target);
- len = sc.symbol->GetAddressRangeRef().GetByteSize();
- if (start == LLDB_INVALID_ADDRESS)
- return -1;
- *low = start;
- if (len != LLDB_INVALID_ADDRESS)
- *high = start + len;
- else
- *high = 0;
- return UNW_ESUCCESS;
- }
- return -1;
-}
-
-static int
-access_raw (lldb_private::unw_addr_space_t as, lldb_private::unw_word_t addr, lldb_private::unw_word_t extent, uint8_t *valp, int write, void *arg)
-{
- if (arg == 0)
- return -1;
- Thread *th = (Thread *) arg;
- /* FIXME Only support reading for now. */
- if (write == 1)
- return -1;
-
- Error error;
- if (th->GetProcess().ReadMemory (addr, valp, extent, error) != extent)
- return -1;
- return UNW_ESUCCESS;
-}
-
-
-static int
-reg_info
-(
- lldb_private::unw_addr_space_t as,
- lldb_private::unw_regnum_t regnum,
- lldb_private::unw_regtype_t *type,
- char *buf,
- size_t buflen,
- void *arg
-)
-{
- if (arg == 0)
- return -1;
- Thread *th = (Thread *) arg;
- RegisterContext *regc = th->GetRegisterContext();
- if (regnum > regc->GetRegisterCount())
- {
- *type = UNW_NOT_A_REG;
- return UNW_ESUCCESS;
- }
-
- const char *name = regc->GetRegisterName (regnum);
- if (name == NULL)
- {
- *type = UNW_NOT_A_REG;
- return UNW_ESUCCESS;
- }
- strlcpy (buf, name, buflen);
-
- const lldb::RegisterInfo *reginfo = regc->GetRegisterInfoAtIndex (regnum);
- if (reginfo == NULL || reginfo->encoding == eEncodingInvalid)
- {
- *type = UNW_NOT_A_REG;
- return UNW_ESUCCESS;
- }
- if (reginfo->encoding == eEncodingUint || reginfo->encoding == eEncodingSint)
- *type = UNW_INTEGER_REG;
- if (reginfo->encoding == eEncodingIEEE754)
- *type = UNW_FLOATING_POINT_REG;
- if (reginfo->encoding == eEncodingVector)
- *type = UNW_VECTOR_REG;
-
- return UNW_ESUCCESS;
-}
-
-
-static int
-read_byte_for_edis (uint8_t *buf, uint64_t addr, void *arg)
-{
- if (arg == 0)
- return -1;
- Thread *th = (Thread *) arg;
- DataBufferHeap onebyte(1, 0);
- Error error;
- if (th->GetProcess().ReadMemory (addr, onebyte.GetBytes(), onebyte.GetByteSize(), error) != 1)
- return -1;
- *buf = onebyte.GetBytes()[0];
- return UNW_ESUCCESS;
-}
-
-static int
-instruction_length (lldb_private::unw_addr_space_t as, lldb_private::unw_word_t addr, int *length, void *arg)
-{
- EDDisassemblerRef disasm;
- EDInstRef cur_insn;
-
- if (arg == 0)
- return -1;
- Thread *thread = (Thread *) arg;
- Target &target = thread->GetProcess().GetTarget();
-
- const ArchSpec::CPU arch_cpu = target.GetArchitecture ().GetGenericCPUType();
-
- if (arch_cpu == ArchSpec::eCPU_i386)
- {
- if (EDGetDisassembler (&disasm, "i386-apple-darwin", kEDAssemblySyntaxX86ATT) != 0)
- return -1;
- }
- else if (arch_cpu == ArchSpec::eCPU_x86_64)
- {
- if (EDGetDisassembler (&disasm, "x86_64-apple-darwin", kEDAssemblySyntaxX86ATT) != 0)
- return -1;
- }
- else
- {
- return -1;
- }
-
- if (EDCreateInsts (&cur_insn, 1, disasm, read_byte_for_edis, addr, arg) != 1)
- return -1;
- *length = EDInstByteSize (cur_insn);
- EDReleaseInst (cur_insn);
- return UNW_ESUCCESS;
-}
-
-lldb_private::unw_accessors_t
-get_macosx_libunwind_callbacks () {
- lldb_private::unw_accessors_t ap;
- bzero (&ap, sizeof (lldb_private::unw_accessors_t));
- ap.find_proc_info = NULL;
- ap.put_unwind_info = NULL;
- ap.get_dyn_info_list_addr = NULL;
- ap.find_image_info = find_image_info;
- ap.access_mem = NULL;
- ap.access_reg = access_reg;
- ap.access_fpreg = NULL;
- ap.access_vecreg = NULL;
- ap.resume = NULL;
- ap.get_proc_name = get_proc_name;
- ap.get_proc_bounds = get_proc_bounds;
- ap.access_raw = access_raw;
- ap.reg_info = reg_info;
- ap.proc_is_sigtramp = NULL;
- ap.proc_is_inferior_function_call = NULL;
- ap.access_reg_inf_func_call = NULL;
- ap.instruction_length = instruction_length;
- return ap;
-}
-
-
-} // namespace lldb_private
-
-#endif // #if defined(__cplusplus)
-#endif // #ifndef liblldb_MacOSXLibunwindCallbacks_cpp_
Removed: lldb/trunk/source/Plugins/Process/Utility/MacOSXLibunwindCallbacks.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/Process/Utility/MacOSXLibunwindCallbacks.h?rev=122058&view=auto
==============================================================================
--- lldb/trunk/source/Plugins/Process/Utility/MacOSXLibunwindCallbacks.h (original)
+++ lldb/trunk/source/Plugins/Process/Utility/MacOSXLibunwindCallbacks.h (removed)
@@ -1,22 +0,0 @@
-//===-- MacOSXLibunwindCallbacks.h ------------------------------*- C++ -*-===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-
-#ifndef liblldb_MacOSXLibunwindCallbacks_h_
-#define liblldb_MacOSXLibunwindCallbacks_h_
-#if defined(__cplusplus)
-
-namespace lldb_private {
-
-unw_accessors_t get_macosx_libunwind_callbacks ();
-
-} // namespace lldb_utility
-
-#endif // #if defined(__cplusplus)
-#endif // #ifndef liblldb_MacOSXLibunwindCallbacks_h_
-
Removed: lldb/trunk/source/Plugins/Process/Utility/UnwindLibUnwind.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/Process/Utility/UnwindLibUnwind.cpp?rev=122058&view=auto
==============================================================================
--- lldb/trunk/source/Plugins/Process/Utility/UnwindLibUnwind.cpp (original)
+++ lldb/trunk/source/Plugins/Process/Utility/UnwindLibUnwind.cpp (removed)
@@ -1,73 +0,0 @@
-//===-- UnwindLibUnwind.cpp -------------------------------------*- C++ -*-===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-
-// C Includes
-// C++ Includes
-// Other libraries and framework includes
-// Project includes
-#include "lldb/Target/Thread.h"
-#include "UnwindLibUnwind.h"
-#include "LibUnwindRegisterContext.h"
-
-using namespace lldb;
-using namespace lldb_private;
-
-UnwindLibUnwind::UnwindLibUnwind (Thread &thread, unw_addr_space_t addr_space) :
- Unwind (thread),
- m_addr_space (addr_space),
- m_cursors()
-{
- m_pc_regnum = thread.GetRegisterContext()->ConvertRegisterKindToRegisterNumber (eRegisterKindGeneric, LLDB_REGNUM_GENERIC_PC);
- m_sp_regnum = thread.GetRegisterContext()->ConvertRegisterKindToRegisterNumber (eRegisterKindGeneric, LLDB_REGNUM_GENERIC_SP);
-}
-
-uint32_t
-UnwindLibUnwind::GetFrameCount()
-{
- if (m_cursors.empty())
- {
- unw_cursor_t cursor;
- unw_init_remote (&cursor, m_addr_space, &m_thread);
-
- m_cursors.push_back (cursor);
-
- while (1)
- {
- int stepresult = unw_step (&cursor);
- if (stepresult > 0)
- m_cursors.push_back (cursor);
- else
- break;
- }
- }
- return m_cursors.size();
-}
-
-bool
-UnwindLibUnwind::GetFrameInfoAtIndex (uint32_t idx, addr_t& cfa, addr_t& pc)
-{
- const uint32_t frame_count = GetFrameCount();
- if (idx < frame_count)
- {
- int pc_err = unw_get_reg (&m_cursors[idx], m_pc_regnum, &pc);
- int sp_err = unw_get_reg (&m_cursors[idx], m_sp_regnum, &cfa);
- return pc_err == UNW_ESUCCESS && sp_err == UNW_ESUCCESS;
- }
- return false;
-}
-
-RegisterContext *
-UnwindLibUnwind::CreateRegisterContextForFrame (StackFrame *frame)
-{
- uint32_t idx = frame->GetUnwindFrameIndex ();
- const uint32_t frame_count = GetFrameCount();
- if (idx < frame_count)
- return new LibUnwindRegisterContext (m_thread, frame, m_cursors[idx]);
- return NULL;
-}
Removed: lldb/trunk/source/Plugins/Process/Utility/UnwindLibUnwind.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/Process/Utility/UnwindLibUnwind.h?rev=122058&view=auto
==============================================================================
--- lldb/trunk/source/Plugins/Process/Utility/UnwindLibUnwind.h (original)
+++ lldb/trunk/source/Plugins/Process/Utility/UnwindLibUnwind.h (removed)
@@ -1,66 +0,0 @@
-//===-- UnwindLibUnwind.h ---------------------------------------*- C++ -*-===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-
-#ifndef lldb_UnwindLibUnwind_h_
-#define lldb_UnwindLibUnwind_h_
-
-// C Includes
-// C++ Includes
-#include <vector>
-
-// Other libraries and framework includes
-#include "libunwind/include/libunwind.h"
-
-// Project includes
-#include "lldb/lldb-private.h"
-#include "lldb/Target/Unwind.h"
-
-class UnwindLibUnwind : public lldb_private::Unwind
-{
-public:
- UnwindLibUnwind (lldb_private::Thread &thread,
- lldb_private::unw_addr_space_t addr_space);
-
- virtual
- ~UnwindLibUnwind()
- {
- }
-
- virtual void
- Clear()
- {
- m_cursors.clear();
- }
-
- virtual uint32_t
- GetFrameCount();
-
- bool
- GetFrameInfoAtIndex (uint32_t frame_idx,
- lldb::addr_t& cfa,
- lldb::addr_t& pc);
-
- lldb_private::RegisterContext *
- CreateRegisterContextForFrame (lldb_private::StackFrame *frame);
-
- lldb_private::Thread &
- GetThread();
-
-private:
- lldb_private::unw_addr_space_t m_addr_space;
- std::vector<lldb_private::unw_cursor_t> m_cursors;
- uint32_t m_pc_regnum;
- uint32_t m_sp_regnum;
- //------------------------------------------------------------------
- // For UnwindLibUnwind only
- //------------------------------------------------------------------
- DISALLOW_COPY_AND_ASSIGN (UnwindLibUnwind);
-};
-
-#endif // lldb_UnwindLibUnwind_h_
Modified: lldb/trunk/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp?rev=122059&r1=122058&r2=122059&view=diff
==============================================================================
--- lldb/trunk/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp (original)
+++ lldb/trunk/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp Fri Dec 17 09:50:20 2010
@@ -45,7 +45,6 @@
#include "ProcessGDBRemote.h"
#include "ProcessGDBRemoteLog.h"
#include "ThreadGDBRemote.h"
-#include "MacOSXLibunwindCallbacks.h"
#include "StopInfoMachException.h"
@@ -119,8 +118,6 @@
m_dispatch_queue_offsets_addr (LLDB_INVALID_ADDRESS),
m_packet_timeout (1),
m_max_memory_size (512),
- m_libunwind_target_type (UNW_TARGET_UNSPECIFIED),
- m_libunwind_addr_space (NULL),
m_waiting_for_attach (false),
m_local_debugserver (true)
{
@@ -1615,7 +1612,6 @@
Mutex::Locker locker(m_stdio_mutex);
m_stdout_data.clear();
}
- DestoryLibUnwindAddressSpace();
}
Error
@@ -2170,45 +2166,6 @@
return NULL;
}
-lldb_private::unw_addr_space_t
-ProcessGDBRemote::GetLibUnwindAddressSpace ()
-{
- unw_targettype_t target_type = UNW_TARGET_UNSPECIFIED;
-
- ArchSpec::CPU arch_cpu = m_target.GetArchitecture().GetGenericCPUType();
- if (arch_cpu == ArchSpec::eCPU_i386)
- target_type = UNW_TARGET_I386;
- else if (arch_cpu == ArchSpec::eCPU_x86_64)
- target_type = UNW_TARGET_X86_64;
-
- if (m_libunwind_addr_space)
- {
- if (m_libunwind_target_type != target_type)
- DestoryLibUnwindAddressSpace();
- else
- return m_libunwind_addr_space;
- }
- unw_accessors_t callbacks = get_macosx_libunwind_callbacks ();
- m_libunwind_addr_space = unw_create_addr_space (&callbacks, target_type);
- if (m_libunwind_addr_space)
- m_libunwind_target_type = target_type;
- else
- m_libunwind_target_type = UNW_TARGET_UNSPECIFIED;
- return m_libunwind_addr_space;
-}
-
-void
-ProcessGDBRemote::DestoryLibUnwindAddressSpace ()
-{
- if (m_libunwind_addr_space)
- {
- unw_destroy_addr_space (m_libunwind_addr_space);
- m_libunwind_addr_space = NULL;
- }
- m_libunwind_target_type = UNW_TARGET_UNSPECIFIED;
-}
-
-
const char *
ProcessGDBRemote::GetDispatchQueueNameForThread
(
Modified: lldb/trunk/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h?rev=122059&r1=122058&r2=122059&view=diff
==============================================================================
--- lldb/trunk/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h (original)
+++ lldb/trunk/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h Fri Dec 17 09:50:20 2010
@@ -29,7 +29,6 @@
#include "GDBRemoteCommunication.h"
#include "Utility/StringExtractor.h"
#include "GDBRemoteRegisterContext.h"
-#include "libunwind/include/libunwind.h"
class ThreadGDBRemote;
@@ -335,8 +334,6 @@
lldb::addr_t m_dispatch_queue_offsets_addr;
uint32_t m_packet_timeout;
size_t m_max_memory_size; // The maximum number of bytes to read/write when reading and writing memory
- lldb_private::unw_targettype_t m_libunwind_target_type;
- lldb_private::unw_addr_space_t m_libunwind_addr_space; // libunwind address space object for this process.
bool m_waiting_for_attach;
bool m_local_debugserver; // Is the debugserver process we are talking to local or on another machine.
@@ -384,11 +381,6 @@
//------------------------------------------------------------------
DISALLOW_COPY_AND_ASSIGN (ProcessGDBRemote);
- lldb_private::unw_addr_space_t
- GetLibUnwindAddressSpace ();
-
- void
- DestoryLibUnwindAddressSpace ();
};
#endif // liblldb_ProcessGDBRemote_h_
Modified: lldb/trunk/source/Plugins/Process/gdb-remote/ThreadGDBRemote.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/Process/gdb-remote/ThreadGDBRemote.cpp?rev=122059&r1=122058&r2=122059&view=diff
==============================================================================
--- lldb/trunk/source/Plugins/Process/gdb-remote/ThreadGDBRemote.cpp (original)
+++ lldb/trunk/source/Plugins/Process/gdb-remote/ThreadGDBRemote.cpp Fri Dec 17 09:50:20 2010
@@ -20,11 +20,9 @@
#include "lldb/Target/Unwind.h"
#include "lldb/Breakpoint/WatchpointLocation.h"
-#include "LibUnwindRegisterContext.h"
#include "ProcessGDBRemote.h"
#include "ProcessGDBRemoteLog.h"
#include "Utility/StringExtractorGDBRemote.h"
-#include "UnwindLibUnwind.h"
#include "UnwindMacOSXFrameBackchain.h"
#include "UnwindLLDB.h"
Modified: lldb/trunk/source/Plugins/Process/gdb-remote/ThreadGDBRemote.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/Process/gdb-remote/ThreadGDBRemote.h?rev=122059&r1=122058&r2=122059&view=diff
==============================================================================
--- lldb/trunk/source/Plugins/Process/gdb-remote/ThreadGDBRemote.h (original)
+++ lldb/trunk/source/Plugins/Process/gdb-remote/ThreadGDBRemote.h Fri Dec 17 09:50:20 2010
@@ -14,7 +14,6 @@
#include "lldb/Target/Process.h"
#include "lldb/Target/Thread.h"
-#include "libunwind/include/libunwind.h"
class StringExtractor;
class ProcessGDBRemote;
More information about the lldb-commits
mailing list