diff options
Diffstat (limited to 'compiler/simplCore/OccurAnal.hs')
-rw-r--r-- | compiler/simplCore/OccurAnal.hs | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/compiler/simplCore/OccurAnal.hs b/compiler/simplCore/OccurAnal.hs index 7e62eeede7..6950e56cdb 100644 --- a/compiler/simplCore/OccurAnal.hs +++ b/compiler/simplCore/OccurAnal.hs @@ -276,6 +276,9 @@ Loop breaking is surprisingly subtle. First read the section 4 of We avoid infinite inlinings by choosing loop breakers, and ensuring that a loop breaker cuts each loop. +See also Note [Inlining and hs-boot files] in ToIface, which deals +with a closely related source of infinite loops. + Fundamentally, we do SCC analysis on a graph. For each recursive group we choose a loop breaker, delete all edges to that node, re-analyse the SCC, and iterate. |