[U-Boot-Users] RE: -allow_branch_to_undefined on mipsel-linux-as > 2.15

Rodolfo Giometti giometti at linux.it
Tue Sep 27 23:47:27 CEST 2005


On Tue, Sep 27, 2005 at 04:06:22PM -0500, Tim Braun wrote:
> I have been using mipsel-linux-uclibc-gcc 3.4.2 with binutils
> 2.15.91.0.2, and I have no
> -allow_branch_to_undefined in this toolchain.  I patched
> cpu/mips/start.S to set up the GOT
> gp earlier, and used jal instructions to get to memsetup and the other
> subroutines called there.

I suppose you mean the attached patch... the problem is that even if
using that patch I still get:

   mipsel-linux-gcc -Wa,-gstabs -D__ASSEMBLY__ -g  -Os   -D__KERNEL__ -DTEXT_BASE=0xbfc00000 -I/home/giometti/Projects/exadron/wwpc/uboot-mips-exadron/include -fno-builtin -ffreestanding -nostdinc -isystem /usr/local/mipsel/lib/gcc/mipsel-linux/3.4.3/include -pipe  -DCONFIG_MIPS -D__MIPS__ -march=4kc -mtune=4kc -mabicalls -c -o cpu/mips/start.o /home/giometti/Projects/exadron/wwpc/uboot-mips-exadron/cpu/mips/start.S
   /home/giometti/Projects/exadron/wwpc/uboot-mips-exadron/cpu/mips/start.S: Assembler messages:
   /home/giometti/Projects/exadron/wwpc/uboot-mips-exadron/cpu/mips/start.S:241: Error: can't resolve `_GLOBAL_OFFSET_TABLE_' {*UND* section} - `L11' {.text section}
   make: *** [cpu/mips/start.o] Error 1

Ciao,

Rodolfo

-- 

GNU/Linux Solutions                  e-mail:    giometti at linux.it
Linux Device Driver                             giometti at enneenne.com
Embedded Systems                     home page: giometti.enneenne.com
UNIX programming                     phone:     +39 349 2432127
-------------- next part --------------
Index: ./cpu/mips/start.S
===================================================================
RCS file: /home/develop/cvs_private/uboot-mips-exadron/cpu/mips/start.S,v
retrieving revision 1.1.1.1
diff -u -r1.1.1.1 start.S
--- a/./cpu/mips/start.S	16 Sep 2005 12:14:19 -0000	1.1.1.1
+++ b/./cpu/mips/start.S	27 Sep 2005 21:46:24 -0000
@@ -234,21 +234,34 @@
 	li	t0, CONF_CM_UNCACHED
 	mtc0	t0, CP0_CONFIG
 
+	/* Initialize GOT pointer.
+	 */
+	bal	1f
+	nop
+	.word	_GLOBAL_OFFSET_TABLE_ - 1f + 4
+1:
+	move	gp, ra
+	lw	t1, 0(ra)
+	add	gp, t1
+
 #ifdef CONFIG_INCA_IP
 	/* Disable INCA-IP Watchdog.
 	 */
-	bal	disable_incaip_wdt
+	la	t9, disable_incaip_wdt
+	jalr	t9
 	nop
 #endif
 
 	/* Initialize any external memory.
 	 */
-	bal	lowlevel_init
+	la	t9, lowlevel_init
+	jalr	t9
 	nop
 
 	/* Initialize caches...
 	 */
-	bal	mips_cache_reset
+	la	t9, mips_cache_reset
+	jalr	t9
 	nop
 
 	/* ... and enable them.
@@ -260,21 +273,13 @@
 	/* Set up temporary stack.
 	 */
 	li	a0, CFG_INIT_SP_OFFSET
-	bal	mips_cache_lock
+	la	t9, mips_cache_lock
+	jalr	t9
 	nop
 
 	li	t0, CFG_SDRAM_BASE + CFG_INIT_SP_OFFSET
 	la	sp, 0(t0)
 
-	/* Initialize GOT pointer.
-	 */
-	bal	1f
-	nop
-	.word	_GLOBAL_OFFSET_TABLE_ - 1f + 4
-1:
-	move	gp, ra
-	lw	t1, 0(ra)
-	add	gp, t1
 	la	t9, board_init_f
 	j	t9
 	nop
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
Url : http://lists.denx.de/pipermail/u-boot/attachments/20050927/c64e6235/attachment.pgp 


More information about the U-Boot mailing list