# SPDX-License-Identifier: GPL-2.0

export CFLAGS_UBSAN :=

ifdef CONFIG_UBSAN_ALIGNMENT
      CFLAGS_UBSAN += $(call cc-option, -fsanitize=alignment)
endif

ifdef CONFIG_UBSAN_BOUNDS
      ifdef CONFIG_CC_IS_CLANG
            CFLAGS_UBSAN += -fsanitize=array-bounds
      else
            CFLAGS_UBSAN += $(call cc-option, -fsanitize=bounds)
      endif
endif

ifdef CONFIG_UBSAN_LOCAL_BOUNDS
      CFLAGS_UBSAN += -fsanitize=local-bounds
endif

ifdef CONFIG_UBSAN_MISC
      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=signed-integer-overflow)
      CFLAGS_UBSAN += $(call cc-option, -fsanitize=bool)
      CFLAGS_UBSAN += $(call cc-option, -fsanitize=enum)
endif

ifdef CONFIG_UBSAN_TRAP
      CFLAGS_UBSAN += $(call cc-option, -fsanitize-undefined-trap-on-error)
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)
