make the sourcemgr available through ASTContext.
llvm-svn: 41906
This commit is contained in:
parent
b2c42621df
commit
5a5b35c07b
|
@ -29,7 +29,9 @@ class DeadStoreObserver : public LiveVariablesObserver {
|
|||
ASTContext Ctx;
|
||||
public:
|
||||
DeadStoreObserver(Preprocessor& pp) :
|
||||
PP(pp), Ctx(PP.getTargetInfo(), PP.getIdentifierTable()) {}
|
||||
PP(pp), Ctx(PP.getSourceManager(), PP.getTargetInfo(),
|
||||
PP.getIdentifierTable()) {
|
||||
}
|
||||
|
||||
virtual ~DeadStoreObserver() {}
|
||||
|
||||
|
|
|
@ -27,7 +27,8 @@ void clang::BuildASTs(Preprocessor &PP, unsigned MainFileID, bool Stats) {
|
|||
Stmt::CollectingStats(true);
|
||||
}
|
||||
|
||||
ASTContext Context(PP.getTargetInfo(), PP.getIdentifierTable());
|
||||
ASTContext Context(PP.getSourceManager(), PP.getTargetInfo(),
|
||||
PP.getIdentifierTable());
|
||||
ASTStreamerTy *Streamer = ASTStreamer_Init(PP, Context, MainFileID);
|
||||
|
||||
while (ASTStreamer_ReadTopLevelDecl(Streamer))
|
||||
|
@ -106,7 +107,8 @@ static void PrintObjcInterfaceDecl(ObjcInterfaceDecl *OID) {
|
|||
}
|
||||
|
||||
void clang::PrintASTs(Preprocessor &PP, unsigned MainFileID, bool Stats) {
|
||||
ASTContext Context(PP.getTargetInfo(), PP.getIdentifierTable());
|
||||
ASTContext Context(PP.getSourceManager(), PP.getTargetInfo(),
|
||||
PP.getIdentifierTable());
|
||||
ASTStreamerTy *Streamer = ASTStreamer_Init(PP, Context, MainFileID);
|
||||
|
||||
while (Decl *D = ASTStreamer_ReadTopLevelDecl(Streamer)) {
|
||||
|
@ -137,7 +139,8 @@ void clang::PrintASTs(Preprocessor &PP, unsigned MainFileID, bool Stats) {
|
|||
}
|
||||
|
||||
void clang::DumpASTs(Preprocessor &PP, unsigned MainFileID, bool Stats) {
|
||||
ASTContext Context(PP.getTargetInfo(), PP.getIdentifierTable());
|
||||
ASTContext Context(PP.getSourceManager(), PP.getTargetInfo(),
|
||||
PP.getIdentifierTable());
|
||||
ASTStreamerTy *Streamer = ASTStreamer_Init(PP, Context, MainFileID);
|
||||
|
||||
while (Decl *D = ASTStreamer_ReadTopLevelDecl(Streamer)) {
|
||||
|
@ -184,7 +187,8 @@ static void VisitCFGs(CFGVisitor& Visitor, Preprocessor& PP,
|
|||
unsigned MainFileID, bool Stats) {
|
||||
|
||||
bool printFDecl = Visitor.printFuncDeclStart();
|
||||
ASTContext Context(PP.getTargetInfo(), PP.getIdentifierTable());
|
||||
ASTContext Context(PP.getSourceManager(), PP.getTargetInfo(),
|
||||
PP.getIdentifierTable());
|
||||
ASTStreamerTy *Streamer = ASTStreamer_Init(PP, Context, MainFileID);
|
||||
|
||||
while (Decl *D = ASTStreamer_ReadTopLevelDecl(Streamer)) {
|
||||
|
|
|
@ -29,7 +29,8 @@ void clang::EmitLLVMFromASTs(Preprocessor &PP, unsigned MainFileID,
|
|||
bool PrintStats) {
|
||||
Diagnostic &Diags = PP.getDiagnostics();
|
||||
// Create the streamer to read the file.
|
||||
ASTContext Context(PP.getTargetInfo(), PP.getIdentifierTable());
|
||||
ASTContext Context(PP.getSourceManager(), PP.getTargetInfo(),
|
||||
PP.getIdentifierTable());
|
||||
ASTStreamerTy *Streamer = ASTStreamer_Init(PP, Context, MainFileID);
|
||||
|
||||
// Create the module to codegen into.
|
||||
|
|
|
@ -40,6 +40,7 @@ class ASTContext {
|
|||
RecordDecl *CFConstantStringTypeDecl;
|
||||
llvm::StringMap<char> SelectorNames;
|
||||
public:
|
||||
SourceManager &SourceMgr;
|
||||
TargetInfo &Target;
|
||||
IdentifierTable &Idents;
|
||||
Builtin::Context BuiltinInfo;
|
||||
|
@ -54,8 +55,8 @@ public:
|
|||
QualType FloatTy, DoubleTy, LongDoubleTy;
|
||||
QualType FloatComplexTy, DoubleComplexTy, LongDoubleComplexTy;
|
||||
|
||||
ASTContext(TargetInfo &t, IdentifierTable &idents) :
|
||||
CFConstantStringTypeDecl(0), Target(t), Idents(idents) {
|
||||
ASTContext(SourceManager &SM, TargetInfo &t, IdentifierTable &idents) :
|
||||
CFConstantStringTypeDecl(0), SourceMgr(SM), Target(t), Idents(idents) {
|
||||
InitBuiltinTypes();
|
||||
BuiltinInfo.InitializeBuiltins(idents, Target);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue