Isolate Target-specific functionality of DataExtractor.

In an effort to move the various DataBuffer / DataExtractor
classes from Core -> Utility, we have to separate the low-level
functionality from the higher level functionality.  Only a
few functions required anything other than reading/writing
raw bytes, so those functions are separated out into a
more appropriate area.  Specifically, Dump() and DumpHexBytes()
are moved into free functions in Core/DumpDataExtractor.cpp,
and GetGNUEHPointer is moved into a static function in the
only file that it's referenced from.

Differential Revision: https://reviews.llvm.org/D30560

llvm-svn: 296910
This commit is contained in:
Zachary Turner
2017-03-03 20:57:05 +00:00
parent 6f9e690199
commit 29cb868aa4
25 changed files with 1149 additions and 1143 deletions

View File

@@ -18,6 +18,7 @@
#include "lldb/Breakpoint/StoppointCallbackContext.h"
#include "lldb/Core/Debugger.h"
#include "lldb/Core/DumpDataExtractor.h"
#include "lldb/Core/PluginManager.h"
#include "lldb/Core/ValueObjectVariable.h"
#include "lldb/DataFormatters/DumpValueObjectOptions.h"
@@ -3409,8 +3410,9 @@ bool RenderScriptRuntime::DumpAllocation(Stream &strm, StackFrame *frame_ptr,
// Print the results to our stream.
expr_result->Dump(strm, expr_options);
} else {
alloc_data.Dump(&strm, offset, format, data_size - padding, 1, 1,
LLDB_INVALID_ADDRESS, 0, 0);
DumpDataExtractor(alloc_data, &strm, offset, format,
data_size - padding, 1, 1, LLDB_INVALID_ADDRESS, 0,
0);
}
offset += data_size;
}