Skip to content
  1. Mar 13, 2007
    • Steve Naroff's avatar
      Bug #: · 451d8f16
      Steve Naroff authored
      Submitted by:
      Reviewed by:
      -Converted the preprocessor to use NumericLiteralParser.
      -Several minor changes to LiteralSupport interface/implementation.
      -Added an error diagnostic for floating point usage in pp expr's.
      
      llvm-svn: 39352
      451d8f16
  2. Mar 10, 2007
    • Steve Naroff's avatar
      Bug #: · 09ef4741
      Steve Naroff authored
      Submitted by:
      Reviewed by:
      Moved numeric literal support from SemaExpr.cpp to LiteralSupport.[h,cpp]
      in Lex. This will allow it to be used by both Sema and Preprocessor (and
      should be the last major refactoring of this sub-system).. Over
      time, it will be reused by anyone implementing an actions module (i.e.
      any subclass of llvm::clang::Action. Minor changes to IntegerLiteral in Expr.h.
      More to come...
      
      llvm-svn: 39351
      09ef4741
  3. Mar 07, 2007
    • Steve Naroff's avatar
      Bug #: · cf30755a
      Steve Naroff authored
      Submitted by:
      Reviewed by:
      Refactored ParseNumericConstant using SkipDigits and friends. This
      cleaned up the code and removed many "breaks". In the process, I found
      several bugs that needed to be fixed (proof that this refactoring had
      real value, not simply aesthetics). Also simplified error handling logic
      and removed an unused error condition from Diagnostics.def.
      
      llvm-svn: 39350
      cf30755a
  4. Mar 06, 2007
    • Steve Naroff's avatar
      Bug #: · 8160ea20
      Steve Naroff authored
      Submitted by:
      Reviewed by:
      More code to parse numeric constants. This checkin includes:
      - Feedback from Chris.
      - Support for parsing floating point constants.
      - Moved the code to "Sema". Changed API in Action.
      - More/better error diagnostics.
      
      At this point, the parsing support should be largely complete. Next step
      is to work on filling in sensible values (in IntegerLiteral/FloatLiteral).
      
      llvm-svn: 39349
      8160ea20
  5. Mar 03, 2007
    • Steve Naroff's avatar
      Bug #: · 1fb30c5e
      Steve Naroff authored
      Submitted by:
      Reviewed by:
      First phase of parsing IntegerConstants. At the moment, all processing
      is done in the Parser, not Sema. If necessary, this is easy to move.
      Next steps:
      - Convert well for strings to actual values (need to look @ APInt.h)
      - Design the API between the Parser and Sema. Sema shouldn't have to be
      concerned with any parsing issues...
      
      llvm-svn: 39348
      1fb30c5e
    • Chris Lattner's avatar
      test commit · 4eeeabbc
      Chris Lattner authored
      llvm-svn: 39347
      4eeeabbc
  6. Feb 28, 2007
    • Steve Naroff's avatar
      · 2c055d2b
      Steve Naroff authored
      Go back to having the clang driver create ASTContext explicitly, passing
      it to Sema/ASTStreamer (separating the lifetime of ASTContext from
      the lifetime of Sema). One day it might be useful to consider creating
      a context object implicitly if one isn't provided (using default arguments in
      Sema's constructor). At this point, adding this convenience isn't necessary.
      
      llvm-svn: 39346
      2c055d2b
    • Steve Naroff's avatar
      Make Sema's use of the preprocessor explicit (rather than assume · 38d31b47
      Steve Naroff authored
      the prerocessor will be available via ASTContext).
      - Removed the public data member "PP" in ASTContext.
      - Changed ASTContext's contructor to take TargetInfo/IdentifierTable explicitly.
      - Implicitly create an ASTContext in Sema's constructor. This simplifies
      the clients job (and makes ASTContext more private).
      --As a side effect, added a "PrintStats" hook to Sema.
      
      To support this level of encapsulation, ASTContext is always dynamically
      allocated (by Sema). Previously, ASTContext was being allocated on the
      stack. I don't believe this should be a performance issue (since ASTContext
      is fairly course grain and tied to the lifetime of Sema currently).
      
      llvm-svn: 39345
      38d31b47
  7. Feb 27, 2007
    • Steve Naroff's avatar
      More changes to complete the dynamic type support for Stmt/Expr. · 7f890eb7
      Steve Naroff authored
      This set of changes includes:
      - convert ExprCXX.h and add to the Xcode project file.
      -- required adding CXXBoolLiteralExpr to StmtNodes.def.
      -- required adding visitor support (decl/defn).
      - make the class codes in StmtNodes.def explicit (to enable range checking).
      -- this required changing all clients of the STMT macro.
      - declare the instance data const.
      
      llvm-svn: 39344
      7f890eb7
  8. Feb 26, 2007
  9. Feb 22, 2007
  10. Feb 21, 2007
  11. Feb 13, 2007
  12. Feb 11, 2007
  13. Feb 08, 2007
  14. Jan 31, 2007
  15. Jan 30, 2007
  16. Jan 29, 2007
    • Chris Lattner's avatar
      Add support for target-specific builtins, including detecting nonportability · 10a5b387
      Chris Lattner authored
      of source code.  For example:
      
      $ clang INPUTS/carbon_h.c -arch i386 -arch ppc
      prints:
      ...
      /usr/lib/gcc/i686-apple-darwin8/4.0.1/include/mmintrin.h:51:3: note: use of a target-specific builtin function, source is not 'portable'
        __builtin_ia32_emms ();
        ^
      
      because carbon.h pulls in xmmintrin.h, and __builtin_ia32_emms isn't a builtin on ppc.
      
      Though clang now supports target-specific builtins, the full table isn't implemented yet.
      
      llvm-svn: 39328
      10a5b387
  17. Jan 28, 2007
  18. Jan 27, 2007
Loading