Skip to content
  1. May 25, 2010
  2. May 23, 2010
  3. May 22, 2010
    • Anders Carlsson's avatar
    • Anders Carlsson's avatar
      Re-land the fix for PR7139. · c0964b60
      Anders Carlsson authored
      llvm-svn: 104446
      c0964b60
    • Douglas Gregor's avatar
      Improve our handling of reference binding for subobjects of · aae38d66
      Douglas Gregor authored
      temporaries. There are actually several interrelated fixes here:
      
        - When converting an object to a base class, it's only an lvalue
        cast when the original object was an lvalue and we aren't casting
        pointer-to-derived to pointer-to-base. Previously, we were
        misclassifying derived-to-base casts of class rvalues as lvalues,
        causing various oddities (including problems with reference binding
        not extending the lifetimes of some temporaries).
      
        - Teach the code for emitting a reference binding how to look
        through no-op casts and parentheses directly, since
        Expr::IgnoreParenNoOpCasts is just plain wrong for this. Also, make
        sure that we properly look through multiple levels of indirection
        from the temporary object, but destroy the actual temporary object;
        this fixes the reference-binding issue mentioned above.
      
        - Teach Objective-C message sends to bind the result as a temporary
          when needed. This is actually John's change, but it triggered the
          reference-binding problem above, so it's included here. Now John
          can actually test his return-slot improvements.
      
      llvm-svn: 104434
      aae38d66
    • John McCall's avatar
      Push a return-value slot throughout ObjC message-send codegen. Will be · 78a15113
      John McCall authored
      critical for ObjC++ correctness;  hard to test independently of various
      required Sema changes, though.
      
      llvm-svn: 104422
      78a15113
    • Anders Carlsson's avatar
      Unbreak self-host. · c866eb5b
      Anders Carlsson authored
      llvm-svn: 104390
      c866eb5b
  4. May 21, 2010
  5. May 20, 2010
  6. May 19, 2010
  7. May 18, 2010
  8. May 17, 2010
  9. May 16, 2010
    • Douglas Gregor's avatar
      When initializing thread-safe statics, put the call to · 51150ab1
      Douglas Gregor authored
      __cxa_guard_abort along the exceptional edge into (in effect) a nested
      "try" that rethrows after aborting. Fixes PR7144 and the remaining
      Boost.ProgramOptions failures, along with the regressions that r103880
      caused.
      
      The crucial difference between this and r103880 is that we now follow
      LLVM's little dance with the llvm.eh.exception and llvm.eh.selector
      calls, then use _Unwind_Resume_or_Rethrow to rethrow.
      
      llvm-svn: 103892
      51150ab1
Loading