]> granicus.if.org Git - clang/commitdiff
[sanitizer-coverage] make trace-pc-guard and indirect-call work together
authorKostya Serebryany <kcc@google.com>
Thu, 15 Sep 2016 22:11:08 +0000 (22:11 +0000)
committerKostya Serebryany <kcc@google.com>
Thu, 15 Sep 2016 22:11:08 +0000 (22:11 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@281665 91177308-0d34-0410-b5e6-96231b3b80d8

docs/SanitizerCoverage.rst

index e4d85679f72a6b5349b0dcacbe5505a774bca319..906150014f7219765fe3e898ac114cbdd24114be 100644 (file)
@@ -323,8 +323,8 @@ and can be used with `AFL <http://lcamtuf.coredump.cx/afl>`__.
 
 Tracing PCs with guards
 =======================
-Another *experimental* feature that tries to combine `trace-pc`,
-`8bit-counters` and boolean coverage
+Another *experimental* feature that tries to combine the functionality of `trace-pc`,
+`8bit-counters` and boolean coverage.
 
 With ``-fsanitize-coverage=trace-pc-guard`` the compiler will insert the following code
 on every edge:
@@ -338,6 +338,9 @@ Every edge will have its own 1-byte `guard_variable`.
 All such guard variables will reside in a dedicated section
 (i.e. they essentially form an array).
 
+Similarly to `trace-pc,indirect-calls`, with `trace-pc-guards,indirect-calls`
+``__sanitizer_cov_trace_pc_indirect(void *callee)`` will be inserted on every indirect call.
+
 The compler will also insert a module constructor that will call
 
 .. code-block:: c++