From: Chris Lattner Date: Thu, 22 Jan 2009 19:21:44 +0000 (+0000) Subject: inline Sema::getLangOptions, rdar://6515190. This speeds up X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=53ebff34243161e5b18cbec5e3373661ab105d2d;p=clang inline Sema::getLangOptions, rdar://6515190. This speeds up fsyntax-only with PTH by 3%. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62774 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Sema/Sema.cpp b/lib/Sema/Sema.cpp index a8cc404907..7e61bbd14c 100644 --- a/lib/Sema/Sema.cpp +++ b/lib/Sema/Sema.cpp @@ -114,7 +114,8 @@ void Sema::ActOnTranslationUnitScope(SourceLocation Loc, Scope *S) { } Sema::Sema(Preprocessor &pp, ASTContext &ctxt, ASTConsumer &consumer) - : PP(pp), Context(ctxt), Consumer(consumer), Diags(PP.getDiagnostics()), + : LangOpts(pp.getLangOptions()), PP(pp), Context(ctxt), Consumer(consumer), + Diags(PP.getDiagnostics()), SourceMgr(PP.getSourceManager()), CurContext(0), PreDeclaratorDC(0), CurBlock(0), PackContext(0), IdResolver(pp.getLangOptions()), GlobalNewDeleteDeclared(false) { @@ -197,10 +198,6 @@ void Sema::ActOnEndOfTranslationUnit() { // Helper functions. //===----------------------------------------------------------------------===// -const LangOptions &Sema::getLangOptions() const { - return PP.getLangOptions(); -} - /// getCurFunctionDecl - If inside of a function body, this returns a pointer /// to the function decl for the function being parsed. If we're currently /// in a 'block', this returns the containing context. diff --git a/lib/Sema/Sema.h b/lib/Sema/Sema.h index b574dc360e..9f1f2a3c31 100644 --- a/lib/Sema/Sema.h +++ b/lib/Sema/Sema.h @@ -108,6 +108,7 @@ public: /// Sema - This implements semantic analysis and AST building for C. class Sema : public Action { public: + const LangOptions &LangOpts; Preprocessor &PP; ASTContext &Context; ASTConsumer &Consumer; @@ -236,7 +237,7 @@ public: public: Sema(Preprocessor &pp, ASTContext &ctxt, ASTConsumer &consumer); - const LangOptions &getLangOptions() const; + const LangOptions &getLangOptions() const { return LangOpts; } Diagnostic &getDiagnostics() const { return Diags; } SourceManager &getSourceManager() const { return SourceMgr; }