mirror of
https://github.com/tbsdtv/linux_media.git
synced 2025-07-23 12:43:29 +02:00
Revert "kbuild/Makefile: Prepare for using macros in inline assembly code to work around asm() related GCC inlining bugs"
This reverts commit77b0bf55bc
. See this commit for details about the revert:e769742d35
("Revert "x86/jump-labels: Macrofy inline assembly code to work around GCC inlining bugs"") Conflicts: arch/x86/Makefile Reported-by: Masahiro Yamada <yamada.masahiro@socionext.com> Reviewed-by: Borislav Petkov <bp@alien8.de> Reviewed-by: Thomas Gleixner <tglx@linutronix.de> Cc: Juergen Gross <jgross@suse.com> Cc: Richard Biener <rguenther@suse.de> Cc: Kees Cook <keescook@chromium.org> Cc: Segher Boessenkool <segher@kernel.crashing.org> Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Josh Poimboeuf <jpoimboe@redhat.com> Cc: Nadav Amit <namit@vmware.com> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: linux-kernel@vger.kernel.org Signed-off-by: Ingo Molnar <mingo@kernel.org>
This commit is contained in:
9
Makefile
9
Makefile
@@ -1081,7 +1081,7 @@ scripts: scripts_basic scripts_dtc asm-generic gcc-plugins $(autoksyms_h)
|
|||||||
# version.h and scripts_basic is processed / created.
|
# version.h and scripts_basic is processed / created.
|
||||||
|
|
||||||
# Listed in dependency order
|
# Listed in dependency order
|
||||||
PHONY += prepare archprepare macroprepare prepare0 prepare1 prepare2 prepare3
|
PHONY += prepare archprepare prepare0 prepare1 prepare2 prepare3
|
||||||
|
|
||||||
# prepare3 is used to check if we are building in a separate output directory,
|
# prepare3 is used to check if we are building in a separate output directory,
|
||||||
# and if so do:
|
# and if so do:
|
||||||
@@ -1104,9 +1104,7 @@ prepare2: prepare3 outputmakefile asm-generic
|
|||||||
prepare1: prepare2 $(version_h) $(autoksyms_h) include/generated/utsrelease.h
|
prepare1: prepare2 $(version_h) $(autoksyms_h) include/generated/utsrelease.h
|
||||||
$(cmd_crmodverdir)
|
$(cmd_crmodverdir)
|
||||||
|
|
||||||
macroprepare: prepare1 archmacros
|
archprepare: archheaders archscripts prepare1 scripts_basic
|
||||||
|
|
||||||
archprepare: archheaders archscripts macroprepare scripts_basic
|
|
||||||
|
|
||||||
prepare0: archprepare gcc-plugins
|
prepare0: archprepare gcc-plugins
|
||||||
$(Q)$(MAKE) $(build)=.
|
$(Q)$(MAKE) $(build)=.
|
||||||
@@ -1174,9 +1172,6 @@ archheaders:
|
|||||||
PHONY += archscripts
|
PHONY += archscripts
|
||||||
archscripts:
|
archscripts:
|
||||||
|
|
||||||
PHONY += archmacros
|
|
||||||
archmacros:
|
|
||||||
|
|
||||||
PHONY += __headers
|
PHONY += __headers
|
||||||
__headers: $(version_h) scripts_basic uapi-asm-generic archheaders archscripts
|
__headers: $(version_h) scripts_basic uapi-asm-generic archheaders archscripts
|
||||||
$(Q)$(MAKE) $(build)=scripts build_unifdef
|
$(Q)$(MAKE) $(build)=scripts build_unifdef
|
||||||
|
@@ -232,13 +232,6 @@ archscripts: scripts_basic
|
|||||||
archheaders:
|
archheaders:
|
||||||
$(Q)$(MAKE) $(build)=arch/x86/entry/syscalls all
|
$(Q)$(MAKE) $(build)=arch/x86/entry/syscalls all
|
||||||
|
|
||||||
archmacros:
|
|
||||||
$(Q)$(MAKE) $(build)=arch/x86/kernel arch/x86/kernel/macros.s
|
|
||||||
|
|
||||||
ASM_MACRO_FLAGS = -Wa,arch/x86/kernel/macros.s
|
|
||||||
export ASM_MACRO_FLAGS
|
|
||||||
KBUILD_CFLAGS += $(ASM_MACRO_FLAGS)
|
|
||||||
|
|
||||||
###
|
###
|
||||||
# Kernel objects
|
# Kernel objects
|
||||||
|
|
||||||
|
@@ -1,7 +0,0 @@
|
|||||||
/* SPDX-License-Identifier: GPL-2.0 */
|
|
||||||
|
|
||||||
/*
|
|
||||||
* This file includes headers whose assembly part includes macros which are
|
|
||||||
* commonly used. The macros are precompiled into assmebly file which is later
|
|
||||||
* assembled together with each compiled file.
|
|
||||||
*/
|
|
@@ -115,9 +115,7 @@ __cc-option = $(call try-run,\
|
|||||||
|
|
||||||
# Do not attempt to build with gcc plugins during cc-option tests.
|
# Do not attempt to build with gcc plugins during cc-option tests.
|
||||||
# (And this uses delayed resolution so the flags will be up to date.)
|
# (And this uses delayed resolution so the flags will be up to date.)
|
||||||
# In addition, do not include the asm macros which are built later.
|
CC_OPTION_CFLAGS = $(filter-out $(GCC_PLUGINS_CFLAGS),$(KBUILD_CFLAGS))
|
||||||
CC_OPTION_FILTERED = $(GCC_PLUGINS_CFLAGS) $(ASM_MACRO_FLAGS)
|
|
||||||
CC_OPTION_CFLAGS = $(filter-out $(CC_OPTION_FILTERED),$(KBUILD_CFLAGS))
|
|
||||||
|
|
||||||
# cc-option
|
# cc-option
|
||||||
# Usage: cflags-y += $(call cc-option,-march=winchip-c6,-march=i586)
|
# Usage: cflags-y += $(call cc-option,-march=winchip-c6,-march=i586)
|
||||||
|
@@ -4,8 +4,6 @@ OBJECT_FILES_NON_STANDARD := y
|
|||||||
hostprogs-y := modpost mk_elfconfig
|
hostprogs-y := modpost mk_elfconfig
|
||||||
always := $(hostprogs-y) empty.o
|
always := $(hostprogs-y) empty.o
|
||||||
|
|
||||||
CFLAGS_REMOVE_empty.o := $(ASM_MACRO_FLAGS)
|
|
||||||
|
|
||||||
modpost-objs := modpost.o file2alias.o sumversion.o
|
modpost-objs := modpost.o file2alias.o sumversion.o
|
||||||
|
|
||||||
devicetable-offsets-file := devicetable-offsets.h
|
devicetable-offsets-file := devicetable-offsets.h
|
||||||
|
Reference in New Issue
Block a user