]> granicus.if.org Git - clang/commitdiff
Make the on-disk hash table usable with non-file
authorDouglas Gregor <dgregor@apple.com>
Mon, 20 Apr 2009 07:36:26 +0000 (07:36 +0000)
committerDouglas Gregor <dgregor@apple.com>
Mon, 20 Apr 2009 07:36:26 +0000 (07:36 +0000)
raw_ostreams. Requires LLVM r69583.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@69584 91177308-0d34-0410-b5e6-96231b3b80d8

include/clang/Basic/OnDiskHashTable.h
tools/clang-cc/CacheTokens.cpp

index 5008be16f17423f7adcd1d4c1750969c91e5e13d..f84b7f24a9afa898c946187b2d7ef01605cc7f32 100644 (file)
@@ -73,7 +73,7 @@ inline void Emit64(llvm::raw_ostream& Out, uint64_t V) {
   Out << (unsigned char)(V >> 56);
 }
 
-inline void Pad(llvm::raw_fd_ostream& Out, unsigned A) {
+inline void Pad(llvm::raw_ostream& Out, unsigned A) {
   Offset off = (Offset) Out.tell();
   uint32_t n = ((uintptr_t)(off+A-1) & ~(uintptr_t)(A-1)) - off;
   for (; n ; --n)
@@ -184,7 +184,7 @@ public:
     insert(Buckets, NumBuckets, new (BA.Allocate<Item>()) Item(key, data));
   }
   
-  io::Offset Emit(llvm::raw_fd_ostream& out) {
+  io::Offset Emit(llvm::raw_ostream& out) {
     using namespace clang::io;
 
     // Emit the payload of the table.
@@ -193,7 +193,6 @@ public:
       if (!B.head) continue;
       
       // Store the offset for the data of this bucket.
-      // FIXME: need tell() to work on other raw ostreams
       B.off = out.tell();
       
       // Write out the number of items in the bucket.
index a886ba135a151f4f8e9f438cc8c24ee9ac904f83..d9827dfaa38634418785eb62824ed3594ca706b3 100644 (file)
@@ -604,7 +604,7 @@ public:
     return std::make_pair(n, sizeof(uint32_t));
   }
   
-  static void EmitKey(llvm::raw_fd_ostream& Out, PTHIdKey* key, unsigned n) {
+  static void EmitKey(llvm::raw_ostream& Out, PTHIdKey* key, unsigned n) {
     // Record the location of the key data.  This is used when generating
     // the mapping from persistent IDs to strings.
     key->FileOffset = Out.tell();