[cfe-commits] r63006 - /cfe/trunk/lib/Basic/SourceManager.cpp

Chris Lattner sabre at nondot.org
Sun Jan 25 23:37:49 PST 2009


Author: lattner
Date: Mon Jan 26 01:37:49 2009
New Revision: 63006

URL: http://llvm.org/viewvc/llvm-project?rev=63006&view=rev
Log:
Lazily paging in file contents is a big win for PTH, strip out the old
testing code.

Modified:
    cfe/trunk/lib/Basic/SourceManager.cpp

Modified: cfe/trunk/lib/Basic/SourceManager.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Basic/SourceManager.cpp?rev=63006&r1=63005&r2=63006&view=diff

==============================================================================
--- cfe/trunk/lib/Basic/SourceManager.cpp (original)
+++ cfe/trunk/lib/Basic/SourceManager.cpp Mon Jan 26 01:37:49 2009
@@ -28,12 +28,6 @@
 // SourceManager Helper Classes
 //===--------------------------------------------------------------------===//
 
-// This (temporary) directive toggles between lazy and eager creation of
-// MemBuffers.  This directive is not permanent, and is here to test a few
-// potential optimizations in PTH.  Once it is clear whether eager or lazy
-// creation of MemBuffers is better this directive will get removed.
-#define LAZY
-
 ContentCache::~ContentCache() {
   delete Buffer;
   delete [] SourceLineCache;
@@ -54,15 +48,13 @@
   return Entry ? Entry->getSize() : Buffer->getBufferSize();
 }
 
-const llvm::MemoryBuffer* ContentCache::getBuffer() const {  
-#ifdef LAZY
+const llvm::MemoryBuffer *ContentCache::getBuffer() const {  
   // Lazily create the Buffer for ContentCaches that wrap files.
   if (!Buffer && Entry) {
     // FIXME: Should we support a way to not have to do this check over
     //   and over if we cannot open the file?
     Buffer = MemoryBuffer::getFile(Entry->getName(), 0, Entry->getSize());
   }
-#endif
   return Buffer;
 }
 
@@ -83,18 +75,8 @@
   if (I != FileInfos.end() && I->Entry == FileEnt)
     return &*I;
   
-  // Nope, get information.
-#ifndef LAZY
-  const MemoryBuffer *File =
-    MemoryBuffer::getFile(FileEnt->getName(), 0, FileEnt->getSize());
-  if (File == 0)
-    return 0;
-#endif
-  
+  // Nope, create a new Cache entry.
   ContentCache& Entry = const_cast<ContentCache&>(*FileInfos.insert(I,FileEnt));
-#ifndef LAZY
-  Entry.setBuffer(File);
-#endif
   Entry.SourceLineCache = 0;
   Entry.NumLines = 0;
   return &Entry;





More information about the cfe-commits mailing list