Use $t9 for indirect calls from asm to C as PIC ABI requires.

This commit is contained in:
Vladimir Serbinenko 2013-11-22 04:45:05 +01:00
parent 0d8f04cd83
commit 6f4a19f59f
3 changed files with 11 additions and 7 deletions

View file

@ -1,3 +1,7 @@
2013-11-22 Vladimir Serbinenko <phcoder@gmail.com>
Use $t9 for indirect calls from asm to C as PIC ABI requires.
2013-11-22 Vladimir Serbinenko <phcoder@gmail.com>
Remove -march=mips3 from TARGET_CCASFLAGS as it creates linking problem

View file

@ -265,16 +265,16 @@ cmdlinedone:
*/
move $s6, $a3
lui $t0, %hi(EXT_C(grub_decompress_core))
addiu $t0, $t0, %lo(EXT_C(grub_decompress_core))
lui $t9, %hi(EXT_C(grub_decompress_core))
addiu $t9, $t9, %lo(EXT_C(grub_decompress_core))
#ifdef GRUB_MACHINE_ARC
lui $sp, %hi(_start - 512)
jalr $t0
jalr $t9
addiu $sp, $sp, %lo(_start - 512)
#else
lui $sp, %hi(_start - 256)
jalr $t0
jalr $t9
addiu $sp, $sp, %lo(_start - 256)
#endif
move $a0, $s1

View file

@ -116,10 +116,10 @@ bsscont:
bne $t3, $0, bsscont
nop
lui $t1, %hi(grub_main)
addiu $t1, %lo(grub_main)
lui $t9, %hi(grub_main)
addiu $t9, %lo(grub_main)
lui $sp, %hi(GRUB_MACHINE_MEMORY_STACK_HIGH)
jr $t1
jr $t9
addiu $sp, $sp, %lo(GRUB_MACHINE_MEMORY_STACK_HIGH)