GNATcoverage – Coverage Analysis Tool

Analyze and Report Code Coverage


GNATcoverage from AdaCore performs coverage analysis at both object code level (instruction and branch coverage), and Ada or C source code level (Statement, Decision and Modified Condition/Decision Coverage – MC/DC). GNATcoverage can help assess the completeness of a testing campaign and provide precise answers to the needs of safety-certification processes such as the DO-178 avionics standard.

Unlike most coverage technologies, GNATcoverage works without requiring instrumentation of the application code. Instead, the uninstrumented code runs directly on GNATemulator, a lightweight and efficient processor emulation tool instrumented to produce execution traces, or on a target board with trace capabilities.



In conjunction with GNATemulator, GNATcoverage can be installed on an individual developer’s desktop, allowing efficient testing and coverage assessments using local resources only.

Unlike the situation with shared hardware, many instances of the tool can be launched simultaneously; coverage analysis can be performed in parallel by several members of a team.

GNATcoverage provides code coverage information directly for the embedded target code.

GNATemulator can execute target code and is instrumented to produce execution traces so that there is no instrumentation of the application code.

GNATcoverage provides source coverage information for all levels of safety certification (Statement Coverage, Decision Coverage and Modified Condition/Decision Coverage).

Qualification material is available for DO-178B and DO-178C up to level A (MC/DC).

GNATcoverage can also provide object-level metrics, with support for both instruction and branch coverage criteria.