1. 10 Sep, 2015 2 commits
  2. 13 Feb, 2015 3 commits
  3. 08 Dec, 2014 1 commit
  4. 04 Nov, 2014 1 commit
  5. 17 Sep, 2014 1 commit
  6. 21 Aug, 2014 1 commit
  7. 07 Aug, 2014 2 commits
  8. 05 Aug, 2014 1 commit
    • Matthias Braun's avatar
      Add loop attribute to Phi node · 8e4997d4
      Matthias Braun authored
      This makes our usage of PhiMs to represent the observable behaviour of
      non-terminating loops more obvious.
      Having an explicit loop Phi constructor also fixes problems with Phi
      getting optimized before the keep edge was added.
      8e4997d4
  9. 31 Jul, 2014 2 commits
  10. 30 Jul, 2014 1 commit
  11. 24 Apr, 2014 1 commit
  12. 14 Mar, 2014 1 commit
  13. 07 Mar, 2014 1 commit
  14. 24 Feb, 2014 1 commit
  15. 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
  16. 17 Feb, 2014 1 commit
  17. 11 Dec, 2013 1 commit
  18. 30 Oct, 2013 2 commits
  19. 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
  20. 15 May, 2013 1 commit
  21. 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
  22. 05 Jan, 2013 1 commit
  23. 12 Dec, 2012 1 commit
  24. 04 Dec, 2012 1 commit
  25. 03 Dec, 2012 1 commit
  26. 02 Dec, 2012 1 commit
  27. 26 Nov, 2012 1 commit
  28. 12 Nov, 2012 2 commits
  29. 13 Jul, 2012 1 commit
  30. 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
  31. 10 Nov, 2011 1 commit
  32. 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