aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/Basic/FileManager.cpp5
-rw-r--r--lib/Basic/FileSystemStatCache.cpp1
2 files changed, 3 insertions, 3 deletions
diff --git a/lib/Basic/FileManager.cpp b/lib/Basic/FileManager.cpp
index 9572aaadb7..b884388c0b 100644
--- a/lib/Basic/FileManager.cpp
+++ b/lib/Basic/FileManager.cpp
@@ -394,11 +394,12 @@ llvm::MemoryBuffer *FileManager::
getBufferForFile(const FileEntry *Entry, std::string *ErrorStr) {
llvm::StringRef Filename = Entry->getName();
if (FileSystemOpts.WorkingDir.empty())
- return llvm::MemoryBuffer::getFile(Filename, ErrorStr);
+ return llvm::MemoryBuffer::getFile(Filename, ErrorStr, Entry->getSize());
llvm::sys::Path FilePath(Filename);
FixupRelativePath(FilePath, FileSystemOpts);
- return llvm::MemoryBuffer::getFile(FilePath.c_str(), ErrorStr);
+ return llvm::MemoryBuffer::getFile(FilePath.c_str(), ErrorStr,
+ Entry->getSize());
}
llvm::MemoryBuffer *FileManager::
diff --git a/lib/Basic/FileSystemStatCache.cpp b/lib/Basic/FileSystemStatCache.cpp
index 3e13740cab..738af41a9e 100644
--- a/lib/Basic/FileSystemStatCache.cpp
+++ b/lib/Basic/FileSystemStatCache.cpp
@@ -24,7 +24,6 @@ MemorizeStatCalls::getStat(const char *Path, struct stat &StatBuf) {
if (Result == CacheMiss)
Result = ::stat(Path, &StatBuf) ? CacheHitMissing : CacheHitExists;
-
// Do not cache failed stats, it is easy to construct common inconsistent
// situations if we do, and they are not important for PCH performance (which
// currently only needs the stats to construct the initial FileManager