Skip to content
  1. Jul 12, 2011
    • Bill Wendling's avatar
      Revert r134893 and r134888 (and related patches in other trees). It was causing · a78cd228
      Bill Wendling authored
      an assert on Darwin llvm-gcc builds.
      
      Assertion failed: (castIsValid(op, S, Ty) && "Invalid cast!"), function Create, file /Users/buildslave/zorg/buildbot/smooshlab/slave-0.8/build.llvm-gcc-i386-darwin9-RA/llvm.src/lib/VMCore/Instructions.cpp, li\
      ne 2067.
      etc.
      
      http://smooshlab.apple.com:8013/builders/llvm-gcc-i386-darwin9-RA/builds/2354
      
      --- Reverse-merging r134893 into '.':
      U    include/llvm/Target/TargetData.h
      U    include/llvm/DerivedTypes.h
      U    tools/bugpoint/ExtractFunction.cpp
      U    unittests/Support/TypeBuilderTest.cpp
      U    lib/Target/ARM/ARMGlobalMerge.cpp
      U    lib/Target/TargetData.cpp
      U    lib/VMCore/Constants.cpp
      U    lib/VMCore/Type.cpp
      U    lib/VMCore/Core.cpp
      U    lib/Transforms/Utils/CodeExtractor.cpp
      U    lib/Transforms/Instrumentation/ProfilingUtils.cpp
      U    lib/Transforms/IPO/DeadArgumentElimination.cpp
      U    lib/CodeGen/SjLjEHPrepare.cpp
      --- Reverse-merging r134888 into '.':
      G    include/llvm/DerivedTypes.h
      U    include/llvm/Support/TypeBuilder.h
      U    include/llvm/Intrinsics.h
      U    unittests/Analysis/ScalarEvolutionTest.cpp
      U    unittests/ExecutionEngine/JIT/JITTest.cpp
      U    unittests/ExecutionEngine/JIT/JITMemoryManagerTest.cpp
      U    unittests/VMCore/PassManagerTest.cpp
      G    unittests/Support/TypeBuilderTest.cpp
      U    lib/Target/MBlaze/MBlazeIntrinsicInfo.cpp
      U    lib/Target/Blackfin/BlackfinIntrinsicInfo.cpp
      U    lib/VMCore/IRBuilder.cpp
      G    lib/VMCore/Type.cpp
      U    lib/VMCore/Function.cpp
      G    lib/VMCore/Core.cpp
      U    lib/VMCore/Module.cpp
      U    lib/AsmParser/LLParser.cpp
      U    lib/Transforms/Utils/CloneFunction.cpp
      G    lib/Transforms/Utils/CodeExtractor.cpp
      U    lib/Transforms/Utils/InlineFunction.cpp
      U    lib/Transforms/Instrumentation/GCOVProfiling.cpp
      U    lib/Transforms/Scalar/ObjCARC.cpp
      U    lib/Transforms/Scalar/SimplifyLibCalls.cpp
      U    lib/Transforms/Scalar/MemCpyOptimizer.cpp
      G    lib/Transforms/IPO/DeadArgumentElimination.cpp
      U    lib/Transforms/IPO/ArgumentPromotion.cpp
      U    lib/Transforms/InstCombine/InstCombineCompares.cpp
      U    lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
      U    lib/Transforms/InstCombine/InstCombineCalls.cpp
      U    lib/CodeGen/DwarfEHPrepare.cpp
      U    lib/CodeGen/IntrinsicLowering.cpp
      U    lib/Bitcode/Reader/BitcodeReader.cpp
      
      llvm-svn: 134949
      a78cd228
  2. Jul 11, 2011
  3. Jun 01, 2011
    • Bill Wendling's avatar
      The ARM stuff already calls the Resume function, not the Resume_or_Rethrow. It · 48581a64
      Bill Wendling authored
      turns out that it could cause an infinite loop in some situations. If this code
      is triggered and it converts a cleanup into a catchall, but that cleanup was in
      already in a cleanup, then the _Unwind_SjLj_Resume could infinite loop. I.e.,
      the code doesn't consume the exception object and passes it on to
      _Unwind_SjLj_Resume. But _USjLjR expects it to be consumed (since it's landing
      at a catchall instead of a cleanup). So it uses the values that are presently
      there, which are the values that tell it to jump to the fake landing pad.
      <rdar://problem/9508402>
      
      llvm-svn: 132381
      48581a64
  4. May 28, 2011
    • Benjamin Kramer's avatar
      Erase instructions _after_ checking their type. · e260b2b0
      Benjamin Kramer authored
      llvm-svn: 132256
      e260b2b0
    • John McCall's avatar
      Implement and document the llvm.eh.resume intrinsic, which is · 046c47e9
      John McCall authored
      transformed by the inliner into a branch to the enclosing landing pad
      (when inlined through an invoke).  If not so optimized, it is lowered
      DWARF EH preparation into a call to _Unwind_Resume (or _Unwind_SjLj_Resume
      as appropriate).  Its chief advantage is that it takes both the
      exception value and the selector value as arguments, meaning that there
      is zero effort in recovering these;  however, the frontend is required
      to pass these down, which is not actually particularly difficult.
      
      Also document the behavior of landing pads a bit better, and make it
      clearer that it's okay that personality functions don't always land at
      landing pads.  This is just a fact of life.  Don't write optimizations that
      rely on pushing things over an unwind edge.
      
      llvm-svn: 132253
      046c47e9
  5. Mar 30, 2011
  6. Mar 15, 2011
  7. Oct 29, 2010
  8. Oct 19, 2010
    • Owen Anderson's avatar
      Get rid of static constructors for pass registration. Instead, every pass... · 6c18d1aa
      Owen Anderson authored
      Get rid of static constructors for pass registration.  Instead, every pass exposes an initializeMyPassFunction(), which
      must be called in the pass's constructor.  This function uses static dependency declarations to recursively initialize
      the pass's dependencies.
      
      Clients that only create passes through the createFooPass() APIs will require no changes.  Clients that want to use the
      CommandLine options for passes will need to manually call the appropriate initialization functions in PassInitialization.h
      before parsing commandline arguments.
      
      I have tested this with all standard configurations of clang and llvm-gcc on Darwin.  It is possible that there are problems
      with the static dependencies that will only be visible with non-standard options.  If you encounter any crash in pass
      registration/creation, please send the testcase to me directly.
      
      llvm-svn: 116820
      6c18d1aa
  9. Sep 03, 2010
  10. Sep 01, 2010
  11. Aug 31, 2010
  12. Aug 30, 2010
  13. Aug 29, 2010
  14. Aug 06, 2010
  15. Jul 27, 2010
  16. Jul 26, 2010
  17. Jul 22, 2010
  18. Jul 01, 2010
  19. Jun 29, 2010
  20. Jun 28, 2010
  21. Jun 25, 2010
  22. Jun 24, 2010
  23. Jun 18, 2010
  24. Jun 12, 2010
  25. Apr 19, 2010
  26. Apr 17, 2010
  27. Apr 16, 2010
  28. Apr 15, 2010
Loading