Commit 3aacaa71 authored by Christophe Leroy's avatar Christophe Leroy Committed by Michael Ellerman

powerpc/40x: Don't save CR in SPRN_SPRG_SCRATCH6

We have r12 available, use it to keep CR around and don't
save it in SPRN_SPRG_SCRATCH6.
Signed-off-by: default avatarChristophe Leroy <christophe.leroy@c-s.fr>
Signed-off-by: default avatarChristophe Leroy <christophe.leroy@csgroup.eu>
Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/019f314a98c107c4ca46e46c1cf402e9a44114a7.1590079969.git.christophe.leroy@csgroup.eu
parent 797f4016
...@@ -254,9 +254,8 @@ _ENTRY(saved_ksp_limit) ...@@ -254,9 +254,8 @@ _ENTRY(saved_ksp_limit)
mtspr SPRN_SPRG_SCRATCH1, r11 mtspr SPRN_SPRG_SCRATCH1, r11
mtspr SPRN_SPRG_SCRATCH3, r12 mtspr SPRN_SPRG_SCRATCH3, r12
mtspr SPRN_SPRG_SCRATCH4, r9 mtspr SPRN_SPRG_SCRATCH4, r9
mfcr r11 mfcr r12
mfspr r9, SPRN_PID mfspr r9, SPRN_PID
mtspr SPRN_SPRG_SCRATCH6, r11
mtspr SPRN_SPRG_SCRATCH5, r9 mtspr SPRN_SPRG_SCRATCH5, r9
mfspr r10, SPRN_DEAR /* Get faulting address */ mfspr r10, SPRN_DEAR /* Get faulting address */
...@@ -323,9 +322,8 @@ _ENTRY(saved_ksp_limit) ...@@ -323,9 +322,8 @@ _ENTRY(saved_ksp_limit)
* and call the heavyweights to help us out. * and call the heavyweights to help us out.
*/ */
mfspr r9, SPRN_SPRG_SCRATCH5 mfspr r9, SPRN_SPRG_SCRATCH5
mfspr r11, SPRN_SPRG_SCRATCH6
mtspr SPRN_PID, r9 mtspr SPRN_PID, r9
mtcr r11 mtcr r12
mfspr r9, SPRN_SPRG_SCRATCH4 mfspr r9, SPRN_SPRG_SCRATCH4
mfspr r12, SPRN_SPRG_SCRATCH3 mfspr r12, SPRN_SPRG_SCRATCH3
mfspr r11, SPRN_SPRG_SCRATCH1 mfspr r11, SPRN_SPRG_SCRATCH1
...@@ -341,9 +339,8 @@ _ENTRY(saved_ksp_limit) ...@@ -341,9 +339,8 @@ _ENTRY(saved_ksp_limit)
mtspr SPRN_SPRG_SCRATCH1, r11 mtspr SPRN_SPRG_SCRATCH1, r11
mtspr SPRN_SPRG_SCRATCH3, r12 mtspr SPRN_SPRG_SCRATCH3, r12
mtspr SPRN_SPRG_SCRATCH4, r9 mtspr SPRN_SPRG_SCRATCH4, r9
mfcr r11 mfcr r12
mfspr r9, SPRN_PID mfspr r9, SPRN_PID
mtspr SPRN_SPRG_SCRATCH6, r11
mtspr SPRN_SPRG_SCRATCH5, r9 mtspr SPRN_SPRG_SCRATCH5, r9
mfspr r10, SPRN_SRR0 /* Get faulting address */ mfspr r10, SPRN_SRR0 /* Get faulting address */
...@@ -410,9 +407,8 @@ _ENTRY(saved_ksp_limit) ...@@ -410,9 +407,8 @@ _ENTRY(saved_ksp_limit)
* and call the heavyweights to help us out. * and call the heavyweights to help us out.
*/ */
mfspr r9, SPRN_SPRG_SCRATCH5 mfspr r9, SPRN_SPRG_SCRATCH5
mfspr r11, SPRN_SPRG_SCRATCH6
mtspr SPRN_PID, r9 mtspr SPRN_PID, r9
mtcr r11 mtcr r12
mfspr r9, SPRN_SPRG_SCRATCH4 mfspr r9, SPRN_SPRG_SCRATCH4
mfspr r12, SPRN_SPRG_SCRATCH3 mfspr r12, SPRN_SPRG_SCRATCH3
mfspr r11, SPRN_SPRG_SCRATCH1 mfspr r11, SPRN_SPRG_SCRATCH1
...@@ -556,9 +552,8 @@ finish_tlb_load: ...@@ -556,9 +552,8 @@ finish_tlb_load:
/* Done...restore registers and get out of here. /* Done...restore registers and get out of here.
*/ */
mfspr r9, SPRN_SPRG_SCRATCH5 mfspr r9, SPRN_SPRG_SCRATCH5
mfspr r11, SPRN_SPRG_SCRATCH6
mtspr SPRN_PID, r9 mtspr SPRN_PID, r9
mtcr r11 mtcr r12
mfspr r9, SPRN_SPRG_SCRATCH4 mfspr r9, SPRN_SPRG_SCRATCH4
mfspr r12, SPRN_SPRG_SCRATCH3 mfspr r12, SPRN_SPRG_SCRATCH3
mfspr r11, SPRN_SPRG_SCRATCH1 mfspr r11, SPRN_SPRG_SCRATCH1
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment