1. 07 Mar, 2014 1 commit
  2. 24 Feb, 2014 1 commit
  3. 18 Feb, 2014 1 commit
    • Matthias Braun's avatar
      cleanup special tarval and Unknown usage · af666143
      Matthias Braun authored
      This commit does:
      - Remove tarval_reachable+tarval_unreachable, dataflow analysis rather
        use top/bottom instead of other special values.
      - Rename tarval_undefined to tarval_unknown as it corresponds to the
        Unknown node (=a value which we don't know)
      - Remove predefined tarval_top/tarval_bottom from tv.h and place the
        defines into combo.c
      - Change compute_XXX constant folding functions to return tarval_unknown
        instead of tarval_bad if folding failed
      - compute_Unknown in combo results in tarval_bottom == tarval_unknown
        this eliminates strange special cases in the Cond/Switch rules and the
        now unnecessary cprop_X list.
      af666143
  4. 17 Feb, 2014 1 commit
  5. 11 Dec, 2013 1 commit
  6. 30 Oct, 2013 2 commits
  7. 28 Oct, 2013 1 commit
    • Matthias Braun's avatar
      remove NEW_ARR_A and use ALLOCAN · fee5ce04
      Matthias Braun authored
      All users of NEW_ARR_A used it to construct a simple array, yet noone
      cared about it actually being an array with a length field in front. For
      this simple use case you should use ALLOCAN.
      fee5ce04
  8. 15 May, 2013 1 commit
  9. 04 May, 2013 1 commit
    • Matthias Braun's avatar
      do not include config.h anymore · 0f73b43e
      Matthias Braun authored
      It has been empty for nearly all systems. People who used to put stuff
      in config.h can still create a config.h on their own and inject
      -include (gcc) or /FI (msvc) into their CPPFLAGS.
      0f73b43e
  10. 05 Jan, 2013 1 commit
  11. 12 Dec, 2012 1 commit
  12. 04 Dec, 2012 1 commit
  13. 03 Dec, 2012 1 commit
  14. 02 Dec, 2012 1 commit
  15. 26 Nov, 2012 1 commit
  16. 12 Nov, 2012 2 commits
  17. 13 Jul, 2012 1 commit
  18. 15 Jun, 2012 2 commits
    • Matthias Braun's avatar
      remove opt_manage, provide assure_irg_properties · 7a483ab9
      Matthias Braun authored
      The opt_manage framework didn't really do much except assuring that some
      analysis info is computed before a pass starts. We can achieve this
      simpler by providing an assure_irg_properties function.
      This commit also fixes some places where analysis info was potentially
      not invalidated before.
      7a483ab9
    • 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
  19. 10 Nov, 2011 1 commit
  20. 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
  21. 20 Sep, 2011 2 commits
  22. 15 Sep, 2011 1 commit
  23. 14 Sep, 2011 1 commit
  24. 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
  25. 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
  26. 18 May, 2011 1 commit
  27. 09 May, 2011 2 commits
  28. 06 May, 2011 1 commit
  29. 05 May, 2011 1 commit
  30. 28 Apr, 2011 1 commit
  31. 21 Apr, 2011 1 commit
  32. 20 Apr, 2011 2 commits
  33. 28 Feb, 2011 1 commit