Skip to content
  1. Jul 02, 2010
  2. Jun 18, 2010
  3. Jun 12, 2010
  4. Jun 05, 2010
  5. Jun 01, 2010
    • John McCall's avatar
      Alter the ExternalASTSource interface to permit by-name lookups. PCH continues to · 75b960e5
      John McCall authored
      bring in the entire lookup table at once.
      
      Also, give ExternalSemaSource's vtable a home.  This is important because otherwise
      any reference to it will cause RTTI to be emitted, and since clang is compiled
      with -fno-rtti, that RTTI will contain unresolved references (to ExternalASTSource's
      RTTI).  So this change makes it possible to subclass ExternalSemaSource from projects
      compiled with RTTI, as long as the subclass's home is compiled with -fno-rtti.
      
      llvm-svn: 105268
      75b960e5
  6. May 30, 2010
    • Alexis Hunt's avatar
      Convert DeclNodes to use TableGen. · ed05325d
      Alexis Hunt authored
      The macros required for DeclNodes use have changed to match the use of
      StmtNodes. The FooFirst enumerator constants have been named firstFoo
      to match usage elsewhere.
      
      llvm-svn: 105165
      ed05325d
  7. May 11, 2010
  8. Apr 23, 2010
  9. Mar 31, 2010
  10. Mar 30, 2010
    • Douglas Gregor's avatar
      Introduce new AST statistics that keep track of the number of isa (or · ad2c6988
      Douglas Gregor authored
      dyn_cast) invocations for C++ and Objective-C types, declarations,
      expressions, and statements. The statistics will be printed when
      -print-stats is provided to Clang -cc1, with results such as:
      
      277073 clang - Number of checks for C++ declaration nodes
       13311 clang - Number of checks for C++ expression nodes
          18 clang - Number of checks for C++ statement nodes
      174182 clang - Number of checks for C++ type nodes
       92300 clang - Number of checks for Objective-C declaration nodes
        9800 clang - Number of checks for Objective-C expression nodes
           7 clang - Number of checks for Objective-C statement nodes
       65733 clang - Number of checks for Objective-C type nodes
      
      The statistics are only gathered when NDEBUG is not defined, since
      they introduce potentially-expensive operations into very low-level
      routines (isa).
      
      llvm-svn: 99912
      ad2c6988
    • Douglas Gregor's avatar
      When copying a partial diagnostic into a DependentDiagnostic, allocate · a55530e5
      Douglas Gregor authored
      storage for that partial diagnostic via the ASTContext's
      BumpPtrAllocator rather than using up slots in the ASTContext's
      cache. Now that we do this, we don't have to worry about destroying
      dependent diagnostics when destroying a DependentStoredDeclsMap.
      
      llvm-svn: 99854
      a55530e5
    • Douglas Gregor's avatar
      Optimize PartialDiagnostic's memory-allocation behavior by placing a · 8933623b
      Douglas Gregor authored
      cache of PartialDiagnostic::Storage objects into an allocator within
      the ASTContext. This eliminates a significant amount of malloc
      traffic, for a 10% performance improvement in -fsyntax-only wall-clock
      time with 403.gcc's combine.c.
      
      Also, eliminate the RequireNonAbstractType hack I put in earlier,
      which was but a symptom of this larger problem.
      
      Fixes <rdar://problem/7806091>.
      
      llvm-svn: 99849
      8933623b
  11. Mar 24, 2010
  12. Mar 11, 2010
  13. Mar 10, 2010
    • John McCall's avatar
      Create a new InjectedClassNameType to represent bare-word references to the · e78aac41
      John McCall authored
      injected class name of a class template or class template partial specialization.
      This is a non-canonical type;  the canonical type is still a template 
      specialization type.  This becomes the TypeForDecl of the pattern declaration,
      which cleans up some amount of code (and complicates some other parts, but
      whatever).
      
      Fixes PR6326 and probably a few others, primarily by re-establishing a few
      invariants about TypeLoc sizes.     
      
      llvm-svn: 98134
      e78aac41
  14. Mar 05, 2010
  15. Feb 22, 2010
  16. Feb 17, 2010
  17. Feb 11, 2010
  18. Jan 22, 2010
  19. Jan 20, 2010
  20. Jan 16, 2010
  21. Dec 11, 2009
  22. Dec 10, 2009
  23. Dec 08, 2009
  24. Dec 02, 2009
  25. Dec 01, 2009
  26. Nov 29, 2009
  27. Nov 21, 2009
  28. Nov 18, 2009
  29. Nov 17, 2009
    • Ted Kremenek's avatar
      Do not register ObjCInterfaceDecls implicitly created by @class in the · 707ece60
      Ted Kremenek authored
      current DeclContext.  These "imaginary" declarations pose issues for
      clients searching DeclContext for actual declarations.  Instead,
      register them for name lookup, and add the ObjCInterfaceDecl later to
      the DeclContext when we hit an actual @interface declaration.
      
      This also fixes a bug where the invariant that the Decls in a
      DeclContext are sorted in order of their appearance is no longer
      violated.  What could happen is that an @class causes an
      ObjCInterfaceDecl to get added first to the DeclContext, then the
      ObjCClassDecl itself is added, and then later the SourceLocation of
      the ObjCInterfaceDecl is updated with the correct location (which is
      later in the file).  This breaks an assumed invariant in
      ResolveLocation.cpp (and possibly other clients).
      
      llvm-svn: 89160
      707ece60
    • John McCall's avatar
      Instead of hanging a using declaration's target decls directly off the using · 3f746828
      John McCall authored
      decl, create shadow declarations and put them in scope like normal.
      Work in progress.
      
      llvm-svn: 89048
      3f746828
  30. Oct 23, 2009
    • John McCall's avatar
      Remove OriginalTypeParmDecl; the original type is the one specified · 856bbea3
      John McCall authored
      in the DeclaratorInfo, if one is present.
      
      Preserve source information through template instantiation.  This is made
      more complicated by the possibility that ParmVarDecls don't have DIs, which
      is possibly worth fixing in the future.
      
      Also preserve source information for function parameters in ObjC method
      declarations.
      
      llvm-svn: 84971
      856bbea3
  31. Oct 01, 2009
  32. Sep 17, 2009
Loading