|
10 | 10 | #include <asm/asm-offsets.h>
|
11 | 11 |
|
12 | 12 | #ifdef CONFIG_PPC64
|
13 |
| -#define SAVE_30GPRS(base) SAVE_GPRS(2, 31, base) |
14 |
| -#define REST_30GPRS(base) REST_GPRS(2, 31, base) |
| 13 | +#define SAVE_NEEDED_GPRS(base) SAVE_GPRS(2, 12, base); SAVE_GPRS(14, 31, base) |
| 14 | +#define REST_NEEDED_GPRS(base) REST_GPRS(2, 12, base); REST_GPRS(14, 31, base) |
15 | 15 | #define TEMPLATE_FOR_IMM_LOAD_INSNS nop; nop; nop; nop; nop
|
16 | 16 | #else
|
17 |
| -#define SAVE_30GPRS(base) stmw r2, GPR2(base) |
18 |
| -#define REST_30GPRS(base) lmw r2, GPR2(base) |
| 17 | +#define SAVE_NEEDED_GPRS(base) stmw r2, GPR2(base) |
| 18 | +#define REST_NEEDED_GPRS(base) lmw r2, GPR2(base) |
19 | 19 | #define TEMPLATE_FOR_IMM_LOAD_INSNS nop; nop; nop
|
20 | 20 | #endif
|
21 | 21 |
|
@@ -45,7 +45,7 @@ optprobe_template_entry:
|
45 | 45 | /* Save the previous SP into stack */
|
46 | 46 | addi r0,r1,INT_FRAME_SIZE
|
47 | 47 | PPC_STL r0,GPR1(r1)
|
48 |
| - SAVE_30GPRS(r1) |
| 48 | + SAVE_NEEDED_GPRS(r1) |
49 | 49 | /* Save SPRS */
|
50 | 50 | mfmsr r5
|
51 | 51 | PPC_STL r5,_MSR(r1)
|
@@ -123,7 +123,7 @@ optprobe_template_call_emulate:
|
123 | 123 | PPC_LL r5,_CCR(r1)
|
124 | 124 | mtcr r5
|
125 | 125 | REST_GPR(0,r1)
|
126 |
| - REST_30GPRS(r1) |
| 126 | + REST_NEEDED_GPRS(r1) |
127 | 127 | /* Restore the previous SP */
|
128 | 128 | addi r1,r1,INT_FRAME_SIZE
|
129 | 129 |
|
|
0 commit comments