diff options
author | Russ Cox <rsc@golang.org> | 2010-04-05 12:51:09 -0700 |
---|---|---|
committer | Russ Cox <rsc@golang.org> | 2010-04-05 12:51:09 -0700 |
commit | e1b021aaf220611b99a25e40b618d0bddef46766 (patch) | |
tree | e2bf4258f564d82aefbc656e700d7ab0d6acbdc4 /src/pkg/runtime/linux/defs_arm.c | |
parent | bca5b465fee7deddf3c314127803d6acfe236517 (diff) | |
download | golang-e1b021aaf220611b99a25e40b618d0bddef46766.tar.gz |
runtime: various arm fixes
* correct symbol table size
* do not reorder functions in output
* traceback
* signal handling
* use same code for go + defer
* handle leaf functions in symbol table
R=kaib, dpx
CC=golang-dev
http://codereview.appspot.com/884041
Diffstat (limited to 'src/pkg/runtime/linux/defs_arm.c')
-rw-r--r-- | src/pkg/runtime/linux/defs_arm.c | 31 |
1 files changed, 16 insertions, 15 deletions
diff --git a/src/pkg/runtime/linux/defs_arm.c b/src/pkg/runtime/linux/defs_arm.c index eaec05154..01d6bfcdc 100644 --- a/src/pkg/runtime/linux/defs_arm.c +++ b/src/pkg/runtime/linux/defs_arm.c @@ -4,8 +4,7 @@ /* * Input to godefs - godefs -carm-gcc -f -I/usr/local/google/src/linux-2.6.28/arch/arm/include -f - -I/usr/local/google/src/linux-2.6.28/include defs_arm.c >arm/defs.h + godefs -carm-gcc -f -I/usr/local/google/src/linux-2.6.28/arch/arm/include -f -I/usr/local/google/src/linux-2.6.28/include -f-D__KERNEL__ -f-D__ARCH_SI_UID_T=int defs_arm.c >arm/defs.h * Another input file for ARM defs.h */ @@ -14,6 +13,7 @@ #include <asm/mman.h> #include <asm/sigcontext.h> #include <asm/ucontext.h> +#include <asm/siginfo.h> /* #include <sys/signal.h> @@ -38,17 +38,18 @@ enum { $SA_SIGINFO = SA_SIGINFO }; - - - -//typedef struct _fpreg $Fpreg; -//typedef struct _fpxreg $Fpxreg; -//typedef struct _xmmreg $Xmmreg; -//typedef struct _fpstate $Fpstate; +typedef sigset_t $Sigset; +typedef struct sigaction $Sigaction; typedef struct timespec $Timespec; -//typedef struct timeval $Timeval; -// typedef struct sigaction $Sigaction; -// typedef siginfo_t $Siginfo; -// typedef struct sigaltstack $Sigaltstack; -// typedef struct sigcontext $Sigcontext; -// typedef struct ucontext $Ucontext; +typedef struct sigaltstack $Sigaltstack; +typedef struct sigcontext $Sigcontext; +typedef struct ucontext $Ucontext; + +struct xsiginfo { + int si_signo; + int si_errno; + int si_code; + char _sifields[4]; +}; + +typedef struct xsiginfo $Siginfo; |