svn commit: r278425 - in vendor/lldb/dist: include/lldb include/lldb/API include/lldb/Breakpoint include/lldb/Core include/lldb/DataFormatters include/lldb/Expression include/lldb/Host include/lldb...
Ed Maste
emaste at FreeBSD.org
Mon Feb 9 01:44:15 UTC 2015
Author: emaste
Date: Mon Feb 9 01:44:09 2015
New Revision: 278425
URL: https://svnweb.freebsd.org/changeset/base/278425
Log:
Import LLDB as of upstream SVN 228549 (git 39760838)
Added:
vendor/lldb/dist/include/lldb/API/SBLaunchInfo.h (contents, props changed)
vendor/lldb/dist/include/lldb/Core/FormatEntity.h (contents, props changed)
vendor/lldb/dist/include/lldb/Host/StringConvert.h (contents, props changed)
vendor/lldb/dist/include/lldb/Host/common/
vendor/lldb/dist/include/lldb/Host/common/NativeBreakpoint.h
- copied unchanged from r278424, vendor/lldb/dist/source/Host/common/NativeBreakpoint.h
vendor/lldb/dist/include/lldb/Host/common/NativeBreakpointList.h
- copied unchanged from r278424, vendor/lldb/dist/source/Host/common/NativeBreakpointList.h
vendor/lldb/dist/include/lldb/Host/common/NativeProcessProtocol.h
- copied, changed from r278424, vendor/lldb/dist/source/Host/common/NativeProcessProtocol.h
vendor/lldb/dist/include/lldb/Host/common/NativeRegisterContext.h
- copied, changed from r278424, vendor/lldb/dist/include/lldb/Target/NativeRegisterContext.h
vendor/lldb/dist/include/lldb/Host/common/NativeRegisterContextRegisterInfo.h
- copied, changed from r278424, vendor/lldb/dist/include/lldb/Target/NativeRegisterContextRegisterInfo.h
vendor/lldb/dist/include/lldb/Host/common/NativeThreadProtocol.h
- copied, changed from r278424, vendor/lldb/dist/source/Host/common/NativeThreadProtocol.h
vendor/lldb/dist/include/lldb/Host/common/NativeWatchpointList.h (contents, props changed)
vendor/lldb/dist/include/lldb/Host/common/SoftwareBreakpoint.h
- copied unchanged from r278424, vendor/lldb/dist/source/Host/common/SoftwareBreakpoint.h
vendor/lldb/dist/include/lldb/Interpreter/OptionValueFormatEntity.h (contents, props changed)
vendor/lldb/dist/source/API/SBLaunchInfo.cpp (contents, props changed)
vendor/lldb/dist/source/Core/FormatEntity.cpp (contents, props changed)
vendor/lldb/dist/source/Host/common/NativeRegisterContext.cpp
- copied, changed from r278424, vendor/lldb/dist/source/Target/NativeRegisterContext.cpp
vendor/lldb/dist/source/Host/common/NativeRegisterContextRegisterInfo.cpp
- copied, changed from r278424, vendor/lldb/dist/source/Target/NativeRegisterContextRegisterInfo.cpp
vendor/lldb/dist/source/Host/common/NativeWatchpointList.cpp (contents, props changed)
vendor/lldb/dist/source/Host/common/StringConvert.cpp (contents, props changed)
vendor/lldb/dist/source/Interpreter/OptionValueFormatEntity.cpp (contents, props changed)
vendor/lldb/dist/source/Plugins/Process/POSIX/CrashReason.cpp (contents, props changed)
vendor/lldb/dist/source/Plugins/Process/POSIX/CrashReason.h (contents, props changed)
Deleted:
vendor/lldb/dist/include/lldb/Target/NativeRegisterContext.h
vendor/lldb/dist/include/lldb/Target/NativeRegisterContextRegisterInfo.h
vendor/lldb/dist/source/Host/common/NativeBreakpoint.h
vendor/lldb/dist/source/Host/common/NativeBreakpointList.h
vendor/lldb/dist/source/Host/common/NativeProcessProtocol.h
vendor/lldb/dist/source/Host/common/NativeThreadProtocol.h
vendor/lldb/dist/source/Host/common/SoftwareBreakpoint.h
vendor/lldb/dist/source/Target/NativeRegisterContext.cpp
vendor/lldb/dist/source/Target/NativeRegisterContextRegisterInfo.cpp
Modified:
vendor/lldb/dist/include/lldb/API/SBPlatform.h
vendor/lldb/dist/include/lldb/API/SBTarget.h
vendor/lldb/dist/include/lldb/API/SBType.h
vendor/lldb/dist/include/lldb/Breakpoint/Breakpoint.h
vendor/lldb/dist/include/lldb/Breakpoint/BreakpointLocation.h
vendor/lldb/dist/include/lldb/Breakpoint/StoppointLocation.h
vendor/lldb/dist/include/lldb/Core/ArchSpec.h
vendor/lldb/dist/include/lldb/Core/Broadcaster.h
vendor/lldb/dist/include/lldb/Core/Connection.h
vendor/lldb/dist/include/lldb/Core/ConnectionMachPort.h
vendor/lldb/dist/include/lldb/Core/ConnectionSharedMemory.h
vendor/lldb/dist/include/lldb/Core/Debugger.h
vendor/lldb/dist/include/lldb/Core/Disassembler.h
vendor/lldb/dist/include/lldb/Core/Mangled.h
vendor/lldb/dist/include/lldb/Core/Module.h
vendor/lldb/dist/include/lldb/Core/RegularExpression.h
vendor/lldb/dist/include/lldb/Core/ValueObject.h
vendor/lldb/dist/include/lldb/Core/ValueObjectSyntheticFilter.h
vendor/lldb/dist/include/lldb/DataFormatters/TypeSummary.h
vendor/lldb/dist/include/lldb/Expression/ASTResultSynthesizer.h
vendor/lldb/dist/include/lldb/Expression/ASTStructExtractor.h
vendor/lldb/dist/include/lldb/Expression/IRExecutionUnit.h
vendor/lldb/dist/include/lldb/Host/File.h
vendor/lldb/dist/include/lldb/Host/Host.h
vendor/lldb/dist/include/lldb/Host/PipeBase.h
vendor/lldb/dist/include/lldb/Host/Socket.h
vendor/lldb/dist/include/lldb/Host/SocketAddress.h
vendor/lldb/dist/include/lldb/Host/posix/ConnectionFileDescriptorPosix.h
vendor/lldb/dist/include/lldb/Host/posix/PipePosix.h
vendor/lldb/dist/include/lldb/Interpreter/Args.h
vendor/lldb/dist/include/lldb/Interpreter/CommandInterpreter.h
vendor/lldb/dist/include/lldb/Interpreter/OptionGroupPlatform.h
vendor/lldb/dist/include/lldb/Interpreter/OptionValue.h
vendor/lldb/dist/include/lldb/Interpreter/OptionValueProperties.h
vendor/lldb/dist/include/lldb/Interpreter/OptionValueRegex.h
vendor/lldb/dist/include/lldb/Interpreter/OptionValues.h
vendor/lldb/dist/include/lldb/Interpreter/ScriptInterpreter.h
vendor/lldb/dist/include/lldb/Interpreter/ScriptInterpreterPython.h
vendor/lldb/dist/include/lldb/Symbol/ClangASTType.h
vendor/lldb/dist/include/lldb/Symbol/ObjectFile.h
vendor/lldb/dist/include/lldb/Symbol/SymbolContext.h
vendor/lldb/dist/include/lldb/Target/FileAction.h
vendor/lldb/dist/include/lldb/Target/LanguageRuntime.h
vendor/lldb/dist/include/lldb/Target/ObjCLanguageRuntime.h
vendor/lldb/dist/include/lldb/Target/Platform.h
vendor/lldb/dist/include/lldb/Target/Process.h
vendor/lldb/dist/include/lldb/Utility/AnsiTerminal.h
vendor/lldb/dist/include/lldb/Utility/ProcessStructReader.h
vendor/lldb/dist/include/lldb/lldb-enumerations.h
vendor/lldb/dist/include/lldb/lldb-forward.h
vendor/lldb/dist/source/API/SBInstruction.cpp
vendor/lldb/dist/source/API/SBInstructionList.cpp
vendor/lldb/dist/source/API/SBPlatform.cpp
vendor/lldb/dist/source/API/SBStream.cpp
vendor/lldb/dist/source/API/SBTarget.cpp
vendor/lldb/dist/source/API/SBThread.cpp
vendor/lldb/dist/source/API/SBType.cpp
vendor/lldb/dist/source/API/SBTypeCategory.cpp
vendor/lldb/dist/source/API/SBValue.cpp
vendor/lldb/dist/source/Breakpoint/Breakpoint.cpp
vendor/lldb/dist/source/Breakpoint/BreakpointLocation.cpp
vendor/lldb/dist/source/Breakpoint/StoppointLocation.cpp
vendor/lldb/dist/source/Commands/CommandObjectBreakpoint.cpp
vendor/lldb/dist/source/Commands/CommandObjectDisassemble.cpp
vendor/lldb/dist/source/Commands/CommandObjectExpression.cpp
vendor/lldb/dist/source/Commands/CommandObjectFrame.cpp
vendor/lldb/dist/source/Commands/CommandObjectGUI.cpp
vendor/lldb/dist/source/Commands/CommandObjectHelp.cpp
vendor/lldb/dist/source/Commands/CommandObjectHelp.h
vendor/lldb/dist/source/Commands/CommandObjectLog.cpp
vendor/lldb/dist/source/Commands/CommandObjectMemory.cpp
vendor/lldb/dist/source/Commands/CommandObjectPlatform.cpp
vendor/lldb/dist/source/Commands/CommandObjectProcess.cpp
vendor/lldb/dist/source/Commands/CommandObjectSource.cpp
vendor/lldb/dist/source/Commands/CommandObjectTarget.cpp
vendor/lldb/dist/source/Commands/CommandObjectThread.cpp
vendor/lldb/dist/source/Commands/CommandObjectWatchpoint.cpp
vendor/lldb/dist/source/Core/Address.cpp
vendor/lldb/dist/source/Core/ArchSpec.cpp
vendor/lldb/dist/source/Core/Broadcaster.cpp
vendor/lldb/dist/source/Core/ConnectionMachPort.cpp
vendor/lldb/dist/source/Core/ConnectionSharedMemory.cpp
vendor/lldb/dist/source/Core/ConstString.cpp
vendor/lldb/dist/source/Core/Debugger.cpp
vendor/lldb/dist/source/Core/Disassembler.cpp
vendor/lldb/dist/source/Core/Error.cpp
vendor/lldb/dist/source/Core/IOHandler.cpp
vendor/lldb/dist/source/Core/Log.cpp
vendor/lldb/dist/source/Core/Mangled.cpp
vendor/lldb/dist/source/Core/Module.cpp
vendor/lldb/dist/source/Core/RegisterValue.cpp
vendor/lldb/dist/source/Core/RegularExpression.cpp
vendor/lldb/dist/source/Core/Scalar.cpp
vendor/lldb/dist/source/Core/StreamFile.cpp
vendor/lldb/dist/source/Core/Value.cpp
vendor/lldb/dist/source/Core/ValueObject.cpp
vendor/lldb/dist/source/Core/ValueObjectConstResult.cpp
vendor/lldb/dist/source/Core/ValueObjectDynamicValue.cpp
vendor/lldb/dist/source/Core/ValueObjectMemory.cpp
vendor/lldb/dist/source/Core/ValueObjectSyntheticFilter.cpp
vendor/lldb/dist/source/Core/ValueObjectVariable.cpp
vendor/lldb/dist/source/DataFormatters/CXXFormatterFunctions.cpp
vendor/lldb/dist/source/DataFormatters/FormatManager.cpp
vendor/lldb/dist/source/DataFormatters/LibCxx.cpp
vendor/lldb/dist/source/DataFormatters/LibCxxInitializerList.cpp
vendor/lldb/dist/source/DataFormatters/LibCxxVector.cpp
vendor/lldb/dist/source/DataFormatters/TypeSummary.cpp
vendor/lldb/dist/source/DataFormatters/TypeSynthetic.cpp
vendor/lldb/dist/source/Expression/ASTResultSynthesizer.cpp
vendor/lldb/dist/source/Expression/ASTStructExtractor.cpp
vendor/lldb/dist/source/Expression/ClangExpressionParser.cpp
vendor/lldb/dist/source/Expression/ClangModulesDeclVendor.cpp
vendor/lldb/dist/source/Expression/ExpressionSourceCode.cpp
vendor/lldb/dist/source/Expression/IRExecutionUnit.cpp
vendor/lldb/dist/source/Expression/IRForTarget.cpp
vendor/lldb/dist/source/Expression/Materializer.cpp
vendor/lldb/dist/source/Host/common/Editline.cpp
vendor/lldb/dist/source/Host/common/File.cpp
vendor/lldb/dist/source/Host/common/FileSpec.cpp
vendor/lldb/dist/source/Host/common/Host.cpp
vendor/lldb/dist/source/Host/common/HostInfoBase.cpp
vendor/lldb/dist/source/Host/common/NativeBreakpoint.cpp
vendor/lldb/dist/source/Host/common/NativeBreakpointList.cpp
vendor/lldb/dist/source/Host/common/NativeProcessProtocol.cpp
vendor/lldb/dist/source/Host/common/NativeThreadProtocol.cpp
vendor/lldb/dist/source/Host/common/Socket.cpp
vendor/lldb/dist/source/Host/common/SocketAddress.cpp
vendor/lldb/dist/source/Host/common/SoftwareBreakpoint.cpp
vendor/lldb/dist/source/Host/common/ThreadLauncher.cpp
vendor/lldb/dist/source/Host/posix/ConnectionFileDescriptorPosix.cpp
vendor/lldb/dist/source/Host/posix/PipePosix.cpp
vendor/lldb/dist/source/Interpreter/Args.cpp
vendor/lldb/dist/source/Interpreter/CommandHistory.cpp
vendor/lldb/dist/source/Interpreter/CommandInterpreter.cpp
vendor/lldb/dist/source/Interpreter/CommandObjectRegexCommand.cpp
vendor/lldb/dist/source/Interpreter/OptionGroupPlatform.cpp
vendor/lldb/dist/source/Interpreter/OptionGroupValueObjectDisplay.cpp
vendor/lldb/dist/source/Interpreter/OptionValue.cpp
vendor/lldb/dist/source/Interpreter/OptionValueArray.cpp
vendor/lldb/dist/source/Interpreter/OptionValueFileSpecLIst.cpp
vendor/lldb/dist/source/Interpreter/OptionValuePathMappings.cpp
vendor/lldb/dist/source/Interpreter/OptionValueProperties.cpp
vendor/lldb/dist/source/Interpreter/OptionValueRegex.cpp
vendor/lldb/dist/source/Interpreter/OptionValueSInt64.cpp
vendor/lldb/dist/source/Interpreter/OptionValueUInt64.cpp
vendor/lldb/dist/source/Interpreter/Property.cpp
vendor/lldb/dist/source/Interpreter/ScriptInterpreterPython.cpp
vendor/lldb/dist/source/Plugins/ABI/MacOSX-arm/ABIMacOSX_arm.cpp
vendor/lldb/dist/source/Plugins/ABI/MacOSX-arm64/ABIMacOSX_arm64.cpp
vendor/lldb/dist/source/Plugins/ABI/MacOSX-i386/ABIMacOSX_i386.cpp
vendor/lldb/dist/source/Plugins/ABI/SysV-ppc/ABISysV_ppc.cpp
vendor/lldb/dist/source/Plugins/ABI/SysV-ppc64/ABISysV_ppc64.cpp
vendor/lldb/dist/source/Plugins/ABI/SysV-x86_64/ABISysV_x86_64.cpp
vendor/lldb/dist/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp
vendor/lldb/dist/source/Plugins/DynamicLoader/POSIX-DYLD/DYLDRendezvous.cpp
vendor/lldb/dist/source/Plugins/DynamicLoader/POSIX-DYLD/DYLDRendezvous.h
vendor/lldb/dist/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp
vendor/lldb/dist/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABI/ItaniumABILanguageRuntime.cpp
vendor/lldb/dist/source/Plugins/Platform/POSIX/PlatformPOSIX.cpp
vendor/lldb/dist/source/Plugins/Platform/gdb-server/PlatformRemoteGDBServer.cpp
vendor/lldb/dist/source/Plugins/Platform/gdb-server/PlatformRemoteGDBServer.h
vendor/lldb/dist/source/Plugins/Process/FreeBSD/ProcessMonitor.cpp
vendor/lldb/dist/source/Plugins/Process/FreeBSD/ProcessMonitor.h
vendor/lldb/dist/source/Plugins/Process/POSIX/POSIXStopInfo.cpp
vendor/lldb/dist/source/Plugins/Process/POSIX/POSIXStopInfo.h
vendor/lldb/dist/source/Plugins/Process/POSIX/ProcessMessage.cpp
vendor/lldb/dist/source/Plugins/Process/POSIX/ProcessMessage.h
vendor/lldb/dist/source/Plugins/Process/POSIX/ProcessPOSIX.cpp
vendor/lldb/dist/source/Plugins/Process/POSIX/RegisterContextPOSIXProcessMonitor_powerpc.cpp
vendor/lldb/dist/source/Plugins/Process/POSIX/RegisterContextPOSIXProcessMonitor_powerpc.h
vendor/lldb/dist/source/Plugins/Process/Utility/DynamicRegisterInfo.cpp
vendor/lldb/dist/source/Plugins/Process/Utility/RegisterContextFreeBSD_powerpc.cpp
vendor/lldb/dist/source/Plugins/Process/Utility/RegisterContextLLDB.cpp
vendor/lldb/dist/source/Plugins/Process/Utility/RegisterContextLinux_i386.cpp
vendor/lldb/dist/source/Plugins/Process/Utility/RegisterContextLinux_i386.h
vendor/lldb/dist/source/Plugins/Process/Utility/RegisterContextLinux_x86_64.cpp
vendor/lldb/dist/source/Plugins/Process/Utility/RegisterContextLinux_x86_64.h
vendor/lldb/dist/source/Plugins/Process/Utility/RegisterContextPOSIX_powerpc.cpp
vendor/lldb/dist/source/Plugins/Process/Utility/RegisterContextPOSIX_powerpc.h
vendor/lldb/dist/source/Plugins/Process/Utility/RegisterContext_powerpc.h
vendor/lldb/dist/source/Plugins/Process/Utility/RegisterInfoInterface.h
vendor/lldb/dist/source/Plugins/Process/Utility/RegisterInfos_powerpc.h
vendor/lldb/dist/source/Plugins/Process/Utility/lldb-x86-register-enums.h
vendor/lldb/dist/source/Plugins/Process/elf-core/ProcessElfCore.cpp
vendor/lldb/dist/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_powerpc.cpp
vendor/lldb/dist/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_powerpc.h
vendor/lldb/dist/source/Plugins/Process/elf-core/ThreadElfCore.cpp
vendor/lldb/dist/source/Plugins/Process/elf-core/ThreadElfCore.h
vendor/lldb/dist/source/Plugins/Process/gdb-remote/GDBRemoteCommunication.cpp
vendor/lldb/dist/source/Plugins/Process/gdb-remote/GDBRemoteCommunication.h
vendor/lldb/dist/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
vendor/lldb/dist/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h
vendor/lldb/dist/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServer.cpp
vendor/lldb/dist/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServer.h
vendor/lldb/dist/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
vendor/lldb/dist/source/Plugins/SymbolFile/DWARF/DWARFCompileUnit.cpp
vendor/lldb/dist/source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.cpp
vendor/lldb/dist/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
vendor/lldb/dist/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h
vendor/lldb/dist/source/Plugins/UnwindAssembly/InstEmulation/UnwindAssemblyInstEmulation.cpp
vendor/lldb/dist/source/Symbol/ClangASTContext.cpp
vendor/lldb/dist/source/Symbol/ClangASTType.cpp
vendor/lldb/dist/source/Symbol/CompactUnwindInfo.cpp
vendor/lldb/dist/source/Symbol/SymbolContext.cpp
vendor/lldb/dist/source/Symbol/Type.cpp
vendor/lldb/dist/source/Symbol/Variable.cpp
vendor/lldb/dist/source/Target/ExecutionContext.cpp
vendor/lldb/dist/source/Target/LanguageRuntime.cpp
vendor/lldb/dist/source/Target/ObjCLanguageRuntime.cpp
vendor/lldb/dist/source/Target/Platform.cpp
vendor/lldb/dist/source/Target/Process.cpp
vendor/lldb/dist/source/Target/ProcessLaunchInfo.cpp
vendor/lldb/dist/source/Target/StackFrame.cpp
vendor/lldb/dist/source/Target/StopInfo.cpp
vendor/lldb/dist/source/Target/TargetList.cpp
vendor/lldb/dist/source/Target/Thread.cpp
vendor/lldb/dist/source/Target/ThreadPlanTracer.cpp
vendor/lldb/dist/source/Target/UnixSignals.cpp
vendor/lldb/dist/source/Utility/StringExtractorGDBRemote.cpp
vendor/lldb/dist/source/Utility/StringExtractorGDBRemote.h
vendor/lldb/dist/source/Utility/UriParser.cpp
vendor/lldb/dist/source/Utility/UriParser.h
vendor/lldb/dist/tools/compact-unwind/compact-unwind-dumper.c
vendor/lldb/dist/tools/lldb-mi/Driver.cpp
vendor/lldb/dist/tools/lldb-mi/Driver.h
vendor/lldb/dist/tools/lldb-mi/MICmdArgValConsume.cpp
vendor/lldb/dist/tools/lldb-mi/MICmdCmd.h
vendor/lldb/dist/tools/lldb-mi/MICmdCmdBreak.cpp
vendor/lldb/dist/tools/lldb-mi/MICmdCmdBreak.h
vendor/lldb/dist/tools/lldb-mi/MICmdCmdData.cpp
vendor/lldb/dist/tools/lldb-mi/MICmdCmdData.h
vendor/lldb/dist/tools/lldb-mi/MICmdCmdExec.cpp
vendor/lldb/dist/tools/lldb-mi/MICmdCmdExec.h
vendor/lldb/dist/tools/lldb-mi/MICmdCmdFile.cpp
vendor/lldb/dist/tools/lldb-mi/MICmdCmdGdbInfo.cpp
vendor/lldb/dist/tools/lldb-mi/MICmdCmdMiscellanous.cpp
vendor/lldb/dist/tools/lldb-mi/MICmdCmdMiscellanous.h
vendor/lldb/dist/tools/lldb-mi/MICmdCmdStack.cpp
vendor/lldb/dist/tools/lldb-mi/MICmdCmdStack.h
vendor/lldb/dist/tools/lldb-mi/MICmdCmdTarget.cpp
vendor/lldb/dist/tools/lldb-mi/MICmdCmdThread.cpp
vendor/lldb/dist/tools/lldb-mi/MICmdCmdVar.cpp
vendor/lldb/dist/tools/lldb-mi/MICmdCmdVar.h
vendor/lldb/dist/tools/lldb-mi/MICmnLLDBBroadcaster.h
vendor/lldb/dist/tools/lldb-mi/MICmnLLDBDebugSessionInfo.cpp
vendor/lldb/dist/tools/lldb-mi/MICmnLLDBDebugSessionInfo.h
vendor/lldb/dist/tools/lldb-mi/MICmnLLDBDebugSessionInfoVarObj.h
vendor/lldb/dist/tools/lldb-mi/MICmnLLDBDebugger.cpp
vendor/lldb/dist/tools/lldb-mi/MICmnLLDBDebugger.h
vendor/lldb/dist/tools/lldb-mi/MICmnLLDBDebuggerHandleEvents.cpp
vendor/lldb/dist/tools/lldb-mi/MICmnLLDBProxySBValue.cpp
vendor/lldb/dist/tools/lldb-mi/MICmnLLDBProxySBValue.h
vendor/lldb/dist/tools/lldb-mi/MICmnLLDBUtilSBValue.cpp
vendor/lldb/dist/tools/lldb-mi/MICmnLLDBUtilSBValue.h
vendor/lldb/dist/tools/lldb-mi/MICmnLog.cpp
vendor/lldb/dist/tools/lldb-mi/MICmnResources.cpp
vendor/lldb/dist/tools/lldb-mi/MICmnResources.h
vendor/lldb/dist/tools/lldb-mi/MIDriver.cpp
vendor/lldb/dist/tools/lldb-mi/MIDriverBase.cpp
vendor/lldb/dist/tools/lldb-mi/MIDriverBase.h
vendor/lldb/dist/tools/lldb-mi/MIDriverMain.cpp
vendor/lldb/dist/tools/lldb-mi/MIDriverMgr.cpp
vendor/lldb/dist/tools/lldb-mi/MIDriverMgr.h
vendor/lldb/dist/tools/lldb-mi/MIReadMe.txt
Added: vendor/lldb/dist/include/lldb/API/SBLaunchInfo.h
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ vendor/lldb/dist/include/lldb/API/SBLaunchInfo.h Mon Feb 9 01:44:09 2015 (r278425)
@@ -0,0 +1,186 @@
+//===-- SBLaunchInfo.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_SBLaunchInfo_h_
+#define LLDB_SBLaunchInfo_h_
+
+#include "lldb/API/SBDefines.h"
+
+namespace lldb {
+
+class SBPlatform;
+class SBTarget;
+
+class SBLaunchInfo
+{
+public:
+ SBLaunchInfo (const char **argv);
+
+ ~SBLaunchInfo();
+
+ lldb::pid_t
+ GetProcessID();
+
+ uint32_t
+ GetUserID();
+
+ uint32_t
+ GetGroupID();
+
+ bool
+ UserIDIsValid ();
+
+ bool
+ GroupIDIsValid ();
+
+ void
+ SetUserID (uint32_t uid);
+
+ void
+ SetGroupID (uint32_t gid);
+
+ SBFileSpec
+ GetExecutableFile ();
+
+ //----------------------------------------------------------------------
+ /// Set the executable file that will be used to launch the process and
+ /// optionally set it as the first argument in the argument vector.
+ ///
+ /// This only needs to be specified if clients wish to carefully control
+ /// the exact path will be used to launch a binary. If you create a
+ /// target with a symlink, that symlink will get resolved in the target
+ /// and the resolved path will get used to launch the process. Calling
+ /// this function can help you still launch your process using the
+ /// path of your choice.
+ ///
+ /// If this function is not called prior to launching with
+ /// SBTarget::Launch(...), the target will use the resolved executable
+ /// path that was used to create the target.
+ ///
+ /// @param[in] exe_file
+ /// The override path to use when launching the executable.
+ ///
+ /// @param[in] add_as_first_arg
+ /// If true, then the path will be inserted into the argument vector
+ /// prior to launching. Otherwise the argument vector will be left
+ /// alone.
+ //----------------------------------------------------------------------
+ void
+ SetExecutableFile (SBFileSpec exe_file, bool add_as_first_arg);
+
+
+ //----------------------------------------------------------------------
+ /// Get the listener that will be used to receive process events.
+ ///
+ /// If no listener has been set via a call to
+ /// SBLaunchInfo::SetListener(), then an invalid SBListener will be
+ /// returned (SBListener::IsValid() will return false). If a listener
+ /// has been set, then the valid listener object will be returned.
+ //----------------------------------------------------------------------
+ SBListener
+ GetListener ();
+
+ //----------------------------------------------------------------------
+ /// Set the listener that will be used to receive process events.
+ ///
+ /// By default the SBDebugger, which has a listener, that the SBTarget
+ /// belongs to will listen for the process events. Calling this function
+ /// allows a different listener to be used to listen for process events.
+ //----------------------------------------------------------------------
+ void
+ SetListener (SBListener &listener);
+
+ uint32_t
+ GetNumArguments ();
+
+ const char *
+ GetArgumentAtIndex (uint32_t idx);
+
+ void
+ SetArguments (const char **argv, bool append);
+
+ uint32_t
+ GetNumEnvironmentEntries ();
+
+ const char *
+ GetEnvironmentEntryAtIndex (uint32_t idx);
+
+ void
+ SetEnvironmentEntries (const char **envp, bool append);
+
+ void
+ Clear ();
+
+ const char *
+ GetWorkingDirectory () const;
+
+ void
+ SetWorkingDirectory (const char *working_dir);
+
+ uint32_t
+ GetLaunchFlags ();
+
+ void
+ SetLaunchFlags (uint32_t flags);
+
+ const char *
+ GetProcessPluginName ();
+
+ void
+ SetProcessPluginName (const char *plugin_name);
+
+ const char *
+ GetShell ();
+
+ void
+ SetShell (const char * path);
+
+ uint32_t
+ GetResumeCount ();
+
+ void
+ SetResumeCount (uint32_t c);
+
+ bool
+ AddCloseFileAction (int fd);
+
+ bool
+ AddDuplicateFileAction (int fd, int dup_fd);
+
+ bool
+ AddOpenFileAction (int fd, const char *path, bool read, bool write);
+
+ bool
+ AddSuppressFileAction (int fd, bool read, bool write);
+
+ void
+ SetLaunchEventData (const char *data);
+
+ const char *
+ GetLaunchEventData () const;
+
+ bool
+ GetDetachOnError() const;
+
+ void
+ SetDetachOnError(bool enable);
+
+protected:
+ friend class SBPlatform;
+ friend class SBTarget;
+
+ lldb_private::ProcessLaunchInfo &
+ ref ();
+
+ ProcessLaunchInfoSP m_opaque_sp;
+};
+
+} // namespace lldb
+
+#endif // LLDB_SBLaunchInfo_h_
Modified: vendor/lldb/dist/include/lldb/API/SBPlatform.h
==============================================================================
--- vendor/lldb/dist/include/lldb/API/SBPlatform.h Sun Feb 8 23:09:01 2015 (r278424)
+++ vendor/lldb/dist/include/lldb/API/SBPlatform.h Mon Feb 9 01:44:09 2015 (r278425)
@@ -12,11 +12,15 @@
#include "lldb/API/SBDefines.h"
+#include <functional>
+
struct PlatformConnectOptions;
struct PlatformShellCommand;
namespace lldb {
+ class SBLaunchInfo;
+
class SBPlatformConnectOptions
{
public:
@@ -171,6 +175,12 @@ namespace lldb {
Run (SBPlatformShellCommand &shell_command);
SBError
+ Launch (SBLaunchInfo &launch_info);
+
+ SBError
+ Kill (const lldb::pid_t pid);
+
+ SBError
MakeDirectory (const char *path, uint32_t file_permissions = eFilePermissionsDirectoryDefault);
uint32_t
@@ -190,6 +200,9 @@ namespace lldb {
void
SetSP (const lldb::PlatformSP& platform_sp);
+ SBError
+ ExecuteConnected (const std::function<lldb_private::Error(const lldb::PlatformSP&)>& func);
+
lldb::PlatformSP m_opaque_sp;
};
Modified: vendor/lldb/dist/include/lldb/API/SBTarget.h
==============================================================================
--- vendor/lldb/dist/include/lldb/API/SBTarget.h Sun Feb 8 23:09:01 2015 (r278424)
+++ vendor/lldb/dist/include/lldb/API/SBTarget.h Mon Feb 9 01:44:09 2015 (r278425)
@@ -15,6 +15,7 @@
#include "lldb/API/SBBroadcaster.h"
#include "lldb/API/SBFileSpec.h"
#include "lldb/API/SBFileSpecList.h"
+#include "lldb/API/SBLaunchInfo.h"
#include "lldb/API/SBSymbolContextList.h"
#include "lldb/API/SBType.h"
#include "lldb/API/SBValue.h"
@@ -24,166 +25,6 @@ namespace lldb {
class SBPlatform;
-class SBLaunchInfo
-{
-public:
- SBLaunchInfo (const char **argv);
-
- ~SBLaunchInfo();
-
- uint32_t
- GetUserID();
-
- uint32_t
- GetGroupID();
-
- bool
- UserIDIsValid ();
-
- bool
- GroupIDIsValid ();
-
- void
- SetUserID (uint32_t uid);
-
- void
- SetGroupID (uint32_t gid);
-
- SBFileSpec
- GetExecutableFile ();
-
- //----------------------------------------------------------------------
- /// Set the executable file that will be used to launch the process and
- /// optionally set it as the first argument in the argument vector.
- ///
- /// This only needs to be specified if clients wish to carefully control
- /// the exact path will be used to launch a binary. If you create a
- /// target with a symlink, that symlink will get resolved in the target
- /// and the resolved path will get used to launch the process. Calling
- /// this function can help you still launch your process using the
- /// path of your choice.
- ///
- /// If this function is not called prior to launching with
- /// SBTarget::Launch(...), the target will use the resolved executable
- /// path that was used to create the target.
- ///
- /// @param[in] exe_file
- /// The override path to use when launching the executable.
- ///
- /// @param[in] add_as_first_arg
- /// If true, then the path will be inserted into the argument vector
- /// prior to launching. Otherwise the argument vector will be left
- /// alone.
- //----------------------------------------------------------------------
- void
- SetExecutableFile (SBFileSpec exe_file, bool add_as_first_arg);
-
-
- //----------------------------------------------------------------------
- /// Get the listener that will be used to receive process events.
- ///
- /// If no listener has been set via a call to
- /// SBLaunchInfo::SetListener(), then an invalid SBListener will be
- /// returned (SBListener::IsValid() will return false). If a listener
- /// has been set, then the valid listener object will be returned.
- //----------------------------------------------------------------------
- SBListener
- GetListener ();
-
- //----------------------------------------------------------------------
- /// Set the listener that will be used to receive process events.
- ///
- /// By default the SBDebugger, which has a listener, that the SBTarget
- /// belongs to will listen for the process events. Calling this function
- /// allows a different listener to be used to listen for process events.
- //----------------------------------------------------------------------
- void
- SetListener (SBListener &listener);
-
- uint32_t
- GetNumArguments ();
-
- const char *
- GetArgumentAtIndex (uint32_t idx);
-
- void
- SetArguments (const char **argv, bool append);
-
- uint32_t
- GetNumEnvironmentEntries ();
-
- const char *
- GetEnvironmentEntryAtIndex (uint32_t idx);
-
- void
- SetEnvironmentEntries (const char **envp, bool append);
-
- void
- Clear ();
-
- const char *
- GetWorkingDirectory () const;
-
- void
- SetWorkingDirectory (const char *working_dir);
-
- uint32_t
- GetLaunchFlags ();
-
- void
- SetLaunchFlags (uint32_t flags);
-
- const char *
- GetProcessPluginName ();
-
- void
- SetProcessPluginName (const char *plugin_name);
-
- const char *
- GetShell ();
-
- void
- SetShell (const char * path);
-
- uint32_t
- GetResumeCount ();
-
- void
- SetResumeCount (uint32_t c);
-
- bool
- AddCloseFileAction (int fd);
-
- bool
- AddDuplicateFileAction (int fd, int dup_fd);
-
- bool
- AddOpenFileAction (int fd, const char *path, bool read, bool write);
-
- bool
- AddSuppressFileAction (int fd, bool read, bool write);
-
- void
- SetLaunchEventData (const char *data);
-
- const char *
- GetLaunchEventData () const;
-
- bool
- GetDetachOnError() const;
-
- void
- SetDetachOnError(bool enable);
-
-protected:
- friend class SBTarget;
-
- lldb_private::ProcessLaunchInfo &
- ref ();
-
- ProcessLaunchInfoSP m_opaque_sp;
-};
-
class SBAttachInfo
{
public:
Modified: vendor/lldb/dist/include/lldb/API/SBType.h
==============================================================================
--- vendor/lldb/dist/include/lldb/API/SBType.h Sun Feb 8 23:09:01 2015 (r278424)
+++ vendor/lldb/dist/include/lldb/API/SBType.h Mon Feb 9 01:44:09 2015 (r278425)
@@ -153,6 +153,9 @@ public:
IsArrayType ();
bool
+ IsVectorType ();
+
+ bool
IsTypedefType ();
lldb::SBType
@@ -175,6 +178,9 @@ public:
lldb::SBType
GetArrayElementType ();
+
+ lldb::SBType
+ GetVectorElementType ();
lldb::SBType
GetCanonicalType();
Modified: vendor/lldb/dist/include/lldb/Breakpoint/Breakpoint.h
==============================================================================
--- vendor/lldb/dist/include/lldb/Breakpoint/Breakpoint.h Sun Feb 8 23:09:01 2015 (r278424)
+++ vendor/lldb/dist/include/lldb/Breakpoint/Breakpoint.h Mon Feb 9 01:44:09 2015 (r278425)
@@ -714,6 +714,19 @@ protected:
bool
IgnoreCountShouldStop ();
+ void
+ IncrementHitCount()
+ {
+ m_hit_count++;
+ }
+
+ void
+ DecrementHitCount()
+ {
+ assert (m_hit_count > 0);
+ m_hit_count--;
+ }
+
private:
// This one should only be used by Target to copy breakpoints from target to target - primarily from the dummy
// target to prime new targets.
@@ -733,7 +746,10 @@ private:
BreakpointLocationList m_locations; // The list of locations currently found for this breakpoint.
std::string m_kind_description;
bool m_resolve_indirect_symbols;
-
+ uint32_t m_hit_count; // Number of times this breakpoint/watchpoint has been hit. This is kept
+ // separately from the locations hit counts, since locations can go away when
+ // their backing library gets unloaded, and we would lose hit counts.
+
void
SendBreakpointChangedEvent (lldb::BreakpointEventType eventKind);
Modified: vendor/lldb/dist/include/lldb/Breakpoint/BreakpointLocation.h
==============================================================================
--- vendor/lldb/dist/include/lldb/Breakpoint/BreakpointLocation.h Sun Feb 8 23:09:01 2015 (r278424)
+++ vendor/lldb/dist/include/lldb/Breakpoint/BreakpointLocation.h Mon Feb 9 01:44:09 2015 (r278425)
@@ -390,6 +390,7 @@ protected:
friend class BreakpointSite;
friend class BreakpointLocationList;
friend class Process;
+ friend class StopInfoBreakpoint;
//------------------------------------------------------------------
/// Set the breakpoint site for this location to \a bp_site_sp.
@@ -417,6 +418,9 @@ private:
void
BumpHitCount();
+ void
+ UndoBumpHitCount();
+
//------------------------------------------------------------------
// Constructors and Destructors
Modified: vendor/lldb/dist/include/lldb/Breakpoint/StoppointLocation.h
==============================================================================
--- vendor/lldb/dist/include/lldb/Breakpoint/StoppointLocation.h Sun Feb 8 23:09:01 2015 (r278424)
+++ vendor/lldb/dist/include/lldb/Breakpoint/StoppointLocation.h Mon Feb 9 01:44:09 2015 (r278425)
@@ -134,6 +134,9 @@ protected:
++m_hit_count;
}
+ void
+ DecrementHitCount ();
+
private:
//------------------------------------------------------------------
// For StoppointLocation only
Modified: vendor/lldb/dist/include/lldb/Core/ArchSpec.h
==============================================================================
--- vendor/lldb/dist/include/lldb/Core/ArchSpec.h Sun Feb 8 23:09:01 2015 (r278424)
+++ vendor/lldb/dist/include/lldb/Core/ArchSpec.h Mon Feb 9 01:44:09 2015 (r278425)
@@ -277,6 +277,21 @@ public:
}
//------------------------------------------------------------------
+ /// Merges fields from another ArchSpec into this ArchSpec.
+ ///
+ /// This will use the supplied ArchSpec to fill in any fields of
+ /// the triple in this ArchSpec which were unspecified. This can
+ /// be used to refine a generic ArchSpec with a more specific one.
+ /// For example, if this ArchSpec's triple is something like
+ /// i386-unknown-unknown-unknown, and we have a triple which is
+ /// x64-pc-windows-msvc, then merging that triple into this one
+ /// will result in the triple i386-pc-windows-msvc.
+ ///
+ //------------------------------------------------------------------
+ void
+ MergeFrom(const ArchSpec &other);
+
+ //------------------------------------------------------------------
/// Sets this ArchSpec according to the given architecture name.
///
/// The architecture name can be one of the generic system default
Modified: vendor/lldb/dist/include/lldb/Core/Broadcaster.h
==============================================================================
--- vendor/lldb/dist/include/lldb/Core/Broadcaster.h Sun Feb 8 23:09:01 2015 (r278424)
+++ vendor/lldb/dist/include/lldb/Core/Broadcaster.h Mon Feb 9 01:44:09 2015 (r278425)
@@ -419,12 +419,7 @@ public:
HijackBroadcaster (Listener *listener, uint32_t event_mask = UINT32_MAX);
bool
- IsHijackedForEvent (uint32_t event_mask)
- {
- if (m_hijacking_listeners.size() > 0)
- return (event_mask & m_hijacking_masks.back()) != 0;
- return false;
- }
+ IsHijackedForEvent (uint32_t event_mask);
//------------------------------------------------------------------
/// Restore the state of the Broadcaster from a previous hijack attempt.
Modified: vendor/lldb/dist/include/lldb/Core/Connection.h
==============================================================================
--- vendor/lldb/dist/include/lldb/Core/Connection.h Sun Feb 8 23:09:01 2015 (r278424)
+++ vendor/lldb/dist/include/lldb/Core/Connection.h Mon Feb 9 01:44:09 2015 (r278425)
@@ -12,6 +12,7 @@
// C Includes
// C++ Includes
+#include <string>
// Other libraries and framework includes
// Project includes
#include "lldb/lldb-private.h"
@@ -133,13 +134,13 @@ public:
///
/// Subclasses must override this function.
///
- /// @param[in] src
- /// A source buffer that must be at least \a src_len bytes
+ /// @param[in] dst
+ /// A desination buffer that must be at least \a dst_len bytes
/// long.
///
- /// @param[in] src_len
+ /// @param[in] dst_len
/// The number of bytes to attempt to write, and also the
- /// number of bytes are currently available in \a src.
+ /// number of bytes are currently available in \a dst.
///
/// @param[out] error_ptr
/// A pointer to an error object that should be given an
@@ -150,7 +151,18 @@ public:
/// The number of bytes actually Written.
//------------------------------------------------------------------
virtual size_t
- Write (const void *buffer, size_t length, lldb::ConnectionStatus &status, Error *error_ptr) = 0;
+ Write (const void *dst, size_t dst_len, lldb::ConnectionStatus &status, Error *error_ptr) = 0;
+
+ //------------------------------------------------------------------
+ /// Returns a URI that describes this connection object
+ ///
+ /// Subclasses may override this function.
+ ///
+ /// @return
+ /// Returns URI or an empty string if disconnecteds
+ //------------------------------------------------------------------
+ virtual std::string
+ GetURI() = 0;
private:
//------------------------------------------------------------------
Modified: vendor/lldb/dist/include/lldb/Core/ConnectionMachPort.h
==============================================================================
--- vendor/lldb/dist/include/lldb/Core/ConnectionMachPort.h Sun Feb 8 23:09:01 2015 (r278424)
+++ vendor/lldb/dist/include/lldb/Core/ConnectionMachPort.h Mon Feb 9 01:44:09 2015 (r278425)
@@ -56,6 +56,9 @@ public:
lldb::ConnectionStatus &status,
lldb_private::Error *error_ptr);
+ virtual std::string
+ GetURI();
+
lldb::ConnectionStatus
BootstrapCheckIn (const char *port_name,
lldb_private::Error *error_ptr);
@@ -83,6 +86,7 @@ protected:
mach_port_t m_port;
private:
+ std::string m_uri;
DISALLOW_COPY_AND_ASSIGN (ConnectionMachPort);
Modified: vendor/lldb/dist/include/lldb/Core/ConnectionSharedMemory.h
==============================================================================
--- vendor/lldb/dist/include/lldb/Core/ConnectionSharedMemory.h Sun Feb 8 23:09:01 2015 (r278424)
+++ vendor/lldb/dist/include/lldb/Core/ConnectionSharedMemory.h Mon Feb 9 01:44:09 2015 (r278425)
@@ -53,6 +53,9 @@ public:
virtual size_t
Write (const void *src, size_t src_len, lldb::ConnectionStatus &status, Error *error_ptr);
+ virtual std::string
+ GetURI();
+
lldb::ConnectionStatus
Open (bool create, const char *name, size_t size, Error *error_ptr);
Modified: vendor/lldb/dist/include/lldb/Core/Debugger.h
==============================================================================
--- vendor/lldb/dist/include/lldb/Core/Debugger.h Sun Feb 8 23:09:01 2015 (r278424)
+++ vendor/lldb/dist/include/lldb/Core/Debugger.h Mon Feb 9 01:44:09 2015 (r278425)
@@ -19,6 +19,7 @@
#include "lldb/lldb-public.h"
#include "lldb/Core/Broadcaster.h"
#include "lldb/Core/Communication.h"
+#include "lldb/Core/FormatEntity.h"
#include "lldb/Core/IOHandler.h"
#include "lldb/Core/Listener.h"
#include "lldb/Core/SourceManager.h"
@@ -158,8 +159,6 @@ public:
// To get the target's source manager, call GetSourceManager on the target instead.
SourceManager &
GetSourceManager ();
-
-public:
lldb::TargetSP
GetSelectedTarget ()
@@ -224,6 +223,12 @@ public:
ConstString
GetTopIOHandlerControlSequence(char ch);
+ const char *
+ GetIOHandlerCommandPrefix();
+
+ const char *
+ GetIOHandlerHelpPrologue();
+
bool
HideTopIOHandler();
@@ -243,15 +248,7 @@ public:
GetDebuggerAtIndex (size_t index);
static bool
- FormatPrompt (const char *format,
- const SymbolContext *sc,
- const ExecutionContext *exe_ctx,
- const Address *addr,
- Stream &s,
- ValueObject* valobj = NULL);
-
- static bool
- FormatDisassemblerAddress (const char *format,
+ FormatDisassemblerAddress (const FormatEntity::Entry *format,
const SymbolContext *sc,
const SymbolContext *prev_sc,
const ExecutionContext *exe_ctx,
@@ -296,13 +293,13 @@ public:
bool
GetAutoConfirm () const;
- const char *
+ const FormatEntity::Entry *
GetDisassemblyFormat() const;
- const char *
+ const FormatEntity::Entry *
GetFrameFormat() const;
- const char *
+ const FormatEntity::Entry *
GetThreadFormat() const;
lldb::ScriptLanguage
@@ -352,7 +349,6 @@ public:
bool
GetNotifyVoid () const;
-
const ConstString &
GetInstanceName()
Modified: vendor/lldb/dist/include/lldb/Core/Disassembler.h
==============================================================================
--- vendor/lldb/dist/include/lldb/Core/Disassembler.h Sun Feb 8 23:09:01 2015 (r278424)
+++ vendor/lldb/dist/include/lldb/Core/Disassembler.h Mon Feb 9 01:44:09 2015 (r278425)
@@ -117,7 +117,7 @@ public:
/// the InstructionList.
/// Only needed if show_address is true.
///
- /// @param[in] disassembly_addr_format_spec
+ /// @param[in] disassembly_addr_format
/// The format specification for how addresses are printed.
/// Only needed if show_address is true.
//------------------------------------------------------------------
@@ -130,7 +130,7 @@ public:
const ExecutionContext* exe_ctx,
const SymbolContext *sym_ctx,
const SymbolContext *prev_sym_ctx,
- const char *disassembly_addr_format_spec);
+ const FormatEntity::Entry *disassembly_addr_format);
virtual bool
DoesBranch () = 0;
@@ -457,7 +457,7 @@ protected:
//------------------------------------------------------------------
// Classes that inherit from Disassembler can see and modify these
//------------------------------------------------------------------
- const ArchSpec m_arch;
+ ArchSpec m_arch;
InstructionList m_instruction_list;
lldb::addr_t m_base_addr;
std::string m_flavor;
Added: vendor/lldb/dist/include/lldb/Core/FormatEntity.h
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ vendor/lldb/dist/include/lldb/Core/FormatEntity.h Mon Feb 9 01:44:09 2015 (r278425)
@@ -0,0 +1,260 @@
+//===-- FormatEntity.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_FormatEntity_h_
+#define liblldb_FormatEntity_h_
+#if defined(__cplusplus)
+
+#include <string>
+#include <vector>
+
+#include "lldb/lldb-private.h"
+#include "lldb/Core/Error.h"
+
+namespace llvm
+{
+ class StringRef;
+}
+
+namespace lldb_private
+{
+ class FormatEntity
+ {
+ public:
+ struct Entry
+ {
+ enum class Type {
+ Invalid,
+ ParentNumber,
+ ParentString,
+ InsertString,
+ Root,
+ String,
+ Scope,
+ Variable,
+ VariableSynthetic,
+ ScriptVariable,
+ ScriptVariableSynthetic,
+ AddressLoad,
+ AddressFile,
+ AddressLoadOrFile,
+ ProcessID,
+ ProcessFile,
+ ScriptProcess,
+ ThreadID,
+ ThreadProtocolID,
+ ThreadIndexID,
+ ThreadName,
+ ThreadQueue,
+ ThreadStopReason,
+ ThreadReturnValue,
+ ThreadCompletedExpression,
+ ScriptThread,
+ ThreadInfo,
+ TargetArch,
+ ScriptTarget,
+ ModuleFile,
+ File,
+ FrameIndex,
+ FrameRegisterPC,
+ FrameRegisterSP,
+ FrameRegisterFP,
+ FrameRegisterFlags,
+ FrameRegisterByName,
+ ScriptFrame,
+ FunctionID,
+ FunctionDidChange,
+ FunctionInitialFunction,
+ FunctionName,
+ FunctionNameWithArgs,
+ FunctionNameNoArgs,
+ FunctionAddrOffset,
+ FunctionAddrOffsetConcrete,
+ FunctionLineOffset,
+ FunctionPCOffset,
+ LineEntryFile,
+ LineEntryLineNumber,
+ LineEntryStartAddress,
+ LineEntryEndAddress,
+ CurrentPCArrow
+ };
+
+ enum FormatType
+ {
+ None,
+ UInt32,
+ UInt64,
+ CString
+ };
+
+ struct Definition
+ {
+ const char *name;
+ const char *string; // Insert this exact string into the output
+ Entry::Type type;
+ FormatType format_type; // uint32_t, uint64_t, cstr, or anything that can be formatted by printf or lldb::Format
+ uint64_t data;
+ uint32_t num_children;
+ Definition *children; // An array of "num_children" Definition entries,
+ bool keep_separator;
+ };
+
+ Entry (Type t = Type::Invalid,
+ const char *s = NULL,
+ const char *f = NULL) :
+ string (s ? s : ""),
+ printf_format (f ? f : ""),
+ children (),
+ definition (NULL),
+ type (t),
+ fmt (lldb::eFormatDefault),
+ number (0),
+ deref (false)
+ {
+ }
+
+ Entry (llvm::StringRef s);
+ Entry (char ch);
+
+ void
+ AppendChar (char ch);
+
+ void
+ AppendText (const llvm::StringRef &s);
+
+ void
+ AppendText (const char *cstr);
+
+ void
+ AppendEntry (const Entry &&entry)
+ {
+ children.push_back(entry);
+ }
+
+ void
+ Clear ()
+ {
+ string.clear();
+ printf_format.clear();
+ children.clear();
+ definition = NULL;
+ type = Type::Invalid;
+ fmt = lldb::eFormatDefault;
+ number = 0;
+ deref = false;
+ }
+
+ static const char *
+ TypeToCString (Type t);
+
+ void
+ Dump (Stream &s, int depth = 0) const;
+
+ bool
+ operator == (const Entry &rhs) const
+ {
+ if (string != rhs.string)
+ return false;
+ if (printf_format != rhs.printf_format)
+ return false;
+ const size_t n = children.size();
+ const size_t m = rhs.children.size();
+ for (size_t i=0; i < std::min<size_t>(n, m); ++i)
+ {
+ if (!(children[i] == rhs.children[i]))
+ return false;
+ }
+ if (children != rhs.children)
+ return false;
+ if (definition != rhs.definition)
+ return false;
+ if (type != rhs.type)
+ return false;
+ if (fmt != rhs.fmt)
+ return false;
+ if (deref != rhs.deref)
+ return false;
+ return true;
+ }
+
+ std::string string;
+ std::string printf_format;
+ std::vector<Entry> children;
+ Definition *definition;
+ Type type;
+ lldb::Format fmt;
+ lldb::addr_t number;
+ bool deref;
+ };
+
+ static bool
+ Format (const Entry &entry,
+ Stream &s,
+ const SymbolContext *sc,
+ const ExecutionContext *exe_ctx,
+ const Address *addr,
+ ValueObject* valobj,
+ bool function_changed,
+ bool initial_function);
+
+ static bool
+ FormatStringRef (const llvm::StringRef &format,
+ Stream &s,
+ const SymbolContext *sc,
+ const ExecutionContext *exe_ctx,
+ const Address *addr,
+ ValueObject* valobj,
+ bool function_changed,
+ bool initial_function);
+
+ static bool
+ FormatCString (const char *format,
+ Stream &s,
+ const SymbolContext *sc,
+ const ExecutionContext *exe_ctx,
+ const Address *addr,
+ ValueObject* valobj,
+ bool function_changed,
+ bool initial_function);
+
+ static Error
+ Parse (const llvm::StringRef &format, Entry &entry);
+
+ static Error
+ ExtractVariableInfo (llvm::StringRef &format_str,
+ llvm::StringRef &variable_name,
+ llvm::StringRef &variable_format);
+
+ static size_t
+ AutoComplete (const char *s,
+ int match_start_point,
+ int max_return_elements,
+ bool &word_complete,
+ StringList &matches);
+
+ //----------------------------------------------------------------------
+ // Format the current elements into the stream \a s.
+ //
+ // The root element will be stripped off and the format str passed in
+ // will be either an empty string (print a description of this object),
+ // or contain a . separated series like a domain name that identifies
+ // further sub elements to display.
+ //----------------------------------------------------------------------
+ static bool
+ FormatFileSpec (const FileSpec &file, Stream &s, llvm::StringRef elements, llvm::StringRef element_format);
+ protected:
+
+ static Error
+ ParseInternal (llvm::StringRef &format, Entry &parent_entry, uint32_t depth);
+
+ };
+
+}
+#endif // #if defined(__cplusplus)
+#endif // liblldb_FormatEntity_h_
Modified: vendor/lldb/dist/include/lldb/Core/Mangled.h
==============================================================================
--- vendor/lldb/dist/include/lldb/Core/Mangled.h Sun Feb 8 23:09:01 2015 (r278424)
+++ vendor/lldb/dist/include/lldb/Core/Mangled.h Mon Feb 9 01:44:09 2015 (r278425)
@@ -290,6 +290,25 @@ public:
void
SetValue (const ConstString &name);
+ //----------------------------------------------------------------------
+ /// Get the language only if it is definitive what the language is from
+ /// the mangling.
+ ///
+ /// For a mangled name to have a language it must have both a mangled
+ /// and a demangled name and it must be definitive from the mangling
+ /// what the language is.
+ ///
+ /// Standard C function names will return eLanguageTypeUnknown because
+ /// they aren't mangled and it isn't clear what language the name
+ /// represents (there will be no mangled name).
+ ///
+ /// @return
*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
More information about the svn-src-vendor
mailing list