1
linux/arch/um/sys-ppc/shared/sysdep/sigcontext.h
WANG Cong 65bd6a9bc7 uml: remove useless comments
These comments are useless now, remove them.

Signed-off-by: WANG Cong <xiyou.wangcong@gmail.com>
Cc: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2009-04-01 08:59:17 -07:00

53 lines
1.1 KiB
C

/*
* Copyright (C) 2000 Jeff Dike (jdike@karaya.com)
* Licensed under the GPL
*/
#ifndef __SYS_SIGCONTEXT_PPC_H
#define __SYS_SIGCONTEXT_PPC_H
#define DSISR_WRITE 0x02000000
#define SC_FAULT_ADDR(sc) ({ \
struct sigcontext *_sc = (sc); \
long retval = -1; \
switch (_sc->regs->trap) { \
case 0x300: \
/* data exception */ \
retval = _sc->regs->dar; \
break; \
case 0x400: \
/* instruction exception */ \
retval = _sc->regs->nip; \
break; \
default: \
panic("SC_FAULT_ADDR: unhandled trap type\n"); \
} \
retval; \
})
#define SC_FAULT_WRITE(sc) ({ \
struct sigcontext *_sc = (sc); \
long retval = -1; \
switch (_sc->regs->trap) { \
case 0x300: \
/* data exception */ \
retval = !!(_sc->regs->dsisr & DSISR_WRITE); \
break; \
case 0x400: \
/* instruction exception: not a write */ \
retval = 0; \
break; \
default: \
panic("SC_FAULT_ADDR: unhandled trap type\n"); \
} \
retval; \
})
#define SC_IP(sc) ((sc)->regs->nip)
#define SC_SP(sc) ((sc)->regs->gpr[1])
#define SEGV_IS_FIXABLE(sc) (1)
#endif