powerpc/8xx: Don't restore regs to save them again.
authorLEROY Christophe <christophe.leroy@c-s.fr>
Fri, 19 Sep 2014 08:36:10 +0000 (10:36 +0200)
committerScott Wood <scottwood@freescale.com>
Sat, 8 Nov 2014 00:10:44 +0000 (18:10 -0600)
There is not need to restore r10, r11 and cr registers at this end of ITLBmiss
handler as they are saved again to the same place in ITLBError handler we are
jumping to.

Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
Signed-off-by: Scott Wood <scottwood@freescale.com>
arch/powerpc/kernel/head_8xx.S

index 46b47e1fe2a9337d7f261188e64af761f2961b88..330d54418494d0d5ef4b061adbdaf546456c420a 100644 (file)
@@ -383,8 +383,7 @@ InstructionTLBMiss:
        lwz     r3, 8(r0)
 #endif
        mfspr   r10, SPRN_SPRG_SCRATCH2
-       EXCEPTION_EPILOG_0
-       b       InstructionTLBError
+       b       InstructionTLBError1
 
        . = 0x1200
 DataStoreTLBMiss:
@@ -473,7 +472,10 @@ DataStoreTLBMiss:
  */
        . = 0x1300
 InstructionTLBError:
-       EXCEPTION_PROLOG
+       EXCEPTION_PROLOG_0
+InstructionTLBError1:
+       EXCEPTION_PROLOG_1
+       EXCEPTION_PROLOG_2
        mr      r4,r12
        mr      r5,r9
        /* 0x400 is InstructionAccess exception, needed by bad_page_fault() */