diff options
Diffstat (limited to 'ldso/ldso/mips/boot1_arch.h')
-rw-r--r-- | ldso/ldso/mips/boot1_arch.h | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/ldso/ldso/mips/boot1_arch.h b/ldso/ldso/mips/boot1_arch.h index f439ee4bc..05aaf9ebb 100644 --- a/ldso/ldso/mips/boot1_arch.h +++ b/ldso/ldso/mips/boot1_arch.h @@ -1,7 +1,6 @@ /* Any assmbly language/system dependent hacks needed to setup boot1.c so it * will work as expected and cope with whatever platform specific wierdness is - * needed for this architecture. See arm/boot1_arch.h for an example of what - * can be done. + * needed for this architecture. */ asm(" @@ -13,7 +12,6 @@ _dl_boot: nop 0: .cpload $31 .set reorder - # Store offset of DYNAMIC section in first entry of GOT la $4, _DYNAMIC sw $4, -0x7ff0($28) move $4, $29 @@ -23,6 +21,14 @@ coff: subu $8, $31, $8 la $25, _dl_boot2 addu $25, $8 jalr $25 + lw $4, 0($29) + la $5, 4($29) + sll $6, $4, 2 + addu $6, $6, $5 + addu $6, $6, 4 + la $7, _dl_elf_main + lw $25, 0($7) + jr $25 "); #define _dl_boot _dl_boot2 |