Skip to content
  1. Oct 12, 2010
  2. Oct 11, 2010
  3. Oct 08, 2010
  4. Sep 25, 2010
  5. Aug 17, 2010
  6. Aug 12, 2010
  7. Aug 03, 2010
  8. Jul 22, 2010
  9. Jul 16, 2010
  10. Jul 09, 2010
  11. Jul 08, 2010
  12. Jul 07, 2010
  13. Jul 03, 2010
  14. Jun 26, 2010
  15. Jun 24, 2010
  16. Jun 19, 2010
  17. Jun 16, 2010
    • Jakob Stoklund Olesen's avatar
      Allow a register to be redefined multiple times in a basic block. · 207cd4bb
      Jakob Stoklund Olesen authored
      LiveVariableAnalysis was a bit picky about a register only being redefined once,
      but that really isn't necessary.
      
      Here is an example of chained INSERT_SUBREGs that we can handle now:
      
      68      %reg1040<def> = INSERT_SUBREG %reg1040, %reg1028<kill>, 14
                      register: %reg1040 +[70,134:0)
      76      %reg1040<def> = INSERT_SUBREG %reg1040, %reg1029<kill>, 13
                      register: %reg1040 replace range with [70,78:1) RESULT: %reg1040,0.000000e+00 = [70,78:1)[78,134:0)  0@78-(134) 1@70-(78)
      84      %reg1040<def> = INSERT_SUBREG %reg1040, %reg1030<kill>, 12
                      register: %reg1040 replace range with [78,86:2) RESULT: %reg1040,0.000000e+00 = [70,78:1)[78,86:2)[86,134:0)  0@86-(134) 1@70-(78) 2@78-(86)
      92      %reg1040<def> = INSERT_SUBREG %reg1040, %reg1031<kill>, 11
                      register: %reg1040 replace range with [86,94:3) RESULT: %reg1040,0.000000e+00 = [70,78:1)[78,86:2)[86,94:3)[94,134:0)  0@94-(134) 1@70-(78) 2@78-(86) 3@86-(94)
      
      rdar://problem/8096390
      
      llvm-svn: 106152
      207cd4bb
  18. Jun 03, 2010
  19. May 21, 2010
  20. May 20, 2010
  21. May 17, 2010
  22. May 15, 2010
  23. May 10, 2010
  24. May 05, 2010
    • Evan Cheng's avatar
      Teach liveintervalanalysis about virtual registers which are defined by... · 38d9a6f8
      Evan Cheng authored
      Teach liveintervalanalysis about virtual registers which are defined by reg_sequence instructions that are formed by registers defined by distinct instructions. e.g.
      80      %reg1041:6<def> = VSHRNv4i16 %reg1034<kill>, 12, pred:14, pred:%reg0
      . . .
      120     %reg1041:5<def> = VSHRNv4i16 %reg1039<kill>, 12, pred:14, pred:%reg0
      
      llvm-svn: 103102
      38d9a6f8
  25. May 04, 2010
    • Evan Cheng's avatar
      Teach PHI elimination to remove REG_SEQUENCE instructions and update... · 4c908f41
      Evan Cheng authored
      Teach PHI elimination to remove REG_SEQUENCE instructions and update references of the source operands with references of the destination with subreg indices. e.g.
      %reg1029<def>, %reg1030<def> = VLD1q16 %reg1024<kill>, ...
      %reg1031<def> = REG_SEQUENCE %reg1029<kill>, 5, %reg1030<kill>, 6
      =>
      %reg1031:5<def>, %reg1031:6<def> = VLD1q16 %reg1024<kill>, ...
      
      PHI elimination now does more than phi elimination. It is really a de-SSA pass.
      
      llvm-svn: 103039
      4c908f41
Loading