aboutsummaryrefslogtreecommitdiff
path: root/include/lldb
diff options
context:
space:
mode:
authorEd Maste <emaste@FreeBSD.org>2014-02-25 21:42:16 +0000
committerEd Maste <emaste@FreeBSD.org>2014-02-25 21:42:16 +0000
commit03b99097822ca3ac69252d9afae716a584ed56c4 (patch)
treee0f754ea0922908b0f1be8f01c4efbdfc20462eb /include/lldb
parent866dcdacfe59f5f448e008fe2c4cb9dfcf72b2ec (diff)
downloadsrc-03b99097822ca3ac69252d9afae716a584ed56c4.tar.gz
src-03b99097822ca3ac69252d9afae716a584ed56c4.zip
Import LLDB as of SVN r202189 (git 32871eb)vendor/lldb/lldb-r202189
(A number of files not required for the FreeBSD build have been removed.) Sponsored by: DARPA, AFRL
Notes
Notes: svn path=/vendor/lldb/dist/; revision=262497 svn path=/vendor/lldb/lldb-r202189/; revision=262498; tag=vendor/lldb/lldb-r202189
Diffstat (limited to 'include/lldb')
-rw-r--r--include/lldb/Core/ArchSpec.h10
-rw-r--r--include/lldb/Core/IOHandler.h18
-rw-r--r--include/lldb/Host/HostGetOpt.h2
-rw-r--r--include/lldb/Interpreter/PythonDataObjects.h3
-rw-r--r--include/lldb/Symbol/VariableList.h8
-rw-r--r--include/lldb/Target/Process.h7
-rw-r--r--include/lldb/lldb-enumerations.h4
7 files changed, 47 insertions, 5 deletions
diff --git a/include/lldb/Core/ArchSpec.h b/include/lldb/Core/ArchSpec.h
index 4ec8e06c8b35..1ccb385783a0 100644
--- a/include/lldb/Core/ArchSpec.h
+++ b/include/lldb/Core/ArchSpec.h
@@ -92,6 +92,10 @@ public:
eCore_x86_64_x86_64,
eCore_x86_64_x86_64h, // Haswell enabled x86_64
+ eCore_hexagon_generic,
+ eCore_hexagon_hexagonv4,
+ eCore_hexagon_hexagonv5,
+
eCore_uknownMach32,
eCore_uknownMach64,
kNumCores,
@@ -103,6 +107,7 @@ public:
kCore_ppc_any,
kCore_ppc64_any,
kCore_x86_32_any,
+ kCore_hexagon_any,
kCore_arm_first = eCore_arm_generic,
kCore_arm_last = eCore_arm_xscale,
@@ -117,7 +122,10 @@ public:
kCore_ppc64_last = eCore_ppc64_ppc970_64,
kCore_x86_32_first = eCore_x86_32_i386,
- kCore_x86_32_last = eCore_x86_32_i486sx
+ kCore_x86_32_last = eCore_x86_32_i486sx,
+
+ kCore_hexagon_first = eCore_hexagon_generic,
+ kCore_hexagon_last = eCore_hexagon_hexagonv5
};
//------------------------------------------------------------------
diff --git a/include/lldb/Core/IOHandler.h b/include/lldb/Core/IOHandler.h
index a7d4880da0d3..78d1e7447db4 100644
--- a/include/lldb/Core/IOHandler.h
+++ b/include/lldb/Core/IOHandler.h
@@ -63,6 +63,16 @@ namespace lldb_private {
virtual void
Refresh () = 0;
+ // Called when an input reader should relinquish its control so another
+ // can be pushed onto the IO handler stack, or so the current IO
+ // handler can pop itself off the stack
+
+ virtual void
+ Cancel () = 0;
+
+ // Called when CTRL+C is pressed which usually causes
+ // Debugger::DispatchInputInterrupt to be called.
+
virtual void
Interrupt () = 0;
@@ -395,6 +405,9 @@ namespace lldb_private {
Refresh ();
virtual void
+ Cancel ();
+
+ virtual void
Interrupt ();
virtual void
@@ -500,7 +513,10 @@ namespace lldb_private {
virtual void
Refresh ();
-
+
+ virtual void
+ Cancel ();
+
virtual void
Interrupt ();
diff --git a/include/lldb/Host/HostGetOpt.h b/include/lldb/Host/HostGetOpt.h
index 6fb7b51dddba..f4b2c87be230 100644
--- a/include/lldb/Host/HostGetOpt.h
+++ b/include/lldb/Host/HostGetOpt.h
@@ -17,4 +17,4 @@
#include <lldb/Host/windows/GetOptInc.h>
-#endif \ No newline at end of file
+#endif
diff --git a/include/lldb/Interpreter/PythonDataObjects.h b/include/lldb/Interpreter/PythonDataObjects.h
index 55df4fd1b0a1..63f1ad5f67bf 100644
--- a/include/lldb/Interpreter/PythonDataObjects.h
+++ b/include/lldb/Interpreter/PythonDataObjects.h
@@ -98,6 +98,9 @@ namespace lldb_private {
return m_py_obj != NULL;
}
+ bool
+ IsNULLOrNone () const;
+
protected:
PyObject* m_py_obj;
};
diff --git a/include/lldb/Symbol/VariableList.h b/include/lldb/Symbol/VariableList.h
index 2ce6146f4627..08efd3d5b9a1 100644
--- a/include/lldb/Symbol/VariableList.h
+++ b/include/lldb/Symbol/VariableList.h
@@ -49,10 +49,16 @@ public:
lldb::VariableSP
FindVariable (const ConstString& name);
+
+ lldb::VariableSP
+ FindVariable (const ConstString& name, lldb::ValueType value_type);
uint32_t
FindVariableIndex (const lldb::VariableSP &var_sp);
-
+
+ size_t
+ AppendVariablesIfUnique(VariableList &var_list);
+
// Returns the actual number of unique variables that were added to the
// list. "total_matches" will get updated with the actualy number of
// matches that were found regardless of whether they were unique or not
diff --git a/include/lldb/Target/Process.h b/include/lldb/Target/Process.h
index f52b54da52cf..b74347d37e68 100644
--- a/include/lldb/Target/Process.h
+++ b/include/lldb/Target/Process.h
@@ -815,9 +815,16 @@ public:
return m_monitor_callback_baton;
}
+ // If the LaunchInfo has a monitor callback, then arrange to monitor the process.
+ // Return true if the LaunchInfo has taken care of monitoring the process, and false if the
+ // caller might want to monitor the process themselves.
+
bool
MonitorProcess () const
{
+ if (GetFlags().Test(lldb::eLaunchFlagsDontMonitorProcess))
+ return true;
+
if (m_monitor_callback && ProcessIDIsValid())
{
Host::StartMonitoringChildProcess (m_monitor_callback,
diff --git a/include/lldb/lldb-enumerations.h b/include/lldb/lldb-enumerations.h
index c8294960a7b2..347e20f21df6 100644
--- a/include/lldb/lldb-enumerations.h
+++ b/include/lldb/lldb-enumerations.h
@@ -46,7 +46,9 @@ namespace lldb {
eLaunchFlagDisableSTDIO = (1u << 4), ///< Disable stdio for inferior process (e.g. for a GUI app)
eLaunchFlagLaunchInTTY = (1u << 5), ///< Launch the process in a new TTY if supported by the host
eLaunchFlagLaunchInShell= (1u << 6), ///< Launch the process inside a shell to get shell expansion
- eLaunchFlagLaunchInSeparateProcessGroup = (1u << 7) ///< Launch the process in a separate process group
+ eLaunchFlagLaunchInSeparateProcessGroup = (1u << 7), ///< Launch the process in a separate process group
+ eLaunchFlagsDontMonitorProcess = (1u << 8) ///< If you are going to hand the process off (e.g. to debugserver)
+ ///< set this flag so lldb & the handee don't race to reap it.
} LaunchFlags;
//----------------------------------------------------------------------