]>
Commit | Line | Data |
---|---|---|
b2441318 | 1 | # SPDX-License-Identifier: GPL-2.0 |
bb273211 MY |
2 | |
3 | export CFLAGS_UBSAN := | |
4 | ||
0887a7eb KC |
5 | ifdef CONFIG_UBSAN_ALIGNMENT |
6 | CFLAGS_UBSAN += $(call cc-option, -fsanitize=alignment) | |
7 | endif | |
8 | ||
277a1085 | 9 | ifdef CONFIG_UBSAN_BOUNDS |
6a6155f6 GP |
10 | ifdef CONFIG_CC_IS_CLANG |
11 | CFLAGS_UBSAN += -fsanitize=array-bounds | |
12 | else | |
13 | CFLAGS_UBSAN += $(call cc-option, -fsanitize=bounds) | |
14 | endif | |
15 | endif | |
16 | ||
17 | ifdef CONFIG_UBSAN_LOCAL_BOUNDS | |
18 | CFLAGS_UBSAN += -fsanitize=local-bounds | |
277a1085 KC |
19 | endif |
20 | ||
21 | ifdef CONFIG_UBSAN_MISC | |
c6d30853 AR |
22 | CFLAGS_UBSAN += $(call cc-option, -fsanitize=shift) |
23 | CFLAGS_UBSAN += $(call cc-option, -fsanitize=integer-divide-by-zero) | |
24 | CFLAGS_UBSAN += $(call cc-option, -fsanitize=unreachable) | |
c6d30853 | 25 | CFLAGS_UBSAN += $(call cc-option, -fsanitize=signed-integer-overflow) |
c6d30853 | 26 | CFLAGS_UBSAN += $(call cc-option, -fsanitize=object-size) |
c6d30853 AR |
27 | CFLAGS_UBSAN += $(call cc-option, -fsanitize=bool) |
28 | CFLAGS_UBSAN += $(call cc-option, -fsanitize=enum) | |
277a1085 | 29 | endif |
c6d30853 | 30 | |
0887a7eb KC |
31 | ifdef CONFIG_UBSAN_TRAP |
32 | CFLAGS_UBSAN += $(call cc-option, -fsanitize-undefined-trap-on-error) | |
c6d30853 | 33 | endif |