summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Support
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2009-04-20 07:34:17 +0000
committerDouglas Gregor <dgregor@apple.com>2009-04-20 07:34:17 +0000
commitb231e5791e07d90a22e1c7388e11ad51de14482e (patch)
treed4d6e506665f8dc34da8011fd190f853ac51a4aa /llvm/lib/Support
parentbe1f26df5d6e30d97edd29417c2d788612e34cbc (diff)
downloadbcm5719-llvm-b231e5791e07d90a22e1c7388e11ad51de14482e.tar.gz
bcm5719-llvm-b231e5791e07d90a22e1c7388e11ad51de14482e.zip
Make all raw_ostreams support the tell() function.
llvm-svn: 69583
Diffstat (limited to 'llvm/lib/Support')
-rw-r--r--llvm/lib/Support/raw_ostream.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/llvm/lib/Support/raw_ostream.cpp b/llvm/lib/Support/raw_ostream.cpp
index f62a31d1990..6ac37bc840c 100644
--- a/llvm/lib/Support/raw_ostream.cpp
+++ b/llvm/lib/Support/raw_ostream.cpp
@@ -339,6 +339,12 @@ void raw_os_ostream::write_impl(const char *Ptr, unsigned Size) {
OS.write(Ptr, Size);
}
+uint64_t raw_os_ostream::current_pos() { return OS.tellp(); }
+
+uint64_t raw_os_ostream::tell() {
+ return (uint64_t)OS.tellp() + GetNumBytesInBuffer();
+}
+
//===----------------------------------------------------------------------===//
// raw_string_ostream
//===----------------------------------------------------------------------===//
@@ -363,3 +369,8 @@ void raw_svector_ostream::write_impl(const char *Ptr, unsigned Size) {
OS.append(Ptr, Ptr + Size);
}
+uint64_t raw_svector_ostream::current_pos() { return OS.size(); }
+
+uint64_t raw_svector_ostream::tell() {
+ return OS.size() + GetNumBytesInBuffer();
+}
OpenPOWER on IntegriCloud