* 'for-next/clang/pgo' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux:
pgo: rectify comment to proper kernel-doc syntax
pgo: Clean up prf_open() error paths
pgo: Fix sleep in atomic section in prf_open()
pgo: Limit allocate_node() to vmlinux sections
pgo: rename the raw profile file to vmlinux.profraw
MAINTAINERS: Expand and relocate PGO entry
pgo: Add Clang's Profile Guided Optimization infrastructure
Signed-off-by: Jens Axboe <axboe@kernel.dk>
# Defaults to vmlinux, but the arch makefile usually adds further targets
all: vmlinux
-CFLAGS_GCOV := -fprofile-arcs -ftest-coverage \
- $(call cc-option,-fno-tree-loop-im) \
- $(call cc-disable-warning,maybe-uninitialized,)
+ CFLAGS_PGO_CLANG := -fprofile-generate
+ export CFLAGS_PGO_CLANG
+
+CFLAGS_GCOV := -fprofile-arcs -ftest-coverage
+ifdef CONFIG_CC_IS_GCC
+CFLAGS_GCOV += -fno-tree-loop-im
+endif
export CFLAGS_GCOV
# The arch Makefiles can override CC_FLAGS_FTRACE. We may also append it later.
config ARCH_HAS_ELFCORE_COMPAT
bool
+config ARCH_HAS_PARANOID_L1D_FLUSH
+ bool
+
+config DYNAMIC_SIGFRAME
+ bool
+
source "kernel/gcov/Kconfig"
+ source "kernel/pgo/Kconfig"
source "scripts/gcc-plugins/Kconfig"
obj-$(CONFIG_CRYPTO_NHPOLY1305_AVX2) += nhpoly1305-avx2.o
nhpoly1305-avx2-y := nh-avx2-x86_64.o nhpoly1305-avx2-glue.o
+ # Disable PGO for curve25519-x86_64. With PGO enabled, clang runs out of
+ # registers for some of the functions.
+ PGO_PROFILE_curve25519-x86_64.o := n
obj-$(CONFIG_CRYPTO_CURVE25519_X86) += curve25519-x86_64.o
+obj-$(CONFIG_CRYPTO_SM4_AESNI_AVX_X86_64) += sm4-aesni-avx-x86_64.o
+sm4-aesni-avx-x86_64-y := sm4-aesni-avx-asm_64.o sm4_aesni_avx_glue.o
+
+obj-$(CONFIG_CRYPTO_SM4_AESNI_AVX2_X86_64) += sm4-aesni-avx2-x86_64.o
+sm4-aesni-avx2-x86_64-y := sm4-aesni-avx2-asm_64.o sm4_aesni_avx2_glue.o
+
quiet_cmd_perlasm = PERLASM $@
cmd_perlasm = $(PERL) $< > $@
$(obj)/%.S: $(src)/%.pl FORCE
KASAN_SANITIZE_stacktrace.o := n
KASAN_SANITIZE_paravirt.o := n
KASAN_SANITIZE_sev.o := n
+KASAN_SANITIZE_cc_platform.o := n
+ # Cannot write to profiling regions before the page tables are set up.
+ PGO_PROFILE_head$(BITS).o := n
+
# With some compiler versions the generated code results in boot hangs, caused
# by several compilation units. To be safe, disable all instrumentation.
KCSAN_SANITIZE := n