diff --git a/arch/x86/Makefile b/arch/x86/Makefile index 2eddc170155e1f5cb025cadeed2ec78342abd5ed..ffc823a8312fbdbc78e6eb095ecbb838a6274ed6 100644 --- a/arch/x86/Makefile +++ b/arch/x86/Makefile @@ -227,8 +227,12 @@ ifdef CONFIG_RETPOLINE # Additionally, avoid generating expensive indirect jumps which # are subject to retpolines for small number of switch cases. # clang turns off jump table generation by default when under - # retpoline builds, however, gcc does not for x86. - KBUILD_CFLAGS += $(call cc-option,--param=case-values-threshold=20) + # retpoline builds, however, gcc does not for x86. This has + # only been fixed starting from gcc stable version 8.4.0 and + # onwards, but not for older ones. See gcc bug #86952. + ifndef CONFIG_CC_IS_CLANG + KBUILD_CFLAGS += $(call cc-option,-fno-jump-tables) + endif endif archscripts: scripts_basic