summaryrefslogtreecommitdiffstats
path: root/arch/s390/kernel/Makefile
diff options
context:
space:
mode:
authorHeiko Carstens2015-11-05 14:03:32 +0100
committerMartin Schwidefsky2015-12-18 14:59:26 +0100
commit6527f6e0cb6a14c3938140f609d2fde59f4299fc (patch)
tree6c5fba8420defba05733d1fdd12f717bcfa042b3 /arch/s390/kernel/Makefile
parentkbuild: add AFLAGS_REMOVE_(basename).o option (diff)
downloadkernel-qcow2-linux-6527f6e0cb6a14c3938140f609d2fde59f4299fc.tar.gz
kernel-qcow2-linux-6527f6e0cb6a14c3938140f609d2fde59f4299fc.tar.xz
kernel-qcow2-linux-6527f6e0cb6a14c3938140f609d2fde59f4299fc.zip
s390: compile head.S always with -march=z900
head.S on s390 contains some sanity checks if the kernel will run on a machine or if the machine is too old, e.g. if the kernel contains instructions not available on the machine. If so, it will emit an error message to the console before it stops execution. Therefore head.S contains only instructions which are availanble with the earliest machine generation (z900). In order to make sure we don't accidently add instructions which are not available on z900, always compile with -march=z900. This makes sure compilation will fail if wrong instructions are used. Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch/s390/kernel/Makefile')
-rw-r--r--arch/s390/kernel/Makefile6
1 files changed, 4 insertions, 2 deletions
diff --git a/arch/s390/kernel/Makefile b/arch/s390/kernel/Makefile
index dc167a23b920..e9a328d42610 100644
--- a/arch/s390/kernel/Makefile
+++ b/arch/s390/kernel/Makefile
@@ -34,8 +34,10 @@ CFLAGS_sysinfo.o += -w
#
CFLAGS_REMOVE_sclp.o = $(CC_FLAGS_FTRACE)
ifneq ($(CC_FLAGS_MARCH),-march=z900)
-CFLAGS_REMOVE_sclp.o += $(CC_FLAGS_MARCH)
-CFLAGS_sclp.o += -march=z900
+CFLAGS_REMOVE_sclp.o += $(CC_FLAGS_MARCH)
+CFLAGS_sclp.o += -march=z900
+AFLAGS_REMOVE_head.o += $(CC_FLAGS_MARCH)
+AFLAGS_head.o += -march=z900
endif
GCOV_PROFILE_sclp.o := n