#include "llvm/Bitcode/Serialize.h"
#include "llvm/Bitcode/Deserialize.h"
#include "llvm/Support/Streams.h"
+#include "llvm/Support/Allocator.h"
#include "llvm/Config/config.h"
using namespace clang;
/// represent a dir name that doesn't exist on the disk.
#define NON_EXISTENT_DIR reinterpret_cast<DirectoryEntry*>((intptr_t)-1)
+//===----------------------------------------------------------------------===//
+// Windows.
+//===----------------------------------------------------------------------===//
+
#ifdef LLVM_ON_WIN32
#define IS_DIR_SEPARATOR_CHAR(x) ((x) == '/' || (x) == '\\')
size_t size() { return UniqueFiles.size(); }
};
+//===----------------------------------------------------------------------===//
+// Unix-like Systems.
+//===----------------------------------------------------------------------===//
+
#else
#define IS_DIR_SEPARATOR_CHAR(x) ((x) == '/')
#endif
+//===----------------------------------------------------------------------===//
+// Common logic.
+//===----------------------------------------------------------------------===//
FileManager::FileManager() : UniqueDirs(*new UniqueDirContainer),
UniqueFiles(*new UniqueFileContainer),