Recommit virtual file system

Previously reverted in r201755 due to causing an assertion failure.

I've removed the offending assertion, and taught the CompilerInstance to
create a default virtual file system inside createFileManager. In the
future, we should be able to reach into the CompilerInvocation to
customize this behaviour without breaking clients that don't care.

llvm-svn: 201818
This commit is contained in:
Ben Langmuir
2014-02-20 21:59:23 +00:00
parent 37eb422f69
commit c8130a74f4
17 changed files with 711 additions and 109 deletions

View File

@@ -89,7 +89,7 @@ ModuleManager::addModule(StringRef FileName, ModuleKind Type,
New->InputFilesValidationTimestamp = 0;
if (New->Kind == MK_Module) {
std::string TimestampFilename = New->getTimestampFilename();
llvm::sys::fs::file_status Status;
vfs::Status Status;
// A cached stat value would be fine as well.
if (!FileMgr.getNoncachedStatValue(TimestampFilename, Status))
New->InputFilesValidationTimestamp =