X-Git-Url: http://git.monstr.eu/?a=blobdiff_plain;f=Makefile;h=f03888cdba4e912a974258979350684cfd447b5e;hb=ae4393dfd472b194c90d75d2123105fb5ed59b04;hp=70bfa5067c873c49325d1b10e2b335eadace3f44;hpb=c065c42966dd3e9415164afcb9bfd4300227ffe9;p=linux-2.6-microblaze.git diff --git a/Makefile b/Makefile index 70bfa5067c87..f03888cdba4e 100644 --- a/Makefile +++ b/Makefile @@ -924,6 +924,23 @@ KBUILD_AFLAGS += -fno-lto export CC_FLAGS_LTO endif +ifdef CONFIG_CFI_CLANG +CC_FLAGS_CFI := -fsanitize=cfi \ + -fsanitize-cfi-cross-dso \ + -fno-sanitize-cfi-canonical-jump-tables \ + -fno-sanitize-trap=cfi \ + -fno-sanitize-blacklist + +ifdef CONFIG_CFI_PERMISSIVE +CC_FLAGS_CFI += -fsanitize-recover=cfi +endif + +# If LTO flags are filtered out, we must also filter out CFI. +CC_FLAGS_LTO += $(CC_FLAGS_CFI) +KBUILD_CFLAGS += $(CC_FLAGS_CFI) +export CC_FLAGS_CFI +endif + ifdef CONFIG_DEBUG_FORCE_FUNCTION_ALIGN_32B KBUILD_CFLAGS += -falign-functions=32 endif