Skip to content
Snippets Groups Projects
  1. Dec 19, 2012
  2. Mar 23, 2012
  3. Oct 05, 2011
  4. Oct 04, 2011
  5. Oct 02, 2011
    • John McCall's avatar
      Make -fobjc-nonfragile-abi the -cc1 default, since it's the · d1e40d53
      John McCall authored
      increasingly prevailing case to the point that new features
      like ARC don't even support the fragile ABI anymore.
      
      This required a little bit of reshuffling with exceptions
      because a check was assuming that ObjCNonFragileABI was
      only being set in ObjC mode, and that's actually a bit
      obnoxious to do.
      
      Most, though, it involved a perl script to translate a ton
      of test cases.
      
      Mostly no functionality change for driver users, although
      there are corner cases with disabling language-specific
      exceptions that we should handle more correctly now.
      
      
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@140957 91177308-0d34-0410-b5e6-96231b3b80d8
      d1e40d53
  6. Sep 13, 2011
  7. Aug 18, 2011
  8. Jul 14, 2011
  9. Mar 08, 2011
  10. Nov 17, 2010
  11. Mar 19, 2010
    • Douglas Gregor's avatar
      Robustify PreprocessingRecord slightly, by only creating macro · 1b058e89
      Douglas Gregor authored
      instantiations when we have the corresponding macro definition and by
      removing macro definition information from our table when the macro is
      undefined. 
      
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@99004 91177308-0d34-0410-b5e6-96231b3b80d8
      1b058e89
    • Douglas Gregor's avatar
      Implement serialization and lazy deserialization of the preprocessing · 6a5a23f8
      Douglas Gregor authored
      record (which includes all macro instantiations and definitions). As
      with all lay deserialization, this introduces a new external source
      (here, an external preprocessing record source) that loads all of the
      preprocessed entities prior to iterating over the entities.
      
      The preprocessing record is an optional part of the precompiled header
      that is disabled by default (enabled with
      -detailed-preprocessing-record). When the preprocessor given to the
      PCH writer has a preprocessing record, that record is written into the
      PCH file. When the PCH reader is given a PCH file that contains a
      preprocessing record, it will be lazily loaded (which, effectively,
      implicitly adds -detailed-preprocessing-record). This is the first
      case where we have sections of the precompiled header that are
      added/removed based on a compilation flag, which is
      unfortunate. However, this data consumes ~550k in the PCH file for
      Cocoa.h (out of ~9.9MB), and there is a non-trivial cost to gathering
      this detailed preprocessing information, so it's too expensive to turn
      on by default. In the future, we should investigate a better encoding
      of this information.
      
      
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@99002 91177308-0d34-0410-b5e6-96231b3b80d8
      6a5a23f8
    • Douglas Gregor's avatar
      Fix a longstanding (but previously unknown) bug in the lazy · 5de65721
      Douglas Gregor authored
      deserialization of precompiled headers, where the deserialization of
      the source location entry for a buffer (e.g., macro instantiation
      scratch space) would overwrite a one-element FileID cache in the
      source manager. When tickled at the wrong time, we would return the
      wrong decomposed source location and eventually cause c-index-test to
      crash.
      
      Found by dumb luck. It's amazing this hasn't shown up before.
      
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98940 91177308-0d34-0410-b5e6-96231b3b80d8
      5de65721
  12. Mar 08, 2010
  13. Feb 14, 2010
  14. Jan 25, 2010
  15. Jan 22, 2010
    • Douglas Gregor's avatar
      Teach CIndex's cursor visitor to restrict its traversal to a specific · 33e9abd2
      Douglas Gregor authored
      region of interest (if provided). Implement clang_getCursor() in terms
      of this traversal rather than using the Index library; the unified
      cursor visitor is more complete, and will be The Way Forward.
      
      Minor other tweaks needed to make this work:
        - Extend Preprocessor::getLocForEndOfToken() to accept an offset
        from the end, making it easy to move to the last character in the
        token (rather than just past the end of the token).
        - In Lexer::MeasureTokenLength(), the length of whitespace is zero.
      
      
      
      git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94200 91177308-0d34-0410-b5e6-96231b3b80d8
      33e9abd2
  16. Jan 20, 2010
  17. Jan 19, 2010
  18. Jan 16, 2010
  19. Jan 07, 2010
  20. Dec 15, 2009
  21. Dec 14, 2009
  22. Nov 17, 2009
Loading