Commit 697b3737 authored by Heiko Carstens's avatar Heiko Carstens

s390: Provide MARCH_HAS_*_FEATURES defines

Provide MARCH_HAS_*_FEATURES defines which are supposed to be used
everywhere instead of the CONFIG_HAVE_MARCH_*_FEATURES defines.

Various header files contain code which depend on the
CONFIG_HAVE_MARCH_*_FEATURES defines, allowing for compile time
optimizations. If such code is used within the decompressor wrong code may
be generated (the compiler may generate instructions which are not
available for the minimum architecture level of the decompressor).

Therefore provide a new header file with MARCH_HAS_*_FEATURES defines,
which are only available if __DECOMPRESSOR is not defined. This way code
generation for the kernel image is still optimized depending on
CONFIG_HAVE_MARCH_*_FEATURES, while code generated for the decompressor is
compiled for the minimum architecture level.
Reviewed-by: default avatarSven Schnelle <svens@linux.ibm.com>
Signed-off-by: default avatarHeiko Carstens <hca@linux.ibm.com>
parent 0147addc
/* SPDX-License-Identifier: GPL-2.0 */
#ifndef __ASM_S390_MARCH_H
#define __ASM_S390_MARCH_H
#include <linux/kconfig.h>
#define MARCH_HAS_Z10_FEATURES 1
#ifndef __DECOMPRESSOR
#ifdef CONFIG_HAVE_MARCH_Z196_FEATURES
#define MARCH_HAS_Z196_FEATURES 1
#endif
#ifdef CONFIG_HAVE_MARCH_ZEC12_FEATURES
#define MARCH_HAS_ZEC12_FEATURES 1
#endif
#ifdef CONFIG_HAVE_MARCH_Z13_FEATURES
#define MARCH_HAS_Z13_FEATURES 1
#endif
#ifdef CONFIG_HAVE_MARCH_Z14_FEATURES
#define MARCH_HAS_Z14_FEATURES 1
#endif
#ifdef CONFIG_HAVE_MARCH_Z15_FEATURES
#define MARCH_HAS_Z15_FEATURES 1
#endif
#ifdef CONFIG_HAVE_MARCH_Z16_FEATURES
#define MARCH_HAS_Z16_FEATURES 1
#endif
#endif /* __DECOMPRESSOR */
#endif /* __ASM_S390_MARCH_H */
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment