Linux Audio

Check our new training course

Loading...
v5.4
 1# SPDX-License-Identifier: GPL-2.0
 2ifdef CONFIG_UBSAN
 3      CFLAGS_UBSAN += $(call cc-option, -fsanitize=shift)
 4      CFLAGS_UBSAN += $(call cc-option, -fsanitize=integer-divide-by-zero)
 5      CFLAGS_UBSAN += $(call cc-option, -fsanitize=unreachable)
 6      CFLAGS_UBSAN += $(call cc-option, -fsanitize=signed-integer-overflow)
 7      CFLAGS_UBSAN += $(call cc-option, -fsanitize=bounds)
 8      CFLAGS_UBSAN += $(call cc-option, -fsanitize=object-size)
 9      CFLAGS_UBSAN += $(call cc-option, -fsanitize=bool)
10      CFLAGS_UBSAN += $(call cc-option, -fsanitize=enum)
11
12ifdef CONFIG_UBSAN_ALIGNMENT
13      CFLAGS_UBSAN += $(call cc-option, -fsanitize=alignment)
14endif
 
 
 
 
 
 
 
 
15
16      # -fsanitize=* options makes GCC less smart than usual and
17      # increase number of 'maybe-uninitialized false-positives
18      CFLAGS_UBSAN += $(call cc-option, -Wno-maybe-uninitialized)
19endif
v6.8
 1# SPDX-License-Identifier: GPL-2.0
 
 
 
 
 
 
 
 
 
 2
 3# Enable available and selected UBSAN features.
 4ubsan-cflags-$(CONFIG_UBSAN_ALIGNMENT)		+= -fsanitize=alignment
 5ubsan-cflags-$(CONFIG_UBSAN_BOUNDS_STRICT)	+= -fsanitize=bounds-strict
 6ubsan-cflags-$(CONFIG_UBSAN_ARRAY_BOUNDS)	+= -fsanitize=array-bounds
 7ubsan-cflags-$(CONFIG_UBSAN_LOCAL_BOUNDS)	+= -fsanitize=local-bounds
 8ubsan-cflags-$(CONFIG_UBSAN_SHIFT)		+= -fsanitize=shift
 9ubsan-cflags-$(CONFIG_UBSAN_DIV_ZERO)		+= -fsanitize=integer-divide-by-zero
10ubsan-cflags-$(CONFIG_UBSAN_UNREACHABLE)	+= -fsanitize=unreachable
11ubsan-cflags-$(CONFIG_UBSAN_BOOL)		+= -fsanitize=bool
12ubsan-cflags-$(CONFIG_UBSAN_ENUM)		+= -fsanitize=enum
13ubsan-cflags-$(CONFIG_UBSAN_TRAP)		+= -fsanitize-undefined-trap-on-error
14
15export CFLAGS_UBSAN := $(ubsan-cflags-y)