Skip to content
  • Simon Marlow's avatar
    Fix a profiling bug · daed18c3
    Simon Marlow authored
    Summary:
    We were erroneously discarding SCCs on function-typed variables.
    These can affect the call stack, so we have to retain them.  The bug
    was introduced during the recent SourceNote refactoring.
    
    This is an alternative to the fix proposed in D616.  I also added the
    scc005 test from that diff, which works with this change.
    
    While I was here, I also fixed up the other profiling tests, marking a
    few as expect_broken_for(10037) where the opt/unopt output differs in
    non-fatal ways.
    
    Test Plan: profiling tests
    
    Reviewers: scpmw, ezyang, austin
    
    Subscribers: thomie
    
    Differential Revision: https://phabricator.haskell.org/D636
    
    GHC Trac Issues: #10007
    daed18c3