Skip to content
  1. Dec 20, 2010
  2. Dec 19, 2010
  3. Dec 18, 2010
  4. Dec 17, 2010
  5. Dec 16, 2010
  6. Dec 15, 2010
  7. Dec 14, 2010
    • Evan Cheng's avatar
      Fix a minor bug in two-address pass. It was missing a commute opportunity. · 19dc77ce
      Evan Cheng authored
      regB = move RCX
      regA = op regB, regC
      RAX  = move regA
      where both regB and regC are killed. If regB is constrainted to non-compatible
      physical registers but regC is not constrainted at all, then it's better to
      commute the instruction.
             movl    %edi, %eax
             shlq    $32, %rcx
             leaq    (%rcx,%rax), %rax
      =>
             movl    %edi, %eax
             shlq    $32, %rcx
             orq     %rcx, %rax
      rdar://8762995
      
      llvm-svn: 121793
      19dc77ce
Loading