Blame view

scripts/Makefile.ubsan 1.07 KB
81f7e3824   Eric Lee   Initial Release, ...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
  # SPDX-License-Identifier: GPL-2.0
  ifdef CONFIG_UBSAN
        CFLAGS_UBSAN += $(call cc-option, -fsanitize=shift)
        CFLAGS_UBSAN += $(call cc-option, -fsanitize=integer-divide-by-zero)
        CFLAGS_UBSAN += $(call cc-option, -fsanitize=unreachable)
        CFLAGS_UBSAN += $(call cc-option, -fsanitize=vla-bound)
        CFLAGS_UBSAN += $(call cc-option, -fsanitize=signed-integer-overflow)
        CFLAGS_UBSAN += $(call cc-option, -fsanitize=bounds)
        CFLAGS_UBSAN += $(call cc-option, -fsanitize=object-size)
        CFLAGS_UBSAN += $(call cc-option, -fsanitize=returns-nonnull-attribute)
        CFLAGS_UBSAN += $(call cc-option, -fsanitize=bool)
        CFLAGS_UBSAN += $(call cc-option, -fsanitize=enum)
  
  ifdef CONFIG_UBSAN_ALIGNMENT
        CFLAGS_UBSAN += $(call cc-option, -fsanitize=alignment)
  endif
  
  ifdef CONFIG_UBSAN_NULL
        CFLAGS_UBSAN += $(call cc-option, -fsanitize=null)
  endif
  
        # -fsanitize=* options makes GCC less smart than usual and
        # increase number of 'maybe-uninitialized false-positives
        CFLAGS_UBSAN += $(call cc-option, -Wno-maybe-uninitialized)
  endif