If a single line contains parts that execute at different times, PureCoverage does not show which part of the line was executed. This is because the compiler does not provide this level of detail in the object file
When there are multiple basic blocks on one line, PureCoverage collects separate counts for each basic block. The Annotated Source window, however, displays only the highest count. A partially used line, therefore, is always shown as used.
Note:
To view separate basic block counts, run the script pc_annotate with the -type=block option.