# HG changeset patch # User Paul Boddie # Date 1461681283 -7200 # Node ID 62db3a0bc7465df6000d6316b779d6444f96be82 # Parent a2a0be47d91bef1ae079941cc7d4c26b0c77df4e Removed the separate reference for the task entry routine. It shouldn't be needed if the status register can be modified in advance of exception return, anyway. diff -r a2a0be47d91b -r 62db3a0bc746 stage2/entry.S --- a/stage2/entry.S Tue Apr 26 15:19:01 2016 +0200 +++ b/stage2/entry.S Tue Apr 26 16:34:43 2016 +0200 @@ -99,10 +99,9 @@ _tlb_exit: /* For ASID != 0... */ - lui $k0, %hi(_enter_task) - ori $k0, $k0, %lo(_enter_task) - lw $k1, 0($k0) - jr $k1 + lui $k0, %hi(enter_task) + ori $k0, $k0, %lo(enter_task) + jr $k0 nop _exc_entry: diff -r a2a0be47d91b -r 62db3a0bc746 stage2/handlers.S --- a/stage2/handlers.S Tue Apr 26 15:19:01 2016 +0200 +++ b/stage2/handlers.S Tue Apr 26 16:34:43 2016 +0200 @@ -148,12 +148,6 @@ lw $k0, 124($k1) mthi $k0 - lui $k0, %hi(_enter_task) - ori $k0, $k0, %lo(_enter_task) - lw $k1, 0($k0) - jr $k1 - nop - enter_task: eret nop diff -r a2a0be47d91b -r 62db3a0bc746 stage2/head2.S --- a/stage2/head2.S Tue Apr 26 15:19:01 2016 +0200 +++ b/stage2/head2.S Tue Apr 26 16:34:43 2016 +0200 @@ -31,9 +31,7 @@ .extern _got_start .extern _got_end .extern _got_copy_start -.extern enter_task .globl _start -.globl _enter_task .set noreorder _start: @@ -104,23 +102,12 @@ mtc0 $t0, $16 /* CP0_CONFIG */ nop - /* Set up the enter task reference for convenience. */ - - la $t0, enter_task - li $t1, 0x80000000 - /* subu $t0, $t0, $t1 */ - la $t1, _enter_task - sw $t0, 0($t1) - /* Start the program. */ la $t9, c_main /* load the address of the routine */ j c_main nop -_enter_task: - .word 0 - _copy: /* Copy via $t3 the region from $t0 to $t2 into $t1. */