This dreadful little .hc file accounts for the fact that, when profiling, modules that import (say) IdLoop will try to register the _regIdLoop cost centre. But there is no IdLoop module really, so it generates unresolved references by the ton. What we do here is simply to satisfy the unresolved references \begin{code} #ifdef PROFILING START_REGISTER_PRELUDE(_regUbiq); END_REGISTER_CCS() START_REGISTER_PRELUDE(_regAbsCLoop); END_REGISTER_CCS() START_REGISTER_PRELUDE(_regNcgLoop); END_REGISTER_CCS() START_REGISTER_PRELUDE(_regDsLoop); END_REGISTER_CCS() START_REGISTER_PRELUDE(_regIdLoop); END_REGISTER_CCS() START_REGISTER_PRELUDE(_regPrelLoop); END_REGISTER_CCS() START_REGISTER_PRELUDE(_regSmplLoop); END_REGISTER_CCS() START_REGISTER_PRELUDE(_regTyLoop); END_REGISTER_CCS() START_REGISTER_PRELUDE(_regHsLoop); END_REGISTER_CCS() START_REGISTER_PRELUDE(_regSpecLoop); END_REGISTER_CCS() START_REGISTER_PRELUDE(_regTcMLoop); END_REGISTER_CCS() START_REGISTER_PRELUDE(_regTcLoop); END_REGISTER_CCS() START_REGISTER_PRELUDE(_regRnLoop); END_REGISTER_CCS() START_REGISTER_PRELUDE(_regCgLoop1); END_REGISTER_CCS() START_REGISTER_PRELUDE(_regCgLoop2); END_REGISTER_CCS() START_REGISTER_PRELUDE(_regHandleHack); END_REGISTER_CCS() #endif /* STGFUN(_regUbiq){} STGFUN(_regAbsCLoop){} STGFUN(_regNcgLoop){} STGFUN(_regDsLoop){} STGFUN(_regIdLoop){} STGFUN(_regPrelLoop){} STGFUN(_regSmplLoop){} STGFUN(_regTyLoop){} STGFUN(_regHsLoop){} STGFUN(_regSpecLoop){} STGFUN(_regTcMLoop){} STGFUN(_regTcLoop){} STGFUN(_regRnLoop){} STGFUN(_regCgLoop1){} STGFUN(_regCgLoop2){} */ \end{code}