Messages in this thread Patch in this message | | | From | Christophe Leroy <> | Subject | [PATCH v3 13/13] powerpc/40x: Don't save CR in SPRN_SPRG_SCRATCH6 | Date | Tue, 14 Apr 2020 08:19:29 +0000 (UTC) |
| |
We have r12 available, use it to keep CR around and don't save it in SPRN_SPRG_SCRATCH6.
Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr> --- arch/powerpc/kernel/head_40x.S | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-)
diff --git a/arch/powerpc/kernel/head_40x.S b/arch/powerpc/kernel/head_40x.S index 804cbd0899ac..f9b880235aee 100644 --- a/arch/powerpc/kernel/head_40x.S +++ b/arch/powerpc/kernel/head_40x.S @@ -253,9 +253,8 @@ _ENTRY(saved_ksp_limit) mtspr SPRN_SPRG_SCRATCH1, r11 mtspr SPRN_SPRG_SCRATCH3, r12 mtspr SPRN_SPRG_SCRATCH4, r9 - mfcr r11 + mfcr r12 mfspr r9, SPRN_PID - mtspr SPRN_SPRG_SCRATCH6, r11 mtspr SPRN_SPRG_SCRATCH5, r9 mfspr r10, SPRN_DEAR /* Get faulting address */ @@ -322,9 +321,8 @@ _ENTRY(saved_ksp_limit) * and call the heavyweights to help us out. */ mfspr r9, SPRN_SPRG_SCRATCH5 - mfspr r11, SPRN_SPRG_SCRATCH6 mtspr SPRN_PID, r9 - mtcr r11 + mtcr r12 mfspr r9, SPRN_SPRG_SCRATCH4 mfspr r12, SPRN_SPRG_SCRATCH3 mfspr r11, SPRN_SPRG_SCRATCH1 @@ -340,9 +338,8 @@ _ENTRY(saved_ksp_limit) mtspr SPRN_SPRG_SCRATCH1, r11 mtspr SPRN_SPRG_SCRATCH3, r12 mtspr SPRN_SPRG_SCRATCH4, r9 - mfcr r11 + mfcr r12 mfspr r9, SPRN_PID - mtspr SPRN_SPRG_SCRATCH6, r11 mtspr SPRN_SPRG_SCRATCH5, r9 mfspr r10, SPRN_SRR0 /* Get faulting address */ @@ -409,9 +406,8 @@ _ENTRY(saved_ksp_limit) * and call the heavyweights to help us out. */ mfspr r9, SPRN_SPRG_SCRATCH5 - mfspr r11, SPRN_SPRG_SCRATCH6 mtspr SPRN_PID, r9 - mtcr r11 + mtcr r12 mfspr r9, SPRN_SPRG_SCRATCH4 mfspr r12, SPRN_SPRG_SCRATCH3 mfspr r11, SPRN_SPRG_SCRATCH1 @@ -555,9 +551,8 @@ finish_tlb_load: /* Done...restore registers and get out of here. */ mfspr r9, SPRN_SPRG_SCRATCH5 - mfspr r11, SPRN_SPRG_SCRATCH6 mtspr SPRN_PID, r9 - mtcr r11 + mtcr r12 mfspr r9, SPRN_SPRG_SCRATCH4 mfspr r12, SPRN_SPRG_SCRATCH3 mfspr r11, SPRN_SPRG_SCRATCH1 -- 2.25.0
| |