• Mikolaj Konarski's avatar
    Fix the timestamps in GC_START and GC_END events on the GC-initiating cap · 598109eb
    Mikolaj Konarski authored
    There was a discrepancy between GC times reported in +RTS -s
    and the timestamps of GC_START and GC_END events on the cap,
    on which +RTS -s stats for the given GC are based.
    This is fixed by posting the events with exactly the same timestamp
    as generated for the stat calculation. The calls posting the events
    are moved too, so that the events are emitted close to the time instant
    they claim to be emitted at. The GC_STATS_GHC was moved, too, ensuring
    it's emitted before the moved GC_END on all caps, which simplifies tools code.
Stats.c 32.2 KB