Skip to content
  1. Sep 06, 2012
  2. Sep 05, 2012
  3. Sep 04, 2012
  4. Sep 03, 2012
  5. Sep 02, 2012
  6. Sep 01, 2012
  7. Aug 31, 2012
  8. Aug 30, 2012
  9. Aug 29, 2012
    • Fariborz Jahanian's avatar
      objective-C: make -Widiomatic-parentheses work · f07bcc52
      Fariborz Jahanian authored
      when assignment expression in conditional invloves
      property reference. // rdar://11066598
      
      llvm-svn: 162846
      f07bcc52
    • Aaron Ballman's avatar
      Reversing the logic since C99 mode is actually not an extension. Also,... · d5a176db
      Aaron Ballman authored
      Reversing the logic since C99 mode is actually not an extension.  Also, changing the group to the singular to match the diagnostic better.
      
      llvm-svn: 162838
      d5a176db
    • Alexander Kornienko's avatar
      Keep history of macro definitions and #undefs · 8b3f6235
      Alexander Kornienko authored
      Summary:
      Summary: Keep history of macro definitions and #undefs with corresponding source locations, so that we can later find out all macros active in a specified source location. We don't save the history in PCH (no need currently). Memory overhead is about sizeof(void*)*3*<number of macro definitions and #undefs>+<in-memory size of all #undef'd macros>
      
      I've run a test on a file composed of 109 .h files from boost 1.49 on x86-64 linux.
      Stats before this patch:
      *** Preprocessor Stats:
      73222 directives found:
        19171 #define.
        4345 #undef.
        #include/#include_next/#import:
          5233 source files entered.
          27 max include stack depth
        19210 #if/#ifndef/#ifdef.
        2384 #else/#elif.
        6891 #endif.
        408 #pragma.
      14466 #if/#ifndef#ifdef regions skipped
      80023/451669/1270 obj/fn/builtin macros expanded, 85724 on the fast path.
      127145 token paste (##) operations performed, 11008 on the fast path.
      
      Preprocessor Memory: 5874615B total
        BumpPtr: 4399104
        Macro Expanded Tokens: 417768
        Predefines Buffer: 8135
        Macros: 1048576
        #pragma push_macro Info: 0
        Poison Reasons: 1024
        Comment Handlers: 8
      
      Stats with this patch:
      ...
      Preprocessor Memory: 7541687B total
        BumpPtr: 6066176
        Macro Expanded Tokens: 417768
        Predefines Buffer: 8135
        Macros: 1048576
        #pragma push_macro Info: 0
        Poison Reasons: 1024
        Comment Handlers: 8
      
      In my test increase in memory usage is about 1.7Mb, which is ~28% of initial preprocessor's memory usage and about 0.8% of clang's total VMM allocation.
      
      As for CPU overhead, it should only be noticeable when iterating over all macros, and should mostly consist of couple extra dereferences and one comparison per macro + skipping of #undef'd macros. It's less trivial to measure, though, as the preprocessor consumes a very small fraction of compilation time.
      
      
      Reviewers: doug.gregor, klimek, rsmith, djasper
      
      Reviewed By: doug.gregor
      
      CC: cfe-commits, chandlerc
      
      Differential Revision: http://llvm-reviews.chandlerc.com/D28
      
      llvm-svn: 162810
      8b3f6235
    • Fariborz Jahanian's avatar
      objective-C arc: ns_returns_retained is a type attribute in ARC, · 272b7dc8
      Fariborz Jahanian authored
      and when used in property type declaration, is handled as type
      attribute. Do not issue the warning when declaraing the property. 
      // rdar://12173491
      
      llvm-svn: 162801
      272b7dc8
    • Chad Rosier's avatar
      Revert r162424 now that the scoping issue has been fixed in r162444. · 6f0a9a2e
      Chad Rosier authored
      llvm-svn: 162797
      6f0a9a2e
  10. Aug 28, 2012
Loading