• Michael D. Adams's avatar
    Multiple improvements to CPS algorithm. · a2d5d3c9
    Michael D. Adams authored
    These include:
     - Stack size detection now includes function arguments.
     - Stack size detection now avoids stack checks just because of
       the GC block.
     - A CmmCall followed by a CmmBranch will no longer generate an extra
       continuation consisting just of the brach.
     - Multiple CmmCall/CmmBranch pairs that all go to the same place
       will try to use the same continuation.  If they can't (because
       the return value signature is different), adaptor block are built.
     - Function entry statements are now in a separate block.
       (Fixed bug with branches to the entry block having unintended effects.)
     - Other changes that I can't recall right now.
CmmProcPoint.hs 4.41 KB