/// <summary>
        /// Initialize the instrumentation phase.
        /// </summary>
        /// <remarks>
        /// Sets up a component control under debug builds, so that we can dump
        /// IR before/after the phase and so on. In other words, because we
        /// create this control, you can pass in options like -predumpmtrace
        /// that will dump the IR for each method before this phase runs.
        /// </remarks>
        public static void Initialize()
        {
            BlockCounter    = 0;
            FunctionSymbols = new Dictionary <Phx.PEModuleUnit, Phx.Symbols.FunctionSymbol>();

#if PHX_DEBUG_SUPPORT
            InstrumentPhase.InstrumentPhaseControl = Phx.Controls.ComponentControl.New("root", "Inject code coverage instrumentation", "InstrumentPhase.cs");
#endif
        }
        /// <summary>
        /// Initialize the instrumentation phase.
        /// </summary>
        /// <remarks>
        /// Sets up a component control under debug builds, so that we can dump
        /// IR before/after the phase and so on. In other words, because we
        /// create this control, you can pass in options like -predumpmtrace
        /// that will dump the IR for each method before this phase runs.
        /// </remarks>
        public static void Initialize()
        {
            BlockCounter = 0;
            FunctionSymbols = new Dictionary<Phx.PEModuleUnit, Phx.Symbols.FunctionSymbol>();

#if PHX_DEBUG_SUPPORT
            InstrumentPhase.InstrumentPhaseControl = Phx.Controls.ComponentControl.New("root", "Inject code coverage instrumentation", "InstrumentPhase.cs");
#endif
        }