Skip to content
  1. Aug 13, 2004
  2. Aug 12, 2004
  3. Aug 04, 2004
  4. Jul 31, 2004
  5. Jul 29, 2004
  6. Jul 21, 2004
  7. Jul 20, 2004
  8. Jul 18, 2004
  9. Jul 15, 2004
  10. Jul 04, 2004
  11. Jun 23, 2004
  12. Jun 21, 2004
  13. Jun 20, 2004
  14. Jun 19, 2004
    • Chris Lattner's avatar
      Change to use the StableBasicBlockNumbering class · 4db0f826
      Chris Lattner authored
      llvm-svn: 14247
      4db0f826
    • Chris Lattner's avatar
      Do not let the numbering of PHI nodes placed in the function depend on · a52ab6f5
      Chris Lattner authored
      non-deterministic things like the ordering of blocks in the dominance
      frontier of a BB.  Unfortunately, I don't know of a better way to solve
      this problem than to explicitly sort the BB's in function-order before
      processing them.  This is guaranteed to slow the pass down a bit, but
      is absolutely necessary to get usable diffs between two different tools
      executing the mem2reg or scalarrepl pass.
      
      Before this, bazillions of spurious diff failures occurred all over the
      place due to the different order of processing PHIs:
      
      -       %tmp.111 = getelementptr %struct.Connector_struct* %upcon.0.0, uint 0, uint 0
      +       %tmp.111 = getelementptr %struct.Connector_struct* %upcon.0.1, uint 0, uint 0
      
      Now, the diffs match.
      
      llvm-svn: 14244
      a52ab6f5
    • Chris Lattner's avatar
      Do not sort by the address of LLVM ConstantInt* objects. This produces · b2b151d2
      Chris Lattner authored
      nondeterministic results that depend on where these objects land in memory.
      Instead, sort by the value of the constant, which is stable.
      
      Before this patch, the -simplifycfg pass run from two different compilers
      could cause different code to be generated, though it was semantically the
      same:
      
      @@ -12258,8 +12258,8 @@
              %s_addr.1 = phi sbyte* [ %s, %entry ], [ %inc.0, %no_exit ]             ; <sbyte*> [#uses=5]
              %tmp.1 = load sbyte* %s_addr.1          ; <sbyte> [#uses=1]
              switch sbyte %tmp.1, label %no_exit [
      -                sbyte 0, label %loopexit
                       sbyte 46, label %loopexit
      +                sbyte 0, label %loopexit
              ]
      
      We need to stomp all of this stuff out.
      
      llvm-svn: 14243
      b2b151d2
  15. Jun 18, 2004
  16. Jun 17, 2004
  17. Jun 16, 2004
  18. Jun 15, 2004
  19. Jun 14, 2004
  20. Jun 13, 2004
  21. Jun 11, 2004
  22. May 27, 2004
  23. May 26, 2004
  24. May 25, 2004
  25. May 19, 2004
Loading