Skip to content
  1. Jul 24, 2012
  2. Jul 23, 2012
  3. Jul 22, 2012
  4. Jul 21, 2012
  5. Jul 20, 2012
    • Galina Kistanova's avatar
      Fix few warnings. · 434efb29
      Galina Kistanova authored
      llvm-svn: 160576
      434efb29
    • Jakob Stoklund Olesen's avatar
      Avoid folding loads that are unsafe to move. · e2cfd0d4
      Jakob Stoklund Olesen authored
      LiveRangeEdit::foldAsLoad() can eliminate a register by folding a load
      into its only use. Only do that when the load is safe to move, and it
      won't extend any live ranges.
      
      This fixes PR13414.
      
      llvm-svn: 160575
      e2cfd0d4
    • Chandler Carruth's avatar
      Fix a dangling StringRef bug in the auto upgrader. In one case, we reset · 1f41bf0c
      Chandler Carruth authored
      CI's name, and then used the StringRef pointing at its old name. I'm
      fixing it by storing the name in a std::string, and hoisting the
      renaming logic to happen always. This is nicer anyways as it will allow
      the upgraded IR to have the same names as the input IR in more cases.
      
      Another bug found by AddressSanitizer. Woot.
      
      llvm-svn: 160572
      1f41bf0c
    • Jakob Stoklund Olesen's avatar
      Split loop exiting edges more aggressively. · f62c07f1
      Jakob Stoklund Olesen authored
      PHIElimination splits critical edges when it predicts it can resolve
      interference and eliminate copies. It doesn't split the edge if the
      interference wouldn't be resolved anyway because the phi-use register is
      live in the critical edge anyway.
      
      Teach PHIElimination to split loop exiting edges with interference, even
      if it wouldn't resolve the interference. This removes the necessary
      copies from the loop, which is still an improvement from injecting the
      copies into the loop.
      
      The test case demonstrates the improvement. Before:
      
      LBB0_1:
        cmpb  $0, (%rdx)
        leaq  1(%rdx), %rdx
        movl  %esi, %eax
        je  LBB0_1
      
      After:
      
      LBB0_1:
        cmpb  $0, (%rdx)
        leaq  1(%rdx), %rdx
        je  LBB0_1
      
        movl  %esi, %eax
      
      llvm-svn: 160571
      f62c07f1
    • Benjamin Kramer's avatar
      Try to unbreak the windows build. · dfaa0f3a
      Benjamin Kramer authored
      llvm-svn: 160567
      dfaa0f3a
Loading