There are a few other profiling-related compilation options.
    Use them in addition to
    -prof.  These do not have to be used consistently
    for all modules in a program.
-auto:
          
          
         GHC will automatically add
          _scc_ constructs for all
          top-level, exported functions not marked INLINE. If you
          want a cost centre on an INLINE function, you have to add
          it manually.
-auto-all:
          
         All top-level functions
          not marked INLINE, exported or not, will be automatically
          _scc_'d.
          The functions marked INLINE must be given a cost centre
          manually.
-caf-all:
          
        The costs of all CAFs in a module are usually attributed to one “big” CAF cost-centre. With this option, all CAFs get their own cost-centre. An “if all else fails” option…
-ignore-scc:
          
        Ignore any _scc_
          constructs, so a module which already has
          _scc_s can be compiled
          for profiling with the annotations ignored.