Skip to content
  1. Jun 18, 2010
    • Stuart Hastings's avatar
      Add a DebugLoc parameter to TargetInstrInfo::InsertBranch(). This · 0125b641
      Stuart Hastings authored
      addresses a longstanding deficiency noted in many FIXMEs scattered
      across all the targets.
      
      This effectively moves the problem up one level, replacing eleven
      FIXMEs in the targets with eight FIXMEs in CodeGen, plus one path
      through FastISel where we actually supply a DebugLoc, fixing Radar
      7421831.
      
      llvm-svn: 106243
      0125b641
  2. Apr 13, 2010
  3. Apr 01, 2010
  4. Mar 30, 2010
  5. Mar 13, 2010
  6. Mar 10, 2010
  7. Feb 17, 2010
  8. Feb 10, 2010
  9. Feb 09, 2010
  10. Jan 26, 2010
  11. Jan 20, 2010
  12. Jan 15, 2010
  13. Jan 05, 2010
    • David Greene's avatar
      · 6c56cefe
      David Greene authored
      Change errs() to dbgs().
      
      llvm-svn: 92542
      6c56cefe
  14. Dec 16, 2009
  15. Dec 15, 2009
  16. Dec 14, 2009
  17. Dec 11, 2009
    • Bill Wendling's avatar
      Don't try to move a MBB into the fall-through position if it's a landing pad or · b87b9925
      Bill Wendling authored
      branches only to a landing pad. Without this check, the compiler would go into
      an infinite loop because the branch to a landing pad is an "abnormal" edge which
      wasn't being taken into account.
      
      This is the meat of that fix:
      
        if (!PrevBB.canFallThrough() && !MBB->BranchesToLandingPad(MBB)) {
      
      The other stuff is simplification of the "branches to a landing pad" code.
      
      llvm-svn: 91161
      b87b9925
    • Bill Wendling's avatar
      Revert part of r91101 which was causing an infinite loop in the self-hosting · 9f13fc7d
      Bill Wendling authored
      build bots.
      
      llvm-svn: 91113
      9f13fc7d
    • Bill Wendling's avatar
      Address comments on last patch: · a1bce0c4
      Bill Wendling authored
      - Loosen the restrictions when checking of it branches to a landing pad.
      - Make the loop more efficient by checking the '.insert' return value.
      - Do cheaper checks first.
      
      llvm-svn: 91101
      a1bce0c4
    • Bill Wendling's avatar
      A machine basic block may end in an unconditional branch, however it may have · a581aacd
      Bill Wendling authored
      more than one successor. Normally, these extra successors are dead. However,
      some of them may branch to exception handling landing pads. If we remove those
      successors, then the landing pads could go away if all predecessors to it are
      removed. Before, it was checking if the direct successor was the landing
      pad. But it could be the result of jumping through multiple basic blocks to get
      to it. If we were to only check for the existence of an EH_LABEL in the basic
      block and not remove successors if it's in there, then it could stop actually
      dead basic blocks from being removed.
      
      llvm-svn: 91092
      a581aacd
  18. Dec 05, 2009
  19. Dec 03, 2009
  20. Nov 26, 2009
    • Bob Wilson's avatar
      Split tail duplication into a separate pass. This is needed to avoid · 2d4ff12d
      Bob Wilson authored
      running tail duplication when doing branch folding for if-conversion, and
      we also want to be able to run tail duplication earlier to fix some
      reg alloc problems.  Move the CanFallThrough function from BranchFolding
      to MachineBasicBlock so that it can be shared by TailDuplication.
      
      llvm-svn: 89904
      2d4ff12d
  21. Nov 22, 2009
  22. Nov 20, 2009
  23. Nov 17, 2009
  24. Nov 12, 2009
  25. Nov 11, 2009
    • Dan Gohman's avatar
      Add support for tail duplication to BranchFolding, and extend · 64b5d0f4
      Dan Gohman authored
      tail merging support to handle more cases.
       - Recognize several cases where tail merging is beneficial even when
         the tail size is smaller than the generic threshold.
       - Make use of MachineInstrDesc::isBarrier to help detect
         non-fallthrough blocks.
       - Check for and avoid disrupting fall-through edges in more cases.
      
      llvm-svn: 86871
      64b5d0f4
  26. Oct 31, 2009
    • Dan Gohman's avatar
      Make -print-machineinstrs more readable. · 34341e69
      Dan Gohman authored
       - Be consistent when referring to MachineBasicBlocks: BB#0.
       - Be consistent when referring to virtual registers: %reg1024.
       - Be consistent when referring to unknown physical registers: %physreg10.
       - Be consistent when referring to known physical registers: %RAX
       - Be consistent when referring to register 0: %reg0
       - Be consistent when printing alignments: align=16
       - Print jump table contents.
       - Don't print host addresses, in general.
       - and various other cleanups.
      
      llvm-svn: 85682
      34341e69
  27. Oct 30, 2009
  28. Aug 23, 2009
  29. Aug 18, 2009
Loading