summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWolfgang Denk <wd@denx.de>2011-03-29 12:34:50 (GMT)
committerWolfgang Denk <wd@denx.de>2011-03-31 06:54:35 (GMT)
commit7ec830d5804337afe19413c3eaedd16583af9076 (patch)
tree88114345548ea19dd07d1ded70b4fa02a369a164
parentcb815e5ff979e36d68df130a810d34de4bf93289 (diff)
downloadu-boot-7ec830d5804337afe19413c3eaedd16583af9076.tar.xz
Fix build problems caused by "_end" -> "__bss_end__" rename
Commit 44c6e65 "rename _end to __bss_end__ broke building of a large number of systems (at least all PowerPC?): libstubs.o: In function `app_startup': examples/standalone/stubs.c:197: undefined reference to `__bss_end__' The rename should not be done for the files in the examples/standalone/ directory, as these are not using the code from start.S, but do their own BSS clearing, and either use their own linker scripts or the ones provided by the compilers. Signed-off-by: Po-Yu Chuang <ratbert@faraday-tech.com> Signed-off-by: Wolfgang Denk <wd@denx.de>
-rw-r--r--examples/standalone/mips.lds2
-rw-r--r--examples/standalone/sparc.lds2
-rw-r--r--examples/standalone/stubs.c4
3 files changed, 4 insertions, 4 deletions
diff --git a/examples/standalone/mips.lds b/examples/standalone/mips.lds
index 68ae217..63a1c92 100644
--- a/examples/standalone/mips.lds
+++ b/examples/standalone/mips.lds
@@ -55,5 +55,5 @@ SECTIONS
.sbss (NOLOAD) : { *(.sbss) }
.bss (NOLOAD) : { *(.bss) . = ALIGN(4); }
- __bss_end__ = .;
+ _end = .;
}
diff --git a/examples/standalone/sparc.lds b/examples/standalone/sparc.lds
index 7f060b6..9733daa 100644
--- a/examples/standalone/sparc.lds
+++ b/examples/standalone/sparc.lds
@@ -57,5 +57,5 @@ SECTIONS
}
. = ALIGN(4);
__bss_end = .;
- __bss_end__ = .;
+ _end = .;
}
diff --git a/examples/standalone/stubs.c b/examples/standalone/stubs.c
index 1379df7..2d2e709 100644
--- a/examples/standalone/stubs.c
+++ b/examples/standalone/stubs.c
@@ -187,14 +187,14 @@ void __attribute__((unused)) dummy(void)
#include <_exports.h>
}
-extern unsigned long __bss_start, __bss_end__;
+extern unsigned long __bss_start, _end;
void app_startup(char * const *argv)
{
unsigned char * cp = (unsigned char *) &__bss_start;
/* Zero out BSS */
- while (cp < (unsigned char *)&__bss_end__) {
+ while (cp < (unsigned char *)&_end) {
*cp++ = 0;
}