1. 15 May, 2013 1 commit
  2. 07 May, 2013 1 commit
    • Matthias Braun's avatar
      Alloc/Free only operate on the stack now · 8fda947f
      Matthias Braun authored
      They are considered low level operations now which just allocate/free a
      block of memory on the stack. There is no highlevel typeinformation
      attached anymore or support for heap allocation. Frontends/liboo should
      provide their custom highlevel nodes if they need these features.
      8fda947f
  3. 06 May, 2013 1 commit
  4. 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
  5. 23 Apr, 2013 1 commit
  6. 04 Apr, 2013 1 commit
    • yb9976's avatar
      Added a new builtin for saturated increment. · b7cb5592
      yb9976 authored
      The builtin can be used to generate fast code for unsigned division by constant.
      
      Code generation is supported for the IA32 and the SPARC backend.
      Since our ARM backend currently has no Add with Carry instruction,
      the builtin is currently not supported on Arm.
      The same holds for the AMD64 backend, which does not support a division yet.
      b7cb5592
  7. 27 Mar, 2013 1 commit
    • yb9976's avatar
      Fixed only_used_by_keepalive function. · 5b03f167
      yb9976 authored
      For newly created nodes without any user the function now correctly
      returns false. Thus, these nodes are no longer ignored when performing
      (global?) common subexpression elimination.
      5b03f167
  8. 12 Mar, 2013 1 commit
    • Matthias Braun's avatar
      remove oparity_{unary|trinary|zero} · 9a1ec0a9
      Matthias Braun authored
      They weren't used in a sensible way and their semantic for
      non-arithmetic ops was unclear.
      Also implicitely fixes a bunch of bugs where these where set but no op_index
      was set at the same time.
      9a1ec0a9
  9. 20 Feb, 2013 1 commit
  10. 21 Dec, 2012 1 commit
  11. 12 Dec, 2012 1 commit
  12. 06 Dec, 2012 1 commit
  13. 04 Dec, 2012 1 commit
  14. 03 Dec, 2012 1 commit
  15. 01 Dec, 2012 1 commit
  16. 26 Nov, 2012 1 commit
    • Matthias Braun's avatar
      optimize iredges code · ea0e2807
      Matthias Braun authored
      - split edges_notify_edge into add/del/modify and call the correct
        function where we know which is needed
      - get rid of some unnecessary flags so the ir_edge_t struct is smaller
      ea0e2807
  17. 08 Nov, 2012 1 commit
  18. 24 Oct, 2012 1 commit
  19. 11 Sep, 2012 1 commit
  20. 31 Aug, 2012 1 commit
  21. 28 Aug, 2012 1 commit
  22. 21 Aug, 2012 1 commit
    • Matthias Braun's avatar
      remove the concept of a strictconv · 31b3daf7
      Matthias Braun authored
      This means floatingpoint calculation in a firm graph must be performed
      in the mode specified (and may not be performed in a wider mode as
      before).
      31b3daf7
  23. 08 Aug, 2012 1 commit
  24. 05 Aug, 2012 1 commit
  25. 23 Jul, 2012 2 commits
  26. 10 Jul, 2012 3 commits
  27. 28 Jun, 2012 1 commit
  28. 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
  29. 13 Jun, 2012 1 commit
    • Matthias Braun's avatar
      remove extended basic block support · b4841b96
      Matthias Braun authored
      First it is unclear what is a good way to deconstruct a program into extended
      basic blocks, also none of our optimizations works on extended basic
      blocks.
      b4841b96
  30. 09 Feb, 2012 1 commit
  31. 15 Dec, 2011 1 commit
    • Matthias Braun's avatar
      make unique types/entities part of irprog · 274626e2
      Matthias Braun authored
      unknown_type, code_type, none_type, unknown_entity reference are hold in
      the irprog now. This makes handling more consistent since now all types
      and entities are equally part of irprog.
      274626e2
  32. 14 Dec, 2011 3 commits
  33. 07 Dec, 2011 1 commit
    • Matthias Braun's avatar
      correctly implement memop handling · 9fbdcb82
      Matthias Braun authored
      memops are nodes that have memory inputs, you can generically query them
      for their memory input. We can also get rid of get_fragile_op_mem in
      favor of get_memop_mem.
      9fbdcb82
  34. 17 Nov, 2011 2 commits