1*4882a593Smuzhiyun# SPDX-License-Identifier: GPL-2.0 2*4882a593SmuzhiyunKASAN_SANITIZE := n 3*4882a593SmuzhiyunUBSAN_SANITIZE := n 4*4882a593SmuzhiyunKCOV_INSTRUMENT := n 5*4882a593Smuzhiyun 6*4882a593Smuzhiyun# Disable ftrace to avoid recursion. 7*4882a593SmuzhiyunCFLAGS_REMOVE_common.o = $(CC_FLAGS_FTRACE) 8*4882a593SmuzhiyunCFLAGS_REMOVE_generic.o = $(CC_FLAGS_FTRACE) 9*4882a593SmuzhiyunCFLAGS_REMOVE_init.o = $(CC_FLAGS_FTRACE) 10*4882a593SmuzhiyunCFLAGS_REMOVE_quarantine.o = $(CC_FLAGS_FTRACE) 11*4882a593SmuzhiyunCFLAGS_REMOVE_report.o = $(CC_FLAGS_FTRACE) 12*4882a593SmuzhiyunCFLAGS_REMOVE_report_generic.o = $(CC_FLAGS_FTRACE) 13*4882a593SmuzhiyunCFLAGS_REMOVE_report_hw_tags.o = $(CC_FLAGS_FTRACE) 14*4882a593SmuzhiyunCFLAGS_REMOVE_report_sw_tags.o = $(CC_FLAGS_FTRACE) 15*4882a593SmuzhiyunCFLAGS_REMOVE_shadow.o = $(CC_FLAGS_FTRACE) 16*4882a593SmuzhiyunCFLAGS_REMOVE_hw_tags.o = $(CC_FLAGS_FTRACE) 17*4882a593SmuzhiyunCFLAGS_REMOVE_sw_tags.o = $(CC_FLAGS_FTRACE) 18*4882a593Smuzhiyun 19*4882a593Smuzhiyun# Function splitter causes unnecessary splits in __asan_load1/__asan_store1 20*4882a593Smuzhiyun# see: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63533 21*4882a593SmuzhiyunCC_FLAGS_KASAN_RUNTIME := $(call cc-option, -fno-conserve-stack) 22*4882a593SmuzhiyunCC_FLAGS_KASAN_RUNTIME += -fno-stack-protector 23*4882a593Smuzhiyun# Disable branch tracing to avoid recursion. 24*4882a593SmuzhiyunCC_FLAGS_KASAN_RUNTIME += -DDISABLE_BRANCH_PROFILING 25*4882a593Smuzhiyun 26*4882a593SmuzhiyunCFLAGS_common.o := $(CC_FLAGS_KASAN_RUNTIME) 27*4882a593SmuzhiyunCFLAGS_generic.o := $(CC_FLAGS_KASAN_RUNTIME) 28*4882a593SmuzhiyunCFLAGS_init.o := $(CC_FLAGS_KASAN_RUNTIME) 29*4882a593SmuzhiyunCFLAGS_quarantine.o := $(CC_FLAGS_KASAN_RUNTIME) 30*4882a593SmuzhiyunCFLAGS_report.o := $(CC_FLAGS_KASAN_RUNTIME) 31*4882a593SmuzhiyunCFLAGS_report_generic.o := $(CC_FLAGS_KASAN_RUNTIME) 32*4882a593SmuzhiyunCFLAGS_report_hw_tags.o := $(CC_FLAGS_KASAN_RUNTIME) 33*4882a593SmuzhiyunCFLAGS_report_sw_tags.o := $(CC_FLAGS_KASAN_RUNTIME) 34*4882a593SmuzhiyunCFLAGS_shadow.o := $(CC_FLAGS_KASAN_RUNTIME) 35*4882a593SmuzhiyunCFLAGS_hw_tags.o := $(CC_FLAGS_KASAN_RUNTIME) 36*4882a593SmuzhiyunCFLAGS_sw_tags.o := $(CC_FLAGS_KASAN_RUNTIME) 37*4882a593Smuzhiyun 38*4882a593Smuzhiyunobj-$(CONFIG_KASAN) := common.o report.o 39*4882a593Smuzhiyunobj-$(CONFIG_KASAN_GENERIC) += init.o generic.o report_generic.o shadow.o quarantine.o 40*4882a593Smuzhiyunobj-$(CONFIG_KASAN_HW_TAGS) += hw_tags.o report_hw_tags.o 41*4882a593Smuzhiyunobj-$(CONFIG_KASAN_SW_TAGS) += init.o report_sw_tags.o shadow.o sw_tags.o 42