Commit 5290ae2b authored by Jordan Niethe's avatar Jordan Niethe Committed by Michael Ellerman

powerpc/64: Use {SAVE,REST}_NVGPRS macros

In entry_64.S there are places that open code saving and restoring the
non-volatile registers. There are already macros for doing this so use
them.
Signed-off-by: default avatarJordan Niethe <jniethe5@gmail.com>
Reviewed-by: default avatarAndrew Donnellan <ajd@linux.ibm.com>
Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20191211023552.16480-1-jniethe5@gmail.com
parent c79f46a2
...@@ -597,8 +597,7 @@ _GLOBAL(_switch) ...@@ -597,8 +597,7 @@ _GLOBAL(_switch)
std r0,16(r1) std r0,16(r1)
stdu r1,-SWITCH_FRAME_SIZE(r1) stdu r1,-SWITCH_FRAME_SIZE(r1)
/* r3-r13 are caller saved -- Cort */ /* r3-r13 are caller saved -- Cort */
SAVE_8GPRS(14, r1) SAVE_NVGPRS(r1)
SAVE_10GPRS(22, r1)
std r0,_NIP(r1) /* Return to switch caller */ std r0,_NIP(r1) /* Return to switch caller */
mfcr r23 mfcr r23
std r23,_CCR(r1) std r23,_CCR(r1)
...@@ -722,8 +721,7 @@ END_FTR_SECTION_IFCLR(CPU_FTR_ARCH_207S) ...@@ -722,8 +721,7 @@ END_FTR_SECTION_IFCLR(CPU_FTR_ARCH_207S)
mtcrf 0xFF,r6 mtcrf 0xFF,r6
/* r3-r13 are destroyed -- Cort */ /* r3-r13 are destroyed -- Cort */
REST_8GPRS(14, r1) REST_NVGPRS(r1)
REST_10GPRS(22, r1)
/* convert old thread to its task_struct for return value */ /* convert old thread to its task_struct for return value */
addi r3,r3,-THREAD addi r3,r3,-THREAD
...@@ -1155,8 +1153,7 @@ _GLOBAL(enter_rtas) ...@@ -1155,8 +1153,7 @@ _GLOBAL(enter_rtas)
*/ */
SAVE_GPR(2, r1) /* Save the TOC */ SAVE_GPR(2, r1) /* Save the TOC */
SAVE_GPR(13, r1) /* Save paca */ SAVE_GPR(13, r1) /* Save paca */
SAVE_8GPRS(14, r1) /* Save the non-volatiles */ SAVE_NVGPRS(r1) /* Save the non-volatiles */
SAVE_10GPRS(22, r1) /* ditto */
mfcr r4 mfcr r4
std r4,_CCR(r1) std r4,_CCR(r1)
...@@ -1263,8 +1260,7 @@ rtas_restore_regs: ...@@ -1263,8 +1260,7 @@ rtas_restore_regs:
/* relocation is on at this point */ /* relocation is on at this point */
REST_GPR(2, r1) /* Restore the TOC */ REST_GPR(2, r1) /* Restore the TOC */
REST_GPR(13, r1) /* Restore paca */ REST_GPR(13, r1) /* Restore paca */
REST_8GPRS(14, r1) /* Restore the non-volatiles */ REST_NVGPRS(r1) /* Restore the non-volatiles */
REST_10GPRS(22, r1) /* ditto */
GET_PACA(r13) GET_PACA(r13)
...@@ -1298,8 +1294,7 @@ _GLOBAL(enter_prom) ...@@ -1298,8 +1294,7 @@ _GLOBAL(enter_prom)
*/ */
SAVE_GPR(2, r1) SAVE_GPR(2, r1)
SAVE_GPR(13, r1) SAVE_GPR(13, r1)
SAVE_8GPRS(14, r1) SAVE_NVGPRS(r1)
SAVE_10GPRS(22, r1)
mfcr r10 mfcr r10
mfmsr r11 mfmsr r11
std r10,_CCR(r1) std r10,_CCR(r1)
...@@ -1343,8 +1338,7 @@ _GLOBAL(enter_prom) ...@@ -1343,8 +1338,7 @@ _GLOBAL(enter_prom)
/* Restore other registers */ /* Restore other registers */
REST_GPR(2, r1) REST_GPR(2, r1)
REST_GPR(13, r1) REST_GPR(13, r1)
REST_8GPRS(14, r1) REST_NVGPRS(r1)
REST_10GPRS(22, r1)
ld r4,_CCR(r1) ld r4,_CCR(r1)
mtcr r4 mtcr r4
......
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