1. 15 Jun, 2012 1 commit
    • Matthias Braun's avatar
      split graph state into properties and constraints · b2008e0b
      Matthias Braun authored
      graph_properties are things that a transformation may destroy but which
      can be easily recalculated.
      
      graph_constraints are set after lowering phases have been running and
      forbid certain constructs that no (later) transformation is allowed to construct
      b2008e0b
  2. 10 Nov, 2011 1 commit
  3. 02 Nov, 2011 1 commit
    • Matthias Braun's avatar
      introduce Switch node · 1c89dc2a
      Matthias Braun authored
      This is the new way of handling switch-jumps. The node contains a table
      which maps (ranges of) input values to proj numbers. Compared to a
      Cond-node this results in a clean consecutive sequence of Proj numbers
      (no searching for a free number for the default_pn anymore) and allows
      factoring multiple cases jumping to the same block in a single Proj
      (though we still need the optimisation in cfopt for that).
      1c89dc2a
  4. 20 Sep, 2011 2 commits
  5. 15 Sep, 2011 1 commit
  6. 14 Sep, 2011 1 commit
  7. 10 Jun, 2011 2 commits
    • Andreas Zwinkau's avatar
      improve jumpthreading comments · 978df701
      Andreas Zwinkau authored
      978df701
    • Andreas Zwinkau's avatar
      Revert "jumpthreading must not split edges" · 763b7a16
      Andreas Zwinkau authored
      This reverts commit 2dc83299.
      
      The commit made jumpthreading "more conservative", which fixed the
      problem. However, it is not a good solution in general.
      
      We need a bigger rewrite of opt/jumpthreading, so it analyzes then
      modifies the graph instead of on-the-fly changes. This prevents the
      infinite loop, which would e.g. happen with such a cf graph:
      
          \     A         \     A
         __\    |        __\    |
         |  B   |   =>   |  B   |  => ...
         | / \  |        | / \  |
         |    D |        |    E |
         |     \|        |     \|
          \     C         \     D
           \___/           \   /
                            \_C
      
      Breaks opt/jumpthreading5 and opt/jumpthreading5b
      763b7a16
  8. 08 Jun, 2011 1 commit
    • Andreas Zwinkau's avatar
      jumpthreading must not split edges · 2dc83299
      Andreas Zwinkau authored
      * the splitted edge is never critical, so the name was misleading
      * it might result in an infinite loop
        fixes opt/jumpthreading5 and opt/jumpthreading5b
      2dc83299
  9. 18 May, 2011 1 commit
  10. 09 May, 2011 2 commits
  11. 06 May, 2011 1 commit
  12. 05 May, 2011 1 commit
  13. 28 Apr, 2011 1 commit
  14. 21 Apr, 2011 1 commit
  15. 20 Apr, 2011 2 commits
  16. 28 Feb, 2011 1 commit
  17. 27 Dec, 2010 1 commit
  18. 04 Nov, 2010 1 commit
  19. 08 Oct, 2010 3 commits
  20. 06 Oct, 2010 2 commits
  21. 22 Sep, 2010 1 commit
  22. 20 May, 2010 1 commit
  23. 13 Feb, 2010 2 commits
  24. 10 Feb, 2010 1 commit
  25. 17 Aug, 2009 2 commits
  26. 16 Aug, 2009 1 commit
  27. 15 Jul, 2009 1 commit
  28. 10 Jul, 2009 1 commit
  29. 05 Jul, 2009 1 commit
  30. 20 Jan, 2009 1 commit
  31. 14 Jan, 2009 1 commit