Skip to content
  1. Mar 31, 2011
  2. Mar 30, 2011
    • Bill Wendling's avatar
      * The DSE code that tested for overlapping needed to take into account the fact · 5034159c
      Bill Wendling authored
        that one of the numbers is signed while the other is unsigned. This could lead
        to a wrong result when the signed was promoted to an unsigned int.
      
      * Add the data layout line to the testcase so that it will test the appropriate
        thing.
      
      Patch by David Terei!
      
      llvm-svn: 128577
      5034159c
    • Akira Hatanaka's avatar
      fixed typo · 4e9ca1b3
      Akira Hatanaka authored
      llvm-svn: 128574
      4e9ca1b3
    • Jakob Stoklund Olesen's avatar
      Don't add the same analysis implementation pair twice. · aab97dce
      Jakob Stoklund Olesen authored
      Prevent infinite growth of the list.
      
      Patch by José Fonseca!
      
      llvm-svn: 128568
      aab97dce
    • Jakob Stoklund Olesen's avatar
      Reset StringMap's NumTombstones on clears and rehashes. · 846f9508
      Jakob Stoklund Olesen authored
      StringMap was not properly updating NumTombstones after a clear or rehash.
      
      This was not fatal until now because the table was growing faster than
      NumTombstones could, but with the previous change of preventing infinite
      growth of the table the invariant (NumItems + NumTombstones <= NumBuckets)
      stopped being observed, causing infinite loops in certain situations.
      
      Patch by José Fonseca!
      
      llvm-svn: 128567
      846f9508
    • Jakob Stoklund Olesen's avatar
      Prevent infinite growth of SmallPtrSet instances. · bdc1b012
      Jakob Stoklund Olesen authored
      Rehash but don't grow when full of tombstones.
      
      Patch by José Fonseca!
      
      llvm-svn: 128566
      bdc1b012
    • Jakob Stoklund Olesen's avatar
      Prevent infinite growth of SmallMap instances. · f587f441
      Jakob Stoklund Olesen authored
      Rehash but don't grow when full of tombstones.
      
      Patch by José Fonseca!
      
      llvm-svn: 128565
      f587f441
    • Jakob Stoklund Olesen's avatar
      Prevent infinite growth of the DenseMap. · 5ca05e18
      Jakob Stoklund Olesen authored
      When the hash function uses object pointers all free entries eventually
      become tombstones as they are used at least once, regardless of the size.
      
      DenseMap cannot function with zero empty keys, so it double size to get
      get ridof the tombstones.
      
      However DenseMap never shrinks automatically unless it is cleared, so
      the net result is that certain tables grow infinitely.
      
      The solution is to make a fresh copy of the table without tombstones
      instead of doubling size, by simply calling grow with the current size.
      
      Patch by José Fonseca!
      
      llvm-svn: 128564
      5ca05e18
    • Jakob Stoklund Olesen's avatar
      Fix evil VirtRegRewriter bug. · ae917a37
      Jakob Stoklund Olesen authored
      The rewriter can keep track of multiple stack slots in the same register if they
      happen to have the same value. When an instruction modifies a stack slot by
      defining a register that is mapped to a stack slot, other stack slots in that
      register are no longer valid.
      
      This is a very rare problem, and I don't have a simple test case. I get the
      impression that VirtRegRewriter knows it is about to be deleted, inventing a
      last opaque problem.
      
      <rdar://problem/9204040>
      
      llvm-svn: 128562
      ae917a37
Loading