Skip to content
  1. Jul 11, 2009
    • Torok Edwin's avatar
      assert(0) -> LLVM_UNREACHABLE. · 56d06597
      Torok Edwin authored
      Make llvm_unreachable take an optional string, thus moving the cerr<< out of
      line.
      LLVM_UNREACHABLE is now a simple wrapper that makes the message go away for
      NDEBUG builds.
      
      llvm-svn: 75379
      56d06597
  2. Jun 30, 2009
    • Evan Cheng's avatar
      Add a bit IsUndef to MachineOperand. This indicates the def / use register... · 0dc101b8
      Evan Cheng authored
      Add a bit IsUndef to MachineOperand. This indicates the def / use register operand is defined by an implicit_def. That means it can def / use any register and passes (e.g. register scavenger) can feel free to ignore them.
      
      The register allocator, when it allocates a register to a virtual register defined by an implicit_def, can allocate any physical register without worrying about overlapping live ranges. It should mark all of operands of the said virtual register so later passes will do the right thing.
      
      This is not the best solution. But it should be a lot less fragile to having the scavenger try to track what is defined by implicit_def.
      
      llvm-svn: 74518
      0dc101b8
  3. Jun 24, 2009
  4. Jun 05, 2009
  5. May 01, 2009
  6. Apr 29, 2009
  7. Apr 15, 2009
  8. Apr 10, 2009
  9. Apr 09, 2009
  10. Mar 23, 2009
  11. Mar 19, 2009
  12. Feb 19, 2009
  13. Jan 28, 2009
  14. Dec 23, 2008
  15. Dec 18, 2008
  16. Dec 09, 2008
  17. Dec 05, 2008
  18. Nov 18, 2008
  19. Oct 10, 2008
  20. Oct 03, 2008
  21. Oct 02, 2008
  22. Sep 24, 2008
  23. Sep 17, 2008
    • Dale Johannesen's avatar
      Add a bit to mark operands of asm's that conflict · f8610ebe
      Dale Johannesen authored
      with an earlyclobber operand elsewhere.  Propagate
      this bit and the earlyclobber bit through SDISel.
      Change linear-scan RA not to allocate regs in a way 
      that conflicts with an earlyclobber.  See also comments.
      
      llvm-svn: 56290
      f8610ebe
  24. Sep 14, 2008
  25. Sep 13, 2008
    • Dan Gohman's avatar
      Remove isImm(), isReg(), and friends, in favor of · 38453eeb
      Dan Gohman authored
      isImmediate(), isRegister(), and friends, to avoid confusion
      about having two different names with the same meaning. I'm
      not attached to the longer names, and would be ok with
      changing to the shorter names if others prefer it.
      
      llvm-svn: 56189
      38453eeb
  26. Sep 12, 2008
  27. Sep 03, 2008
    • Dan Gohman's avatar
      Fix addRegisterDead and addRegisterKilled to be more thorough · c7367b45
      Dan Gohman authored
      when searching for redundant subregister dead/kill bits.
      
      Previously it was common to see instructions marked like this:
        "RET %EAX<imp-use,kill>, %AX<imp-use,kill>"
      
      With this change, addRegisterKilled continues scanning after
      finding the %EAX operand, so it proceeds to discover the
      redundant %AX kill and eliminates it, producing this:
        "RET %EAX<imp-use,kill>"
      
      This currently has no effect on the generated code.
      
      llvm-svn: 55698
      c7367b45
  28. Aug 30, 2008
  29. Aug 27, 2008
  30. Aug 24, 2008
  31. Aug 20, 2008
  32. Aug 15, 2008
  33. Aug 14, 2008
Loading