diff options
author | Jonas Devlieghere <jonas@devlieghere.com> | 2018-11-27 22:11:02 +0000 |
---|---|---|
committer | Jonas Devlieghere <jonas@devlieghere.com> | 2018-11-27 22:11:02 +0000 |
commit | 68ed93d2528f28e04c8b96dde59225d4cc87ff3a (patch) | |
tree | 499ebb8bf3f761095801a427d2572ae8b87b73a3 /lldb/source/API/SBDebugger.cpp | |
parent | a116602475314e0b3e7e4e28bd7057df1937b761 (diff) | |
download | bcm5719-llvm-68ed93d2528f28e04c8b96dde59225d4cc87ff3a.tar.gz bcm5719-llvm-68ed93d2528f28e04c8b96dde59225d4cc87ff3a.zip |
[Reproducers] Improve reproducer API and add unit tests.
When I landed the initial reproducer framework I knew there were some
things that needed improvement. Rather than bundling it with a patch
that adds more functionality I split it off into this patch. I also
think the API is stable enough to add unit testing, which is included in
this patch as well.
Other improvements include:
- Refactor how we initialize the loader and generator.
- Improve naming consistency: capture and replay seems the least ambiguous.
- Index providers by name and make sure there's only one of each.
- Add convenience methods for creating and accessing providers.
Differential revision: https://reviews.llvm.org/D54616
llvm-svn: 347716
Diffstat (limited to 'lldb/source/API/SBDebugger.cpp')
-rw-r--r-- | lldb/source/API/SBDebugger.cpp | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/lldb/source/API/SBDebugger.cpp b/lldb/source/API/SBDebugger.cpp index 1ea1258aaf8..a7217964abf 100644 --- a/lldb/source/API/SBDebugger.cpp +++ b/lldb/source/API/SBDebugger.cpp @@ -1057,9 +1057,15 @@ const char *SBDebugger::GetReproducerPath() const { : nullptr); } -void SBDebugger::SetReproducerPath(const char *p) { - if (m_opaque_sp) - m_opaque_sp->SetReproducerPath(llvm::StringRef::withNullAsEmpty(p)); +SBError SBDebugger::ReplayReproducer(const char *p) { + SBError sb_error; + if (m_opaque_sp) { + auto error = + m_opaque_sp->SetReproducerReplay(llvm::StringRef::withNullAsEmpty(p)); + std::string error_str = llvm::toString(std::move(error)); + sb_error.ref().SetErrorString(error_str); + } + return sb_error; } ScriptLanguage SBDebugger::GetScriptLanguage() const { |