aboutsummaryrefslogtreecommitdiff
path: root/src/runtime
diff options
context:
space:
mode:
authorMatthew Dempsky <mdempsky@google.com>2019-10-18 17:39:39 -0700
committerMatthew Dempsky <mdempsky@google.com>2019-11-05 00:00:36 +0000
commite341e93c519ef22ed4759fd0b4643a30321b9222 (patch)
tree5f03c6f2d2604f11299b8d1016d2dc3353a2266a /src/runtime
parent383b447e0da5bd1fcdc2439230b5a1d3e3402117 (diff)
downloadgo-e341e93c519ef22ed4759fd0b4643a30321b9222.tar.xz
cmd/compile, cmd/link: add coverage instrumentation for libfuzzer
This CL adds experimental coverage instrumentation similar to what github.com/dvyukov/go-fuzz produces in its -libfuzzer mode. The coverage can be enabled by compiling with -d=libfuzzer. It's intended to be used in conjunction with -buildmode=c-archive to produce an ELF archive (.a) file that can be linked with libFuzzer. See #14565 for example usage. The coverage generates a unique 8-bit counter for each basic block in the original source code, and emits an increment operation. These counters are then collected into the __libfuzzer_extra_counters ELF section for use by libFuzzer. Updates #14565. Change-Id: I239758cc0ceb9ca1220f2d9d3d23b9e761db9bf1 Reviewed-on: https://go-review.googlesource.com/c/go/+/202117 Run-TryBot: Matthew Dempsky <mdempsky@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Keith Randall <khr@golang.org>
Diffstat (limited to 'src/runtime')
0 files changed, 0 insertions, 0 deletions