Skip to content
  1. Mar 20, 2007
    • Evan Cheng's avatar
      New entry. · 39eb62ea
      Evan Cheng authored
      llvm-svn: 35206
      39eb62ea
    • Evan Cheng's avatar
      Added MRegisterInfo hook to re-materialize an instruction. · 61f39d18
      Evan Cheng authored
      llvm-svn: 35205
      61f39d18
    • Chris Lattner's avatar
      Two changes: · 3e1d917e
      Chris Lattner authored
      1) codegen a shift of a register as a shift, not an LEA.
      2) teach the RA to convert a shift to an LEA instruction if it wants something
         in three-address form.
      
      This gives us asm diffs like:
      
      -       leal (,%eax,4), %eax
      +       shll $2, %eax
      
      which is faster on some processors and smaller on all of them.
      
      and, more interestingly:
      
      -       movl 24(%esi), %eax
      -       leal (,%eax,4), %edi
      +       movl 24(%esi), %edi
      +       shll $2, %edi
      
      Without #2, #1 was a significant pessimization in some cases.
      
      This implements CodeGen/X86/shift-codegen.ll
      
      llvm-svn: 35204
      3e1d917e
    • Chris Lattner's avatar
      fix indentation · f806e1cd
      Chris Lattner authored
      llvm-svn: 35202
      f806e1cd
    • Dale Johannesen's avatar
      fix obvious comment bug · 8447d349
      Dale Johannesen authored
      llvm-svn: 35196
      8447d349
  2. Mar 19, 2007
  3. Mar 18, 2007
    • Chris Lattner's avatar
      minor updates · 9b3e2b4a
      Chris Lattner authored
      llvm-svn: 35143
      9b3e2b4a
    • Nick Lewycky's avatar
      This is implemented. We now generate: · f7644419
      Nick Lewycky authored
      entry:
              icmp ugt i32 %x, 4              ; <i1>:0 [#uses=1]
              br i1 %0, label %cond_true, label %cond_false
      
      cond_true:              ; preds = %entry
              %tmp1 = tail call i32 (...)* @bar( i32 12 )             ; <i32> [#uses=0]
              ret void
      
      cond_false:             ; preds = %entry
              switch i32 %x, label %cond_true15 [
                       i32 4, label %cond_true3
                       i32 3, label %cond_true7
                       i32 2, label %cond_true11
                       i32 0, label %cond_false17
              ]
      
      ...
      
      llvm-svn: 35142
      f7644419
  4. Mar 17, 2007
  5. Mar 16, 2007
  6. Mar 15, 2007
  7. Mar 14, 2007
  8. Mar 13, 2007
  9. Mar 12, 2007
  10. Mar 10, 2007
  11. Mar 09, 2007
  12. Mar 08, 2007
Loading