[Code Coverage] Implement Clang code coverage compiler wrapper

This CL implements the Clang code coverage compiler wrapper, which can
be used to instrument a subset of source files, and the main use case
is to enable generating code coverage reports at per-cl level during
try jobs.

This CL only focuses on the wrapper itself, how to hook this wrapper
into the build system will be addressed in a separate CL.

Bug: 898695
Change-Id: Idb21640b5566ce78089059b3d0116390b488a383
Reviewed-on: https://chromium-review.googlesource.com/c/1301969
Commit-Queue: Yuke Liao <[email protected]>
Reviewed-by: Dirk Pranke <[email protected]>
Reviewed-by: Takuto Ikuta <[email protected]>
Cr-Commit-Position: refs/heads/master@{#604381}
diff --git a/docs/README.md b/docs/README.md
index 579c5f4..f0cf6bf 100644
--- a/docs/README.md
+++ b/docs/README.md
@@ -89,6 +89,8 @@
     to perform refactorings that are AST-aware
 *   [The Clang Static Analyzer](clang_static_analyzer.md) - How to enable static
     analysis at build time
+*   [Clang Code Coverage Wrapper](clang_code_coverage_wrapper.md) - Enable Clang
+    code coverage instrumentation for a subset of source files.
 *   [Writing Clang Plugins](writing_clang_plugins.md) - Don't write a clang
     plugin, but if you do, read this
 *   [Updating Clang](updating_clang.md) - Updating the version of Clang used to