patch applied (ghc): Keep the CPS pass from creating proc points
due to unreachable parents.
adamsmd at cs.indiana.edu
Sun Jul 15 16:50:01 EDT 2007
Sun Jul 15 09:20:03 PDT 2007 Michael D. Adams <adamsmd at cs.indiana.edu>
* Keep the CPS pass from creating proc points due to unreachable parents.
The parser/flattener will generate an extra block after an if/else
statement even if both branches exit the function. So it is possible
for the input to the CPS pass to have dead/unreachable blocks.
If a dead block goes to a live block then the live block would
have more parents than the dead block and prior to this patch
the live block would then be identified as a proc point.
This is fixed by adding a check to see if the parent
has at least one owner.
M ./compiler/cmm/CmmProcPoint.hs -2 +6
More information about the Cvs-ghc