diff options
author | Zachary Turner <zturner@google.com> | 2017-06-26 17:22:36 +0000 |
---|---|---|
committer | Zachary Turner <zturner@google.com> | 2017-06-26 17:22:36 +0000 |
commit | e79b07e41e2a6a0166718c94e5747e13bb84ef77 (patch) | |
tree | f2afa6da521dc29e6aa437333c571e9f21c07ee8 /llvm/include | |
parent | 82143d3fbba6d861fd0248f4d9df90f435a783e8 (diff) | |
download | bcm5719-llvm-e79b07e41e2a6a0166718c94e5747e13bb84ef77.tar.gz bcm5719-llvm-e79b07e41e2a6a0166718c94e5747e13bb84ef77.zip |
[llvm-pdbutil] Add a mode to `bytes` for dumping split debug chunks.
llvm-svn: 306309
Diffstat (limited to 'llvm/include')
-rw-r--r-- | llvm/include/llvm/Support/BinaryStreamRef.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/llvm/include/llvm/Support/BinaryStreamRef.h b/llvm/include/llvm/Support/BinaryStreamRef.h index 499d91cfb11..6d5135cb258 100644 --- a/llvm/include/llvm/Support/BinaryStreamRef.h +++ b/llvm/include/llvm/Support/BinaryStreamRef.h @@ -174,6 +174,16 @@ struct BinarySubstreamRef { BinaryStreamRef SubSub = StreamData.slice(Off, Size); return {Off + Offset, SubSub}; } + BinarySubstreamRef drop_front(uint32_t N) const { + return slice(N, size() - N); + } + BinarySubstreamRef keep_front(uint32_t N) const { return slice(0, N); } + + std::pair<BinarySubstreamRef, BinarySubstreamRef> + split(uint32_t Offset) const { + return std::make_pair(keep_front(Offset), drop_front(Offset)); + } + uint32_t size() const { return StreamData.getLength(); } bool empty() const { return size() == 0; } }; |