]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
[PATCH] x86: Work around gcc 4.2 over aggressive optimizer
authorAndi Kleen <ak@suse.de>
Tue, 23 Jan 2007 17:17:09 +0000 (04:17 +1100)
committerChris Wright <chrisw@sous-sol.org>
Mon, 5 Feb 2007 16:31:42 +0000 (08:31 -0800)
The new PDA code uses a dummy _proxy_pda variable to describe
memory references to the PDA. It is never referenced
in inline assembly, but exists as input/output arguments.
gcc 4.2 in some cases can CSE references to this which causes
unresolved symbols.  Define it to zero to avoid this.

Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Chris Wright <chrisw@sous-sol.org>
arch/i386/kernel/vmlinux.lds.S
arch/x86_64/kernel/vmlinux.lds.S

index c6f84a0322ba30438dda746a630ef68e4ace7306..9d24225c4af88b27d4a9736e0453e224885aa860 100644 (file)
@@ -13,6 +13,7 @@ OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386")
 OUTPUT_ARCH(i386)
 ENTRY(phys_startup_32)
 jiffies = jiffies_64;
+_proxy_pda = 0;
 
 PHDRS {
        text PT_LOAD FLAGS(5);  /* R_E */
index d9534e750d4fa548e7f2a016b94fb022ee7689c0..79a680c5ab087585ad68dfef8743022fd6c96433 100644 (file)
@@ -13,6 +13,7 @@ OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64", "elf64-x86-64")
 OUTPUT_ARCH(i386:x86-64)
 ENTRY(phys_startup_64)
 jiffies_64 = jiffies;
+_proxy_pda = 0;
 PHDRS {
        text PT_LOAD FLAGS(5);  /* R_E */
        data PT_LOAD FLAGS(7);  /* RWE */