1. 10 Apr, 2014 1 commit
  2. 28 Mar, 2014 2 commits
  3. 27 Mar, 2014 2 commits
  4. 25 Mar, 2014 4 commits
  5. 21 Mar, 2014 1 commit
  6. 14 Mar, 2014 2 commits
  7. 13 Mar, 2014 1 commit
  8. 10 Mar, 2014 1 commit
  9. 07 Mar, 2014 1 commit
  10. 24 Feb, 2014 1 commit
  11. 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
  12. 17 Feb, 2014 1 commit
  13. 28 Jan, 2014 2 commits
  14. 27 Jan, 2014 2 commits
  15. 24 Jan, 2014 1 commit
  16. 16 Jan, 2014 2 commits
  17. 28 Nov, 2013 2 commits
  18. 31 Oct, 2013 1 commit
    • Matthias Braun's avatar
      fix corner cases when determining called entities/irgs · c9f09085
      Matthias Braun authored
      Most firm analyses behaved incorrectlye when: A called SymConst did not
      have a method entity, assumed the code reachable by get_entity_irg is
      the code called. These assumptions are wrong when doing crazy casts in C
      or when dealing with weak symbols. This is fixed by introducing some
      convenience functions: get_Call_callee(), get_entity_linktime_irg()
      c9f09085
  19. 29 Oct, 2013 1 commit
  20. 28 Oct, 2013 2 commits
  21. 04 Sep, 2013 2 commits
    • Andreas Fried's avatar
      Add an optimization for CopyB nodes. · 9a42176a
      Andreas Fried authored and yb9976's avatar yb9976 committed
      This covers two cases (assuming no aliasing operations in between the nodes):
      
      Firstly, a Store node whose destination lies completely within the CopyB's
      destination can be deleted.
      
      Secondly, if a previous CopyB (A) writes to the source of CopyB to be optimized
      (B), we can use A's source pointer for further optimizations. If A's source is
      constant, we can change B to read from A's source.  Cases with offsets are not
      handled.
      9a42176a
    • Andreas Fried's avatar
      Enable Stores to see through non-aliasing CopyB nodes. · d75a2287
      Andreas Fried authored and yb9976's avatar yb9976 committed
      When following the Memory chain for a Store, a CopyB node may be skipped, if
      both its destination and source do not alias with the Store's destination.
      d75a2287
  22. 20 Jul, 2013 4 commits
  23. 19 Jul, 2013 1 commit
  24. 04 Jul, 2013 1 commit
  25. 03 Jul, 2013 1 commit
    • Matthias Braun's avatar
      rework load from known const entity opt · f699c277
      Matthias Braun authored
      - Previously it was part of load-store optimisations, the rewrite now
      works as a localopt.
      - The new version works for address arithmetic and not for Sels anymore
        (while the old code only worked for Sels)
      - The new version can handle some forms of initializer spanning loads
        like loading a string like "bla" with an mode_Iu to get all 3 chars
        and the zero in one load.
      f699c277