1.1 --- a/stage2/entry.S Thu Feb 25 18:17:27 2016 +0100
1.2 +++ b/stage2/entry.S Thu Feb 25 21:29:53 2016 +0100
1.3 @@ -26,6 +26,18 @@
1.4 .set noreorder
1.5
1.6 _tlb_entry:
1.7 + /* Save the status. */
1.8 +
1.9 + mfc0 $k0, $12 /* CP0_STATUS */
1.10 + nop
1.11 + sw $k0, -120($sp)
1.12 +
1.13 + /* Mask interrupts. */
1.14 +
1.15 + li $k1, 0xffff03ff
1.16 + and $k1, $k0, $k1
1.17 + mtc0 $k1, $12
1.18 +
1.19 /* Save registers that the assembler wants to trash. */
1.20
1.21 sw $t9, -100($sp)
1.22 @@ -39,6 +51,18 @@
1.23 nop
1.24
1.25 _irq_entry:
1.26 + /* Save the status. */
1.27 +
1.28 + mfc0 $k0, $12 /* CP0_STATUS */
1.29 + nop
1.30 + sw $k0, -120($sp)
1.31 +
1.32 + /* Mask interrupts. */
1.33 +
1.34 + li $k1, 0xffff03ff
1.35 + and $k1, $k0, $k1
1.36 + mtc0 $k1, $12
1.37 +
1.38 /* Save registers that the assembler wants to trash. */
1.39
1.40 sw $t9, -100($sp)