summaryrefslogtreecommitdiffstats
path: root/lldb/source/Target/Target.cpp
diff options
context:
space:
mode:
authorJim Ingham <jingham@apple.com>2013-03-13 17:58:04 +0000
committerJim Ingham <jingham@apple.com>2013-03-13 17:58:04 +0000
commit17d023f6ac0326706aa7726895550c015befb451 (patch)
tree98f89e2779a31ec9457430378d9cfc4bae8832f8 /lldb/source/Target/Target.cpp
parent8a68b95d9e615847991da86aaa5d66c7b8f5eaac (diff)
downloadbcm5719-llvm-17d023f6ac0326706aa7726895550c015befb451.tar.gz
bcm5719-llvm-17d023f6ac0326706aa7726895550c015befb451.zip
Add a target setting (target.use-fast-stepping) to control using the "run to next branch" stepping algorithm.
llvm-svn: 176958
Diffstat (limited to 'lldb/source/Target/Target.cpp')
-rw-r--r--lldb/source/Target/Target.cpp11
1 files changed, 10 insertions, 1 deletions
diff --git a/lldb/source/Target/Target.cpp b/lldb/source/Target/Target.cpp
index 1cc48dcc665..9e9aa563f7d 100644
--- a/lldb/source/Target/Target.cpp
+++ b/lldb/source/Target/Target.cpp
@@ -2261,6 +2261,7 @@ g_properties[] =
"file and line breakpoints." },
// FIXME: This is the wrong way to do per-architecture settings, but we don't have a general per architecture settings system in place yet.
{ "x86-disassembly-flavor" , OptionValue::eTypeEnum , false, eX86DisFlavorDefault, NULL, g_x86_dis_flavor_value_types, "The default disassembly flavor to use for x86 or x86-64 targets." },
+ { "use-fast-stepping" , OptionValue::eTypeBoolean , false, false, NULL, NULL, "Use a fast stepping algorithm based on running from branch to branch rather than instruction single-stepping." },
{ NULL , OptionValue::eTypeInvalid , false, 0 , NULL, NULL, NULL }
};
enum
@@ -2285,7 +2286,8 @@ enum
ePropertyDisableASLR,
ePropertyDisableSTDIO,
ePropertyInlineStrategy,
- ePropertyDisassemblyFlavor
+ ePropertyDisassemblyFlavor,
+ ePropertyUseFastStepping
};
@@ -2624,6 +2626,13 @@ TargetProperties::GetBreakpointsConsultPlatformAvoidList ()
return m_collection_sp->GetPropertyAtIndexAsBoolean (NULL, idx, g_properties[idx].default_uint_value != 0);
}
+bool
+TargetProperties::GetUseFastStepping () const
+{
+ const uint32_t idx = ePropertyUseFastStepping;
+ return m_collection_sp->GetPropertyAtIndexAsBoolean (NULL, idx, g_properties[idx].default_uint_value != 0);
+}
+
const TargetPropertiesSP &
Target::GetGlobalProperties()
{
OpenPOWER on IntegriCloud