summaryrefslogtreecommitdiffstats
path: root/contrib/llvm/tools/lldb/source/Symbol/VariableList.cpp
diff options
context:
space:
mode:
authoremaste <emaste@FreeBSD.org>2014-02-25 22:13:51 +0000
committeremaste <emaste@FreeBSD.org>2014-02-25 22:13:51 +0000
commit6c70565c062addb40f7377f4097af94a515fc49d (patch)
treea6ea5728c855ec09e8a9b53d967c87f620cb160c /contrib/llvm/tools/lldb/source/Symbol/VariableList.cpp
parent6c344e019fa72f3c5234bcdbd443a512c951ee02 (diff)
downloadFreeBSD-src-6c70565c062addb40f7377f4097af94a515fc49d.zip
FreeBSD-src-6c70565c062addb40f7377f4097af94a515fc49d.tar.gz
Update LLDB snapshot to upstream r202189
Highlights include: - Support hardware watchpoints on FreeBSD (r201706) - Improved unwinding through hand-written assembly functions (r201839) - Handle DW_TAG_unspecified_parameters for variadic functions (r202061) - Fix Ctrl+C interrupting a running inferior process (r202086, r202154) - Various bug fixes, including to the remote GDB protocol client Sponsored by: DARPA, AFRL
Diffstat (limited to 'contrib/llvm/tools/lldb/source/Symbol/VariableList.cpp')
-rw-r--r--contrib/llvm/tools/lldb/source/Symbol/VariableList.cpp26
1 files changed, 26 insertions, 0 deletions
diff --git a/contrib/llvm/tools/lldb/source/Symbol/VariableList.cpp b/contrib/llvm/tools/lldb/source/Symbol/VariableList.cpp
index 3451166..75eb870 100644
--- a/contrib/llvm/tools/lldb/source/Symbol/VariableList.cpp
+++ b/contrib/llvm/tools/lldb/source/Symbol/VariableList.cpp
@@ -115,6 +115,32 @@ VariableList::FindVariable(const ConstString& name)
return var_sp;
}
+VariableSP
+VariableList::FindVariable (const ConstString& name, lldb::ValueType value_type)
+{
+ VariableSP var_sp;
+ iterator pos, end = m_variables.end();
+ for (pos = m_variables.begin(); pos != end; ++pos)
+ {
+ if ((*pos)->NameMatches(name) && (*pos)->GetScope() == value_type)
+ {
+ var_sp = (*pos);
+ break;
+ }
+ }
+ return var_sp;
+}
+
+size_t
+VariableList::AppendVariablesIfUnique(VariableList &var_list)
+{
+ const size_t initial_size = var_list.GetSize();
+ iterator pos, end = m_variables.end();
+ for (pos = m_variables.begin(); pos != end; ++pos)
+ var_list.AddVariableIfUnique(*pos);
+ return var_list.GetSize() - initial_size;
+}
+
size_t
VariableList::AppendVariablesIfUnique (const RegularExpression& regex, VariableList &var_list, size_t& total_matches)
{
OpenPOWER on IntegriCloud