sh: correct definitions to access stack pointers
Subsystems (2)
PATCH 1/1 sh: correct definitions to access stack pointers
A definition like:
#define regs_return_value(regs) ((regs)->regs[0])
called with regs_return_value(foo) will be preprocessed to:
((foo)->foo[0])
^^^
So to fix this to ensure the preprocessor compiles such calls correctly.
Signed-off-by Roel Kluin <[email protected]>
--- arch/sh/include/asm/ptrace.h | 4 ++-- arch/sh/include/asm/ptrace_32.h | 2 +- arch/sh/include/asm/ptrace_64.h | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-)
arch/sh/include/asm/ptrace.h +2 -2
@@ -40,8 +40,8 @@#include <asm/system.h> #define user_mode (regs) (((regs)->sr & 0x40000000)=0) -#define user_stack_pointer (regs) ((unsigned long)(regs)->regs[15]) -#define kernel_stack_pointer (regs) ((unsigned long)(regs)->regs[15]) +#define user_stack_pointer (_regs) ((unsigned long)(_regs)->regs[15]) +#define kernel_stack_pointer (_regs) ((unsigned long)(_regs)->regs[15])#define instruction_pointer (regs) ((unsigned long)(regs)->pc)extern void show_regs (struct pt_regs *);
arch/sh/include/asm/ptrace_32.h +1 -1
@@ -76,7 +76,7 @@ struct pt_dspregs {#ifdef __KERNEL__#define MAX_REG_OFFSET offsetof(struct pt_regs, tra) -#define regs_return_value (regs) ((regs)->regs[0]) +#define regs_return_value (_regs) ((_regs)->regs[0])#endif /* __KERNEL__ */
arch/sh/include/asm/ptrace_64.h +1 -1
@@ -13,7 +13,7 @@ struct pt_regs {#ifdef __KERNEL__#define MAX_REG_OFFSET offsetof(struct pt_regs, tregs[7]) -#define regs_return_value (regs) ((regs)->regs[3]) +#define regs_return_value (_regs) ((_regs)->regs[3])#endif /* __KERNEL__ */
Paul Mundt
AppliedQuoted 11 lines · roel kluin
A definition like:
#define
regs_return_value(regs)((regs)->regs[0])called with
regs_return_value(foo)will be preprocessed to:((foo)->foo[0])
^^^So to fix this to ensure the preprocessor compiles such calls correctly.
Signed-off-by Roel Kluin <[email protected]>
Applied, thanks.