Cleanup StgCmm pass
authorJan Stolarek <jan.stolarek@p.lodz.pl>
Tue, 20 Aug 2013 10:53:05 +0000 (11:53 +0100)
committerJan Stolarek <jan.stolarek@p.lodz.pl>
Tue, 20 Aug 2013 16:19:30 +0000 (17:19 +0100)
commite5374a1b3ac11851576f8835e19d9fc92d7735c3
tree82cf705084772dad8b427574bdeae8f9abb7a7cb
parent3f279f37042458dfcfd06eceb127eed4a528c3cc
Cleanup StgCmm pass

This cleanup includes:
  * removing dead code. This includes forkStatics function,
    which was in fact one big noop, and global bindings in
    CgInfoDownwards,
  * converting functions that used FCode monad only to
    access DynFlags into functions that take DynFlags
    as a parameter and don't work in a monad,
  * addBindC function is now smarter. It extracts Id from
    CgIdInfo passed to it in the same way addBindsC does.
    Previously this was done at every call site, which was
    redundant.
compiler/codeGen/StgCmm.hs
compiler/codeGen/StgCmmBind.hs
compiler/codeGen/StgCmmCon.hs
compiler/codeGen/StgCmmEnv.hs
compiler/codeGen/StgCmmExpr.hs
compiler/codeGen/StgCmmLayout.hs
compiler/codeGen/StgCmmMonad.hs