Skip to content
  1. Nov 02, 2006
  2. Nov 01, 2006
  3. Oct 31, 2006
  4. Oct 30, 2006
  5. Oct 29, 2006
    • Chris Lattner's avatar
      Make CanFallThrough more intelligent (so it can handle blocks with (e.g.) no · 504eeda3
      Chris Lattner authored
      successors), and make island block movement more general.
      
      This compiles CodeGen/X86/2006-04-27-ISelFoldingBug.ll to:
      
      _loadAndRLEsource_no_exit_2E_1_label_2E_0:
              subl $8, %esp
              movl %esi, 4(%esp)
              movl %ebx, (%esp)
              movl 16(%esp), %eax
              movl 12(%esp), %ecx
      LBB1_3: #label.0
              movl _last, %edx
              movl %edx, %esi
              incl %esi
              movl %esi, _last
              movl %ecx, %ebx
              # TRUNCATE movb %bl, %bl
              movl _block, %esi
              movb %bl, 1(%esi,%edx)
              cmpl %eax, _last
              jge LBB1_2      #codeRepl5.exitStub
      LBB1_4: #label.0
              cmpl $257, %ecx
              je LBB1_2       #codeRepl5.exitStub
      LBB1_1: #label.0.no_exit.1_crit_edge.exitStub
              movl $1, %eax
              movl (%esp), %ebx
              movl 4(%esp), %esi
              addl $8, %esp
              ret
      LBB1_2: #codeRepl5.exitStub
              xorl %eax, %eax
              movl (%esp), %ebx
              movl 4(%esp), %esi
              addl $8, %esp
              ret
      
      instead of:
      
      _loadAndRLEsource_no_exit_2E_1_label_2E_0:
              subl $8, %esp
              movl %esi, 4(%esp)
              movl %ebx, (%esp)
              movl 16(%esp), %eax
              movl 12(%esp), %ecx
              jmp LBB1_3      #label.0
      LBB1_1: #label.0.no_exit.1_crit_edge.exitStub
              movl $1, %eax
              movl (%esp), %ebx
              movl 4(%esp), %esi
              addl $8, %esp
              ret
      LBB1_2: #codeRepl5.exitStub
              xorl %eax, %eax
              movl (%esp), %ebx
              movl 4(%esp), %esi
              addl $8, %esp
              ret
      LBB1_3: #label.0
              movl _last, %edx
              movl %edx, %esi
              incl %esi
              movl %esi, _last
              movl %ecx, %ebx
              # TRUNCATE movb %bl, %bl
              movl _block, %esi
              movb %bl, 1(%esi,%edx)
              cmpl %eax, _last
              jge LBB1_2      #codeRepl5.exitStub
      LBB1_4: #label.0
              cmpl $257, %ecx
              jne LBB1_1      #label.0.no_exit.1_crit_edge.exitStub
              jmp LBB1_2      #codeRepl5.exitStub
      
      ... which is much better layout :)
      
      llvm-svn: 31282
      504eeda3
    • Chris Lattner's avatar
      fix Generic/2006-10-29-Crash.ll · e60ae823
      Chris Lattner authored
      llvm-svn: 31281
      e60ae823
    • Chris Lattner's avatar
      Fix a load folding issue that Evan noticed: there is no need to export values · f31b9ef4
      Chris Lattner authored
      used by comparisons in the main block.
      
      llvm-svn: 31279
      f31b9ef4
    • Evan Cheng's avatar
      VLOAD is not the LoadSDNode opcode. · 7ab6123c
      Evan Cheng authored
      llvm-svn: 31276
      7ab6123c
    • Nick Lewycky's avatar
      Remove spurious case. EXTLOAD is not one of the node opcodes. · dc146a9f
      Nick Lewycky authored
      llvm-svn: 31275
      dc146a9f
  6. Oct 28, 2006
Loading