If llvm-cov sees a code region that is improperly ordered (end < start),
it will immediately exit with a fatal error. To prevent that from happening,
discard regions that are improperly ordered, or might be interpreted in a
way that makes them improperly ordered.
For each coverage span extracted from MIR, create a corresponding
mapping.
For each BCB node or BCB edge that has an associated coverage counter,
inject any necessary coverage statements into MIR.
Convert the Span into its file name, start line and column, and end line and column.