Something went wrong. Try again.
(I'm so sorry!) Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
Something went wrong. Try again.
12345678910111213141516171819202122# SPDX-License-Identifier: GPL-2.0-onlyCFLAGS_GCOV := -fprofile-arcs -ftest-coverageifdef CONFIG_CC_IS_GCCCFLAGS_GCOV += -fno-tree-loop-im# Use atomic counter updates to avoid concurrent-access crashes in GCOV.# Only enable if -fprofile-update=prefer-atomic does not introduce new# undefined symbols (e.g. libatomic calls that the kernel cannot link).CFLAGS_GCOV += $(call try-run,\ echo 'long long x; void f(void){x++;}' | \ $(CC) $(KBUILD_CPPFLAGS) $(KBUILD_CFLAGS) -w $(CFLAGS_GCOV) \ -x c - -c -o "$$TMP.base" && \ echo 'long long x; void f(void){x++;}' | \ $(CC) $(KBUILD_CPPFLAGS) $(KBUILD_CFLAGS) -w $(CFLAGS_GCOV) \ -fprofile-update=prefer-atomic \ -x c - -c -o "$$TMP" && \ $(NM) "$$TMP.base" | grep ' U ' > "$$TMP.ubase" || true ; \ $(NM) "$$TMP" | grep ' U ' > "$$TMP.utest" || true ; \ cmp -s "$$TMP.ubase" "$$TMP.utest",\ -fprofile-update=prefer-atomic)endifexport CFLAGS_GCOV