From e73d676d8c766d5cb1de0c08523f2c81c9f0b5e8 Mon Sep 17 00:00:00 2001 From: Andi Kleen Date: Wed, 11 Jan 2006 22:43:54 +0100 Subject: [PATCH] --- yaml --- r: 17956 b: refs/heads/master c: bb33421dde79f9a36d5485c56335ff178ac7d268 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/arch/x86_64/Makefile | 3 +++ trunk/arch/x86_64/ia32/vsyscall-sigreturn.S | 1 + trunk/arch/x86_64/ia32/vsyscall-syscall.S | 1 + trunk/arch/x86_64/ia32/vsyscall-sysenter.S | 1 + trunk/arch/x86_64/kernel/vmlinux.lds.S | 2 ++ 6 files changed, 9 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 929c249c93b2..e31b2684f3b8 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 79c62cf1789f935280138b412bb750be84aec747 +refs/heads/master: bb33421dde79f9a36d5485c56335ff178ac7d268 diff --git a/trunk/arch/x86_64/Makefile b/trunk/arch/x86_64/Makefile index 2d3e9be229c0..d7fd46479c55 100644 --- a/trunk/arch/x86_64/Makefile +++ b/trunk/arch/x86_64/Makefile @@ -31,6 +31,7 @@ cflags-$(CONFIG_MK8) += $(call cc-option,-march=k8) cflags-$(CONFIG_MPSC) += $(call cc-option,-march=nocona) CFLAGS += $(cflags-y) +CFLAGS += -m64 CFLAGS += -mno-red-zone CFLAGS += -mcmodel=kernel CFLAGS += -pipe @@ -52,6 +53,8 @@ CFLAGS += $(call cc-option,-funit-at-a-time) # prevent gcc from generating any FP code by mistake CFLAGS += $(call cc-option,-mno-sse -mno-mmx -mno-sse2 -mno-3dnow,) +AFLAGS += -m64 + head-y := arch/x86_64/kernel/head.o arch/x86_64/kernel/head64.o arch/x86_64/kernel/init_task.o libs-y += arch/x86_64/lib/ diff --git a/trunk/arch/x86_64/ia32/vsyscall-sigreturn.S b/trunk/arch/x86_64/ia32/vsyscall-sigreturn.S index 8b5a4b060bb5..d90321fe9bba 100644 --- a/trunk/arch/x86_64/ia32/vsyscall-sigreturn.S +++ b/trunk/arch/x86_64/ia32/vsyscall-sigreturn.S @@ -7,6 +7,7 @@ * by doing ".balign 32" must match in both versions of the page. */ + .code32 .section .text.sigreturn,"ax" .balign 32 .globl __kernel_sigreturn diff --git a/trunk/arch/x86_64/ia32/vsyscall-syscall.S b/trunk/arch/x86_64/ia32/vsyscall-syscall.S index b024965bb689..cf9ef678de3e 100644 --- a/trunk/arch/x86_64/ia32/vsyscall-syscall.S +++ b/trunk/arch/x86_64/ia32/vsyscall-syscall.S @@ -6,6 +6,7 @@ #include #include + .code32 .text .section .text.vsyscall,"ax" .globl __kernel_vsyscall diff --git a/trunk/arch/x86_64/ia32/vsyscall-sysenter.S b/trunk/arch/x86_64/ia32/vsyscall-sysenter.S index 71f3de586b56..ae056e553d13 100644 --- a/trunk/arch/x86_64/ia32/vsyscall-sysenter.S +++ b/trunk/arch/x86_64/ia32/vsyscall-sysenter.S @@ -5,6 +5,7 @@ #include #include + .code32 .text .section .text.vsyscall,"ax" .globl __kernel_vsyscall diff --git a/trunk/arch/x86_64/kernel/vmlinux.lds.S b/trunk/arch/x86_64/kernel/vmlinux.lds.S index 4cbbe7c48839..b0eed1faf740 100644 --- a/trunk/arch/x86_64/kernel/vmlinux.lds.S +++ b/trunk/arch/x86_64/kernel/vmlinux.lds.S @@ -8,6 +8,8 @@ #include #include +#undef i386 /* in case the preprocessor is a 32bit one */ + OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64") OUTPUT_ARCH(i386:x86-64) ENTRY(phys_startup_64)