Skip to content
  1. Feb 11, 2009
  2. Feb 05, 2009
  3. Jan 30, 2009
  4. Jan 29, 2009
    • Douglas Gregor's avatar
      Make CodeGen produce an error if we come across a non-constant initializer... · bf7207a1
      Douglas Gregor authored
      Make CodeGen produce an error if we come across a non-constant initializer list that involves the GNU array-range designator extension
      
      llvm-svn: 63327
      bf7207a1
    • Douglas Gregor's avatar
      Introduce a new expression node, ImplicitValueInitExpr, that · 0202cb40
      Douglas Gregor authored
      represents an implicit value-initialization of a subobject of a
      particular type. This replaces the (ab)use of CXXZeroValueInitExpr
      within initializer lists for the "holes" that occur due to the use of
      C99 designated initializers.
      
      The new test case is currently XFAIL'd, because CodeGen's
      ConstExprEmitter (in lib/CodeGen/CGExprConstant.cpp) needs to be
      taught to value-initialize when it sees ImplicitValueInitExprs.
      
      llvm-svn: 63317
      0202cb40
  5. Jan 28, 2009
    • Douglas Gregor's avatar
      Code generation support for C99 designated initializers. · 347f7eab
      Douglas Gregor authored
      The approach I've taken in this patch is relatively straightforward,
      although the code itself is non-trivial. Essentially, as we process
      an initializer list we build up a fully-explicit representation of the
      initializer list, where each of the subobject initializations occurs
      in order. Designators serve to "fill in" subobject initializations in
      a non-linear way. The fully-explicit representation makes initializer
      lists (both with and without designators) easy to grok for codegen and
      later semantic analyses. We keep the syntactic form of the initializer
      list linked into the AST for those clients interested in exactly what
      the user wrote.
      
      Known limitations:
        - Designating a member of a union that isn't the first member may
          result in bogus initialization (we warn about this)
        - GNU array-range designators are not supported (we warn about this)
      
      llvm-svn: 63242
      347f7eab
  6. Jan 24, 2009
  7. Jan 23, 2009
  8. Jan 20, 2009
  9. Jan 18, 2009
  10. Jan 16, 2009
  11. Jan 12, 2009
  12. Jan 09, 2009
  13. Dec 21, 2008
  14. Dec 13, 2008
  15. Dec 12, 2008
  16. Dec 02, 2008
  17. Nov 22, 2008
  18. Nov 19, 2008
  19. Nov 16, 2008
  20. Nov 13, 2008
    • Daniel Dunbar's avatar
      Normalize many BasicBlock names. · a612e79b
      Daniel Dunbar authored
       - Use dotted notation for blocks related to a particular statement
         type.
       - Use .end for landing pads.
      
      No functionality change in NDEBUG mode. :)
      
      llvm-svn: 59210
      a612e79b
  21. Nov 12, 2008
  22. Nov 11, 2008
Loading