diff options
author | Vineet Gupta <vgupta@synopsys.com> | 2017-01-09 04:45:48 +0100 |
---|---|---|
committer | Vineet Gupta <vgupta@synopsys.com> | 2017-01-10 20:51:33 +0100 |
commit | ecd43afdbe72017aefe48080631eb625e177ef4d (patch) | |
tree | 6df7b0bc6670f85116f1d256ed7df55885b910d9 | |
parent | ARCv2: IRQ: Call entry/exit functions for chained handlers in MCIP (diff) | |
download | linux-ecd43afdbe72017aefe48080631eb625e177ef4d.tar.xz linux-ecd43afdbe72017aefe48080631eb625e177ef4d.zip |
ARCv2: save r30 on kernel entry as gcc uses it for code-gen
This is not exposed to userspace debugers yet, which can be done
independently as a seperate patch !
Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
-rw-r--r-- | arch/arc/include/asm/entry-arcv2.h | 2 | ||||
-rw-r--r-- | arch/arc/include/asm/ptrace.h | 2 |
2 files changed, 3 insertions, 1 deletions
diff --git a/arch/arc/include/asm/entry-arcv2.h b/arch/arc/include/asm/entry-arcv2.h index b5ff87e6f4b7..aee1a77934cf 100644 --- a/arch/arc/include/asm/entry-arcv2.h +++ b/arch/arc/include/asm/entry-arcv2.h @@ -16,6 +16,7 @@ ; ; Now manually save: r12, sp, fp, gp, r25 + PUSH r30 PUSH r12 ; Saving pt_regs->sp correctly requires some extra work due to the way @@ -72,6 +73,7 @@ POPAX AUX_USER_SP 1: POP r12 + POP r30 .endm diff --git a/arch/arc/include/asm/ptrace.h b/arch/arc/include/asm/ptrace.h index 69095da1fcfd..47111d565a95 100644 --- a/arch/arc/include/asm/ptrace.h +++ b/arch/arc/include/asm/ptrace.h @@ -84,7 +84,7 @@ struct pt_regs { unsigned long fp; unsigned long sp; /* user/kernel sp depending on where we came from */ - unsigned long r12; + unsigned long r12, r30; /*------- Below list auto saved by h/w -----------*/ unsigned long r0, r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11; |