Skip to content
  1. May 12, 2008
  2. Mar 10, 2008
  3. Feb 26, 2008
  4. Feb 10, 2008
  5. Jan 11, 2008
    • Chris Lattner's avatar
      Simplify the side effect stuff a bit more and make licm/sinking · c8226f32
      Chris Lattner authored
      both work right according to the new flags.
      
      This removes the TII::isReallySideEffectFree predicate, and adds
      TII::isInvariantLoad. 
      
      It removes NeverHasSideEffects+MayHaveSideEffects and adds
      UnmodeledSideEffects as machine instr flags.  Now the clients
      can decide everything they need.
      
      I think isRematerializable can be implemented in terms of the
      flags we have now, though I will let others tackle that.
      
      llvm-svn: 45843
      c8226f32
  6. Jan 07, 2008
    • Chris Lattner's avatar
      rename TargetInstrDescriptor -> TargetInstrDesc. · 03ad8850
      Chris Lattner authored
      Make MachineInstr::getDesc return a reference instead
      of a pointer, since it can never be null.
      
      llvm-svn: 45695
      03ad8850
    • Chris Lattner's avatar
      Rename MachineInstr::getInstrDescriptor -> getDesc(), which reflects · a98c679d
      Chris Lattner authored
      that it is cheap and efficient to get.
      
      Move a variety of predicates from TargetInstrInfo into 
      TargetInstrDescriptor, which makes it much easier to query a predicate
      when you don't have TII around.  Now you can use MI->getDesc()->isBranch()
      instead of going through TII, and this is much more efficient anyway. Not
      all of the predicates have been moved over yet.
      
      Update old code that used MI->getInstrDescriptor()->Flags to use the
      new predicates in many places.
      
      llvm-svn: 45674
      a98c679d
  7. Jan 04, 2008
  8. Jan 02, 2008
  9. Dec 29, 2007
  10. Dec 20, 2007
  11. Dec 18, 2007
  12. Dec 12, 2007
  13. Dec 11, 2007
  14. Dec 09, 2007
  15. Dec 08, 2007
  16. Dec 07, 2007
    • Bill Wendling's avatar
      Initial commit of the machine code LICM pass. It successfully hoists this: · fb706bc5
      Bill Wendling authored
      _foo:
              li r2, 0
      LBB1_1: ; bb
              li r5, 0
              stw r5, 0(r3)
              addi r2, r2, 1
              addi r3, r3, 4
              cmplw cr0, r2, r4
              bne cr0, LBB1_1 ; bb
      LBB1_2: ; return
              blr 
      
      to:
      
      _foo:
              li r2, 0
              li r5, 0
      LBB1_1: ; bb
              stw r5, 0(r3)
              addi r2, r2, 1
              addi r3, r3, 4
              cmplw cr0, r2, r4
              bne cr0, LBB1_1 ; bb
      LBB1_2: ; return
              blr
      
      ZOMG!! :-)
      
      Moar to come...
      
      llvm-svn: 44687
      fb706bc5
Loading