From mboxrd@z Thu Jan 1 00:00:00 1970 From: Vlad Lungu Date: Mon, 05 May 2008 14:04:00 +0300 Subject: [U-Boot-Users] [PATCH] Allow building mips versions with ELDK 3.1.1 Message-ID: <481EE9A0.60403@windriver.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de .gpword works only with local symbols on certain binutils versions Signed-off-by: Vlad Lungu --- cpu/mips/start.S | 9 ++++++--- 1 files changed, 6 insertions(+), 3 deletions(-) diff --git a/cpu/mips/start.S b/cpu/mips/start.S index 6e1a78c..947128d 100644 --- a/cpu/mips/start.S +++ b/cpu/mips/start.S @@ -345,7 +345,8 @@ relocate_code: jr t0 nop - .gpword _GLOBAL_OFFSET_TABLE_ /* _GLOBAL_OFFSET_TABLE_ - _gp */ + .word _gp + .word _GLOBAL_OFFSET_TABLE_ .word uboot_end_data .word uboot_end .word num_got_entries @@ -358,8 +359,10 @@ in_ram: * generated by GNU ld. Skip these reserved entries from relocation. */ lw t3, -4(t0) /* t3 <-- num_got_entries */ - lw t4, -16(t0) /* t4 <-- (_GLOBAL_OFFSET_TABLE_ - _gp) */ - add t4, t4, gp /* t4 now holds _GLOBAL_OFFSET_TABLE_ */ + lw t4, -16(t0) /* t4 <-- _GLOBAL_OFFSET_TABLE_ */ + lw t5, -20(t0) /* t5 <-- _gp */ + sub t4, t5 /* compute offset*/ + add t4, t4, gp /* t4 now holds relocated _GLOBAL_OFFSET_TABLE_ */ addi t4, t4, 8 /* Skipping first two entries. */ li t2, 2 1: -- 1.5.4