From a10c95d84c2d04a4bfb02104644bbf2811b99690 Mon Sep 17 00:00:00 2001 From: Al Viro Date: Thu, 18 Aug 2011 20:12:09 +0100 Subject: [PATCH 1/1] um: unify KSTK_... ... and switch get_thread_register() to HOST_... for register numbers Signed-off-by: Al Viro Signed-off-by: Richard Weinberger --- arch/x86/um/asm/processor.h | 4 ++++ arch/x86/um/asm/processor_32.h | 4 ---- arch/x86/um/asm/processor_64.h | 3 --- arch/x86/um/os-Linux/registers.c | 12 ++++++------ 4 files changed, 10 insertions(+), 13 deletions(-) diff --git a/arch/x86/um/asm/processor.h b/arch/x86/um/asm/processor.h index f34c4b2d09f3..118c143a9cb4 100644 --- a/arch/x86/um/asm/processor.h +++ b/arch/x86/um/asm/processor.h @@ -10,6 +10,10 @@ # include "processor_64.h" #endif +#define KSTK_EIP(tsk) KSTK_REG(tsk, HOST_IP) +#define KSTK_ESP(tsk) KSTK_REG(tsk, HOST_IP) +#define KSTK_EBP(tsk) KSTK_REG(tsk, HOST_BP) + #define ARCH_IS_STACKGROW(address) \ (address + 65536 + 32 * sizeof(unsigned long) >= UPT_SP(¤t->thread.regs.regs)) diff --git a/arch/x86/um/asm/processor_32.h b/arch/x86/um/asm/processor_32.h index c4078b581df1..018f732704dd 100644 --- a/arch/x86/um/asm/processor_32.h +++ b/arch/x86/um/asm/processor_32.h @@ -63,8 +63,4 @@ static inline void rep_nop(void) #define current_text_addr() \ ({ void *pc; __asm__("movl $1f,%0\n1:":"=g" (pc)); pc; }) -#define KSTK_EIP(tsk) KSTK_REG(tsk, EIP) -#define KSTK_ESP(tsk) KSTK_REG(tsk, UESP) -#define KSTK_EBP(tsk) KSTK_REG(tsk, EBP) - #endif diff --git a/arch/x86/um/asm/processor_64.h b/arch/x86/um/asm/processor_64.h index 0186c61d0a7e..61de92d916c3 100644 --- a/arch/x86/um/asm/processor_64.h +++ b/arch/x86/um/asm/processor_64.h @@ -42,7 +42,4 @@ static inline void arch_copy_thread(struct arch_thread *from, #define current_text_addr() \ ({ void *pc; __asm__("movq $1f,%0\n1:":"=g" (pc)); pc; }) -#define KSTK_EIP(tsk) KSTK_REG(tsk, RIP) -#define KSTK_ESP(tsk) KSTK_REG(tsk, RSP) - #endif diff --git a/arch/x86/um/os-Linux/registers.c b/arch/x86/um/os-Linux/registers.c index 3a9b6247bbbc..fa2e5a669e41 100644 --- a/arch/x86/um/os-Linux/registers.c +++ b/arch/x86/um/os-Linux/registers.c @@ -89,18 +89,18 @@ unsigned long get_thread_reg(int reg, jmp_buf *buf) { switch (reg) { #ifdef __i386__ - case EIP: + case HOST_IP: return buf[0]->__eip; - case UESP: + case HOST_SP: return buf[0]->__esp; - case EBP: + case HOST_BP: return buf[0]->__ebp; #else - case RIP: + case HOST_IP: return buf[0]->__rip; - case RSP: + case HOST_SP: return buf[0]->__rsp; - case RBP: + case HOST_BP: return buf[0]->__rbp; #endif default: -- 2.39.2