Remove dead code related to the now defunct PCH stat cache.

llvm-svn: 174342
This commit is contained in:
Ted Kremenek 2013-02-05 06:21:59 +00:00
parent 192542ce38
commit 03cb13751f
3 changed files with 1 additions and 64 deletions

View File

@ -23,8 +23,6 @@
#include "clang/AST/Type.h"
#include "clang/AST/TypeLocVisitor.h"
#include "clang/Basic/FileManager.h"
#include "clang/Basic/FileSystemStatCache.h"
#include "clang/Basic/OnDiskHashTable.h"
#include "clang/Basic/SourceManager.h"
#include "clang/Basic/SourceManagerInternals.h"
#include "clang/Basic/TargetInfo.h"

View File

@ -198,20 +198,7 @@ class HeaderFileInfoTrait {
const char *FrameworkStrings;
const char *SearchPath;
struct stat SearchPathStatBuf;
llvm::Optional<int> SearchPathStatResult;
int StatSimpleCache(const char *Path, struct stat *StatBuf) {
if (Path == SearchPath) {
if (!SearchPathStatResult)
SearchPathStatResult = stat(Path, &SearchPathStatBuf);
*StatBuf = SearchPathStatBuf;
return *SearchPathStatResult;
}
return stat(Path, StatBuf);
}
public:
typedef const char *external_key_type;
typedef const char *internal_key_type;

View File

@ -1289,54 +1289,6 @@ void ASTWriter::WriteInputFiles(SourceManager &SourceMgr, StringRef isysroot) {
Stream.EmitRecordWithBlob(OffsetsAbbrevCode, Record, data(InputFileOffsets));
}
//===----------------------------------------------------------------------===//
// stat cache Serialization
//===----------------------------------------------------------------------===//
namespace {
// Trait used for the on-disk hash table of stat cache results.
class ASTStatCacheTrait {
public:
typedef const char * key_type;
typedef key_type key_type_ref;
typedef struct stat data_type;
typedef const data_type &data_type_ref;
static unsigned ComputeHash(const char *path) {
return llvm::HashString(path);
}
std::pair<unsigned,unsigned>
EmitKeyDataLength(raw_ostream& Out, const char *path,
data_type_ref Data) {
unsigned StrLen = strlen(path);
clang::io::Emit16(Out, StrLen);
unsigned DataLen = 4 + 4 + 2 + 8 + 8;
clang::io::Emit8(Out, DataLen);
return std::make_pair(StrLen + 1, DataLen);
}
void EmitKey(raw_ostream& Out, const char *path, unsigned KeyLen) {
Out.write(path, KeyLen);
}
void EmitData(raw_ostream &Out, key_type_ref,
data_type_ref Data, unsigned DataLen) {
using namespace clang::io;
uint64_t Start = Out.tell(); (void)Start;
Emit32(Out, (uint32_t) Data.st_ino);
Emit32(Out, (uint32_t) Data.st_dev);
Emit16(Out, (uint16_t) Data.st_mode);
Emit64(Out, (uint64_t) Data.st_mtime);
Emit64(Out, (uint64_t) Data.st_size);
assert(Out.tell() - Start == DataLen && "Wrong data length");
}
};
} // end anonymous namespace
//===----------------------------------------------------------------------===//
// Source Manager Serialization
//===----------------------------------------------------------------------===//