mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-26 02:39:48 +00:00
[S390] Add config option for z196 code generation.
Add a kernel config option for the IBM zEnterprise 196. This will produce faster code on newer compilers using the -march=z196 option. Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
This commit is contained in:
parent
7aca2eda5c
commit
f861e40572
3 changed files with 15 additions and 2 deletions
|
@ -287,6 +287,14 @@ config MARCH_Z10
|
||||||
machines such as the z990, z890, z900, z800, z9-109, z9-ec
|
machines such as the z990, z890, z900, z800, z9-109, z9-ec
|
||||||
and z9-bc.
|
and z9-bc.
|
||||||
|
|
||||||
|
config MARCH_Z196
|
||||||
|
bool "IBM zEnterprise 196"
|
||||||
|
help
|
||||||
|
Select this to enable optimizations for IBM zEnterprise 196.
|
||||||
|
The kernel will be slightly faster but will not work on older
|
||||||
|
machines such as the z990, z890, z900, z800, z9-109, z9-ec,
|
||||||
|
z9-bc, z10-ec and z10-bc.
|
||||||
|
|
||||||
endchoice
|
endchoice
|
||||||
|
|
||||||
config PACK_STACK
|
config PACK_STACK
|
||||||
|
|
|
@ -40,6 +40,7 @@ cflags-$(CONFIG_MARCH_Z900) += $(call cc-option,-march=z900)
|
||||||
cflags-$(CONFIG_MARCH_Z990) += $(call cc-option,-march=z990)
|
cflags-$(CONFIG_MARCH_Z990) += $(call cc-option,-march=z990)
|
||||||
cflags-$(CONFIG_MARCH_Z9_109) += $(call cc-option,-march=z9-109)
|
cflags-$(CONFIG_MARCH_Z9_109) += $(call cc-option,-march=z9-109)
|
||||||
cflags-$(CONFIG_MARCH_Z10) += $(call cc-option,-march=z10)
|
cflags-$(CONFIG_MARCH_Z10) += $(call cc-option,-march=z10)
|
||||||
|
cflags-$(CONFIG_MARCH_Z196) += $(call cc-option,-march=z196)
|
||||||
|
|
||||||
#KBUILD_IMAGE is necessary for make rpm
|
#KBUILD_IMAGE is necessary for make rpm
|
||||||
KBUILD_IMAGE :=arch/s390/boot/image
|
KBUILD_IMAGE :=arch/s390/boot/image
|
||||||
|
|
|
@ -488,7 +488,9 @@ startup:
|
||||||
.align 16
|
.align 16
|
||||||
2: .long 0x000a0000,0x8badcccc
|
2: .long 0x000a0000,0x8badcccc
|
||||||
#if defined(CONFIG_64BIT)
|
#if defined(CONFIG_64BIT)
|
||||||
#if defined(CONFIG_MARCH_Z10)
|
#if defined(CONFIG_MARCH_Z196)
|
||||||
|
.long 0xc100efe3, 0xf46c0000
|
||||||
|
#elif defined(CONFIG_MARCH_Z10)
|
||||||
.long 0xc100efe3, 0xf0680000
|
.long 0xc100efe3, 0xf0680000
|
||||||
#elif defined(CONFIG_MARCH_Z9_109)
|
#elif defined(CONFIG_MARCH_Z9_109)
|
||||||
.long 0xc100efc3, 0x00000000
|
.long 0xc100efc3, 0x00000000
|
||||||
|
@ -498,7 +500,9 @@ startup:
|
||||||
.long 0xc0000000, 0x00000000
|
.long 0xc0000000, 0x00000000
|
||||||
#endif
|
#endif
|
||||||
#else
|
#else
|
||||||
#if defined(CONFIG_MARCH_Z10)
|
#if defined(CONFIG_MARCH_Z196)
|
||||||
|
.long 0x8100c880, 0x00000000
|
||||||
|
#elif defined(CONFIG_MARCH_Z10)
|
||||||
.long 0x8100c880, 0x00000000
|
.long 0x8100c880, 0x00000000
|
||||||
#elif defined(CONFIG_MARCH_Z9_109)
|
#elif defined(CONFIG_MARCH_Z9_109)
|
||||||
.long 0x8100c880, 0x00000000
|
.long 0x8100c880, 0x00000000
|
||||||
|
|
Loading…
Reference in a new issue