]> git.proxmox.com Git - mirror_ubuntu-hirsute-kernel.git/blame - scripts/Makefile.ubsan
ubsan: add trap instrumentation option
[mirror_ubuntu-hirsute-kernel.git] / scripts / Makefile.ubsan
CommitLineData
b2441318 1# SPDX-License-Identifier: GPL-2.0
c6d30853 2ifdef CONFIG_UBSAN
0887a7eb
KC
3
4ifdef CONFIG_UBSAN_ALIGNMENT
5 CFLAGS_UBSAN += $(call cc-option, -fsanitize=alignment)
6endif
7
c6d30853
AR
8 CFLAGS_UBSAN += $(call cc-option, -fsanitize=shift)
9 CFLAGS_UBSAN += $(call cc-option, -fsanitize=integer-divide-by-zero)
10 CFLAGS_UBSAN += $(call cc-option, -fsanitize=unreachable)
c6d30853
AR
11 CFLAGS_UBSAN += $(call cc-option, -fsanitize=signed-integer-overflow)
12 CFLAGS_UBSAN += $(call cc-option, -fsanitize=bounds)
13 CFLAGS_UBSAN += $(call cc-option, -fsanitize=object-size)
c6d30853
AR
14 CFLAGS_UBSAN += $(call cc-option, -fsanitize=bool)
15 CFLAGS_UBSAN += $(call cc-option, -fsanitize=enum)
16
0887a7eb
KC
17ifdef CONFIG_UBSAN_TRAP
18 CFLAGS_UBSAN += $(call cc-option, -fsanitize-undefined-trap-on-error)
c6d30853 19endif
725c4d22 20
a76bcf55
AB
21 # -fsanitize=* options makes GCC less smart than usual and
22 # increase number of 'maybe-uninitialized false-positives
23 CFLAGS_UBSAN += $(call cc-option, -Wno-maybe-uninitialized)
c6d30853 24endif