Our simple instrumentation allows uniform instrumentation of various language dialects, parts of source files or complete source files, multiple language projects, and multiple related or unrelated projects. The instrumentation strategy and instrumentation code are almost identical for all major industrial languages.
A minimal to-the-point instrumentation is used, by inserting general coverage-distribution recording calls at conditional statements. The called distribution-recording function is located in a library and is common for all conditional statements and all programming languages. The projects that use instrumented source files need only link to this library. The instrumentation takes less than 5% of the time it takes to build the original, un-instrumented code.