[XTENSA] Remove non-rt signal handling
The non-rt signal handling was never really used, so we don't break anything. This patch also cleans up the signal stack-frame to make it independent from the processor configuration. It also improves the method used for controlling single-stepping. We now save and restore the 'icountlevel' register that controls single stepping and set or clear the saved state to enable or disable it. Signed-off-by: Chris Zankel <chris@zankel.net>
This commit is contained in:
@@ -5,21 +5,12 @@
|
||||
* License. See the file "COPYING" in the main directory of this archive
|
||||
* for more details.
|
||||
*
|
||||
* Copyright (C) 2001 - 2003 Tensilica Inc.
|
||||
* Copyright (C) 2001 - 2007 Tensilica Inc.
|
||||
*/
|
||||
|
||||
#ifndef _XTENSA_SIGCONTEXT_H
|
||||
#define _XTENSA_SIGCONTEXT_H
|
||||
|
||||
#define _ASMLANGUAGE
|
||||
#include <asm/processor.h>
|
||||
#include <asm/coprocessor.h>
|
||||
|
||||
|
||||
struct _cpstate {
|
||||
unsigned char _cpstate[XTENSA_CP_EXTRA_SIZE];
|
||||
} __attribute__ ((aligned (XTENSA_CP_EXTRA_ALIGN)));
|
||||
|
||||
|
||||
struct sigcontext {
|
||||
unsigned long oldmask;
|
||||
@@ -27,18 +18,13 @@ struct sigcontext {
|
||||
/* CPU registers */
|
||||
unsigned long sc_pc;
|
||||
unsigned long sc_ps;
|
||||
unsigned long sc_wmask;
|
||||
unsigned long sc_windowbase;
|
||||
unsigned long sc_windowstart;
|
||||
unsigned long sc_lbeg;
|
||||
unsigned long sc_lend;
|
||||
unsigned long sc_lcount;
|
||||
unsigned long sc_sar;
|
||||
unsigned long sc_depc;
|
||||
unsigned long sc_dareg0;
|
||||
unsigned long sc_treg[4];
|
||||
unsigned long sc_areg[XCHAL_NUM_AREGS];
|
||||
struct _cpstate *sc_cpstate;
|
||||
unsigned long sc_acclo;
|
||||
unsigned long sc_acchi;
|
||||
unsigned long sc_a[16];
|
||||
};
|
||||
|
||||
#endif /* __ASM_XTENSA_SIGCONTEXT_H */
|
||||
#endif /* _XTENSA_SIGCONTEXT_H */
|
||||
|
||||
Reference in New Issue
Block a user