1. 06 Jan, 1994 1 commit
  2. 16 Nov, 1993 1 commit
  3. 10 Sep, 1993 1 commit
  4. 08 May, 1993 1 commit
  5. 17 Jan, 1993 1 commit
  6. 13 Jan, 1993 1 commit
  7. 03 Nov, 1992 1 commit
  8. 22 Sep, 1992 2 commits
  9. 21 Sep, 1992 1 commit
  10. 07 Sep, 1992 1 commit
  11. 21 Jul, 1992 2 commits
  12. 10 Jun, 1992 1 commit
  13. 04 Jun, 1992 1 commit
    • ram's avatar
      Moved tail-set merging here from IR1-OPTIMIZE-RETURN, since it wasn't being · 43bcbde3
      ram authored
      triggered reliably (and required IR1 optimization to run to completion for
      correctness.)  Now we merge tail sets whenever we convert a local call that
      delivers its value to a return (regardless of whether it is truly TR.)  This
      liberalization actually improves type inference: previously non-TR calls would
      mess up type inference.
      
      Now MERGE-TAIL-SETS must be called whenever IR1 is modified so that a local
      call is changed to be potentially tail recursive (i.e. deliver its value to a
      return.)  It seems that the only such place is in MAYBE-DELETE-EXIT in ir1opt.
      43bcbde3
  14. 02 Jun, 1992 1 commit
  15. 27 Apr, 1992 1 commit
  16. 15 Apr, 1992 1 commit
  17. 14 Apr, 1992 2 commits
  18. 09 Apr, 1992 1 commit
    • ram's avatar
      Added UNCONVERT-TAIL-CALLS step in LET conversion which marks calls as no · f4b565a9
      ram authored
      longer TR when we convert a LET in a non-tail position.
      Fixed comment in MAYBE-CONVERT-TO-ASSIGNMENT to make clear that we only attempt
      conversion when there is <= 1 non-recursive call.  This ensures that we will
      never need to back out of assignment conversion.
      f4b565a9
  19. 23 Feb, 1992 1 commit
  20. 11 Dec, 1991 1 commit
    • ram's avatar
      Majorly changed LET stuff to support assignments. Added · b117084c
      ram authored
      MAYBE-CONVERT-TO-ASSIGNMENT and MAYBE-CONVERT-TAIL-LOCAL-CALL.
      Generalized let conversion to handle both assignments and normal LETs.
      Now local calls that we can prove will be TR are converted to jump
      directly to the function.  We set NODE-TAIL-P to indicate this.
      RETURN nodes may be deleted because of this.  We have to handle 
      let conversion where the caller's RETURN was deleted due to tail 
      recursion.
      Changed MERGE-LETS to remove the lambda from the tail-set and set the
      LAMBDA-TAIL-SET to NIL.
      b117084c
  21. 15 Nov, 1991 1 commit
  22. 26 Aug, 1991 1 commit
  23. 22 Aug, 1991 1 commit
  24. 29 Jul, 1991 1 commit
  25. 20 Apr, 1991 1 commit
  26. 04 Apr, 1991 1 commit
  27. 10 Mar, 1991 1 commit
  28. 20 Feb, 1991 1 commit
  29. 01 Feb, 1991 1 commit
  30. 30 Jan, 1991 1 commit
  31. 12 Jan, 1991 1 commit
  32. 03 Jan, 1991 1 commit
  33. 17 Oct, 1990 1 commit
  34. 05 Oct, 1990 1 commit
  35. 16 Aug, 1990 1 commit
  36. 06 Aug, 1990 1 commit
  37. 23 Jul, 1990 1 commit