1. 04 Apr, 2016 2 commits
    • yb9976's avatar
      Rename be_enqueue_preds to be_enqueue_operands. · a5362ad5
      yb9976 authored
      a5362ad5
    • Matthias Braun's avatar
      be: Rewrite stack frame handling · b6787e36
      Matthias Braun authored
      This is a bigger rewrite of stack frame handling in the backend:
      
      - Do the stack frame type layout late, after all the spill slots have
        been created. This way we can avoid (and remove) the brittle
        frame_alloc_area().
      - Standardize the meaning of stack entity offsets. After stack frame type
        layout they are relative to the stack pointer position at the beginning
        of the function.  It is all in one type now, no splitting into "arg",
        "between" and "stack_frame" type anymore.
      - Generalize the stack pointer simulation code to work with a single
        callback. Represent stack state as current offset and align_padding
        number. Now that callbacks can access and modify them both we do not
        need custom code in the sparc backend anymore.
      - Remove alignment specification on IncSP, only keep a ignore_align flag
        used for the last IncSP that has to remove all existing sp adjustments
        and may end up on a misaligned SP on ia32/amd64.
      - Align stack by default on ia32+amd64 backends.
      b6787e36
  2. 03 Dec, 2015 1 commit
  3. 09 Sep, 2015 1 commit
    • Christoph Mallon's avatar
      be: Wire stack nodes after code selection. · bed91301
      Christoph Mallon authored
      This resolves problems with hidden dependencies during code selection, which cause dependency cycles and therefore fixes backend/scheduled.c.
      Also it grants the code selection slightly more freedom by not arbitrarily restricting the order by stack dependencies.
      bed91301
  4. 22 Jul, 2015 2 commits
  5. 29 May, 2015 1 commit
  6. 19 Apr, 2015 3 commits
  7. 14 Jan, 2015 1 commit
  8. 17 Nov, 2014 1 commit
  9. 18 Oct, 2014 2 commits
  10. 04 Mar, 2014 1 commit
  11. 11 Jun, 2013 1 commit
    • Matthias Braun's avatar
      change intrinsic lowering API · 6fa4cdf1
      Matthias Braun authored
      - You can now construct the lookup table separately and perform the
        lowering selectively on irgs (instead of the whole program at once)
        while reusing the lookup table.
      - Simplified API a bit.
      - Remove i_mapper_RuntimeCall. All users are simpler by doing the
        transformations directly instead of filling in runtime_rt
        structures...
      6fa4cdf1
  12. 06 Jun, 2013 1 commit
  13. 06 May, 2013 1 commit
  14. 12 Dec, 2012 1 commit
  15. 25 Nov, 2012 1 commit
  16. 29 Oct, 2012 1 commit
  17. 27 Aug, 2012 1 commit
    • Matthias Braun's avatar
      factorize upper_bits_clean and use in sparc+ia32 · 7f34faa1
      Matthias Braun authored
      This needed some rewriting as ia32 previously checked already
      transformed nodes while sparc was checking nodes before transformation.
      Change ia32 to check nodes before transformation too. Also improved some
      code in sparc+ia32.
      7f34faa1
  18. 10 Nov, 2011 1 commit
  19. 31 May, 2011 1 commit
  20. 04 Mar, 2011 1 commit
  21. 06 Sep, 2010 1 commit
  22. 08 Jul, 2010 1 commit
  23. 30 Apr, 2010 1 commit
  24. 09 Oct, 2008 2 commits
  25. 08 Oct, 2008 1 commit
  26. 02 Jan, 2008 1 commit
  27. 17 Oct, 2007 1 commit
    • Matthias Braun's avatar
      - Add a generic_attribute field to irops · db6fd292
      Matthias Braun authored
      - extend backend generator to support custom irop data
      - cleanup and streamline transform code in ia32
      - Improve handling of AddAM vs. Add used in AM expressions
      
      [r16254]
      db6fd292
  28. 16 Jul, 2007 1 commit
  29. 11 Jul, 2007 1 commit
  30. 14 Jun, 2007 2 commits