summaryrefslogtreecommitdiffstats
path: root/scripts/Makefile.kcov
diff options
context:
space:
mode:
authorVictor Chibotaru <tchibo@google.com>2017-11-17 15:30:50 -0800
committerLinus Torvalds <torvalds@linux-foundation.org>2017-11-17 16:10:04 -0800
commitd677a4d6019385488e794cc47bd3d6f9c2aab874 (patch)
tree5c94f48e2a9acfb553a359c30bcbb2c0f76ba266 /scripts/Makefile.kcov
parentded97d2c2b2c5f1dcced0bc57133f7753b037dfc (diff)
downloadlinux-d677a4d6019385488e794cc47bd3d6f9c2aab874.tar.gz
linux-d677a4d6019385488e794cc47bd3d6f9c2aab874.tar.bz2
linux-d677a4d6019385488e794cc47bd3d6f9c2aab874.zip
Makefile: support flag -fsanitizer-coverage=trace-cmp
The flag enables Clang instrumentation of comparison operations (currently not supported by GCC). This instrumentation is needed by the new KCOV device to collect comparison operands. Link: http://lkml.kernel.org/r/20171011095459.70721-2-glider@google.com Signed-off-by: Victor Chibotaru <tchibo@google.com> Signed-off-by: Alexander Potapenko <glider@google.com> Cc: Dmitry Vyukov <dvyukov@google.com> Cc: Andrey Konovalov <andreyknvl@google.com> Cc: Mark Rutland <mark.rutland@arm.com> Cc: Alexander Popov <alex.popov@linux.com> Cc: Andrey Ryabinin <aryabinin@virtuozzo.com> Cc: Kees Cook <keescook@chromium.org> Cc: Vegard Nossum <vegard.nossum@oracle.com> Cc: Quentin Casasnovas <quentin.casasnovas@oracle.com> Cc: <syzkaller@googlegroups.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'scripts/Makefile.kcov')
-rw-r--r--scripts/Makefile.kcov7
1 files changed, 7 insertions, 0 deletions
diff --git a/scripts/Makefile.kcov b/scripts/Makefile.kcov
new file mode 100644
index 000000000000..5cc72037e423
--- /dev/null
+++ b/scripts/Makefile.kcov
@@ -0,0 +1,7 @@
+ifdef CONFIG_KCOV
+CFLAGS_KCOV := $(call cc-option,-fsanitize-coverage=trace-pc,)
+ifeq ($(CONFIG_KCOV_ENABLE_COMPARISONS),y)
+CFLAGS_KCOV += $(call cc-option,-fsanitize-coverage=trace-cmp,)
+endif
+
+endif