Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3164cccd authored by Arnd Bergmann's avatar Arnd Bergmann Committed by Paul Mackerras
Browse files

[POWERPC] add Kconfig option for optimizing for cell



Since the PPE on cell is an in-order core, it suffers significantly
from wrong instruction scheduling.  This adds a Kconfig option that
enables passing -mtune=cell to gcc in order to generate object
code that runs well on cell.

Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
parent fb8299ed
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -92,6 +92,10 @@ else
endif
endif

ifeq ($(CONFIG_TUNE_CELL),y)
	CFLAGS += $(call cc-option,-mtune=cell)
endif

# No AltiVec instruction when building kernel
CFLAGS += $(call cc-option,-mno-altivec)

+12 −0
Original line number Diff line number Diff line
@@ -71,6 +71,18 @@ config POWER4
	depends on PPC64
	def_bool y

config TUNE_CELL
	bool "Optimize for Cell Broadband Engine"
	depends on PPC64
	help
	  Cause the compiler to optimize for the PPE of the Cell Broadband
	  Engine. This will make the code run considerably faster on Cell
	  but somewhat slower on other machines. This option only changes
	  the scheduling of instructions, not the selection of instructions
	  itself, so the resulting kernel will keep running on all other
	  machines. When building a kernel that is supposed to run only
	  on Cell, you should also select the POWER4_ONLY option.

config 6xx
	bool