Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(22)

Unified Diff: src/pkg/runtime/linux/defs_arm.go

Issue 5348052: code review 5348052: runtime, syscall: convert from godefs to cgo (Closed)
Patch Set: diff -r 700ff7ef684f https://go.googlecode.com/hg Created 13 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Please Sign in to add in-line comments.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « src/pkg/runtime/linux/defs2.go ('k') | src/pkg/runtime/openbsd/defs.go » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/pkg/runtime/linux/defs_arm.go
===================================================================
rename from src/pkg/runtime/linux/defs_arm.c
rename to src/pkg/runtime/linux/defs_arm.go
--- a/src/pkg/runtime/linux/defs_arm.c
+++ b/src/pkg/runtime/linux/defs_arm.go
@@ -3,13 +3,18 @@
// license that can be found in the LICENSE file.
/*
- * Input to godefs
- * On a Debian Lenny arm linux distribution:
- godefs -f-I/usr/src/linux-headers-2.6.26-2-versatile/include defs_arm.c
- */
+Input to cgo.
+On a Debian Lenny arm linux distribution:
+
+cgo -cdefs defs_arm.c >arm/defs.h
+*/
+
+package runtime
+
+/*
+#cgo CFLAGS: -I/usr/src/linux-headers-2.6.26-2-versatile/include
#define __ARCH_SI_UID_T int
-
#include <asm/signal.h>
#include <asm/mman.h>
#include <asm/sigcontext.h>
@@ -17,87 +22,6 @@
#include <asm/siginfo.h>
#include <linux/time.h>
-/*
-#include <sys/signal.h>
-#include <sys/mman.h>
-#include <ucontext.h>
-*/
-
-enum {
- $PROT_NONE = PROT_NONE,
- $PROT_READ = PROT_READ,
- $PROT_WRITE = PROT_WRITE,
- $PROT_EXEC = PROT_EXEC,
-
- $MAP_ANON = MAP_ANONYMOUS,
- $MAP_PRIVATE = MAP_PRIVATE,
- $MAP_FIXED = MAP_FIXED,
-
- $SA_RESTART = SA_RESTART,
- $SA_ONSTACK = SA_ONSTACK,
- $SA_RESTORER = SA_RESTORER,
- $SA_SIGINFO = SA_SIGINFO,
-
- $SIGHUP = SIGHUP,
- $SIGINT = SIGINT,
- $SIGQUIT = SIGQUIT,
- $SIGILL = SIGILL,
- $SIGTRAP = SIGTRAP,
- $SIGABRT = SIGABRT,
- $SIGBUS = SIGBUS,
- $SIGFPE = SIGFPE,
- $SIGKILL = SIGKILL,
- $SIGUSR1 = SIGUSR1,
- $SIGSEGV = SIGSEGV,
- $SIGUSR2 = SIGUSR2,
- $SIGPIPE = SIGPIPE,
- $SIGALRM = SIGALRM,
- $SIGSTKFLT = SIGSTKFLT,
- $SIGCHLD = SIGCHLD,
- $SIGCONT = SIGCONT,
- $SIGSTOP = SIGSTOP,
- $SIGTSTP = SIGTSTP,
- $SIGTTIN = SIGTTIN,
- $SIGTTOU = SIGTTOU,
- $SIGURG = SIGURG,
- $SIGXCPU = SIGXCPU,
- $SIGXFSZ = SIGXFSZ,
- $SIGVTALRM = SIGVTALRM,
- $SIGPROF = SIGPROF,
- $SIGWINCH = SIGWINCH,
- $SIGIO = SIGIO,
- $SIGPWR = SIGPWR,
- $SIGSYS = SIGSYS,
-
- $FPE_INTDIV = FPE_INTDIV & 0xFFFF,
- $FPE_INTOVF = FPE_INTOVF & 0xFFFF,
- $FPE_FLTDIV = FPE_FLTDIV & 0xFFFF,
- $FPE_FLTOVF = FPE_FLTOVF & 0xFFFF,
- $FPE_FLTUND = FPE_FLTUND & 0xFFFF,
- $FPE_FLTRES = FPE_FLTRES & 0xFFFF,
- $FPE_FLTINV = FPE_FLTINV & 0xFFFF,
- $FPE_FLTSUB = FPE_FLTSUB & 0xFFFF,
-
- $BUS_ADRALN = BUS_ADRALN & 0xFFFF,
- $BUS_ADRERR = BUS_ADRERR & 0xFFFF,
- $BUS_OBJERR = BUS_OBJERR & 0xFFFF,
-
- $SEGV_MAPERR = SEGV_MAPERR & 0xFFFF,
- $SEGV_ACCERR = SEGV_ACCERR & 0xFFFF,
-
- $ITIMER_REAL = ITIMER_REAL,
- $ITIMER_PROF = ITIMER_PROF,
- $ITIMER_VIRTUAL = ITIMER_VIRTUAL,
-};
-
-typedef sigset_t $Sigset;
-typedef struct timespec $Timespec;
-typedef struct sigaltstack $Sigaltstack;
-typedef struct sigcontext $Sigcontext;
-typedef struct ucontext $Ucontext;
-typedef struct timeval $Timeval;
-typedef struct itimerval $Itimerval;
-
struct xsiginfo {
int si_signo;
int si_errno;
@@ -105,8 +29,6 @@
char _sifields[4];
};
-typedef struct xsiginfo $Siginfo;
-
#undef sa_handler
#undef sa_flags
#undef sa_restorer
@@ -116,7 +38,84 @@
void (*sa_handler)(void);
unsigned long sa_flags;
void (*sa_restorer)(void);
- unsigned int sa_mask; /* mask last for extensibility */
+ unsigned int sa_mask; // mask last for extensibility
};
+*/
+import "C"
-typedef struct xsigaction $Sigaction;
+const (
+ PROT_NONE = C.PROT_NONE
+ PROT_READ = C.PROT_READ
+ PROT_WRITE = C.PROT_WRITE
+ PROT_EXEC = C.PROT_EXEC
+
+ MAP_ANON = C.MAP_ANONYMOUS
+ MAP_PRIVATE = C.MAP_PRIVATE
+ MAP_FIXED = C.MAP_FIXED
+
+ SA_RESTART = C.SA_RESTART
+ SA_ONSTACK = C.SA_ONSTACK
+ SA_RESTORER = C.SA_RESTORER
+ SA_SIGINFO = C.SA_SIGINFO
+
+ SIGHUP = C.SIGHUP
+ SIGINT = C.SIGINT
+ SIGQUIT = C.SIGQUIT
+ SIGILL = C.SIGILL
+ SIGTRAP = C.SIGTRAP
+ SIGABRT = C.SIGABRT
+ SIGBUS = C.SIGBUS
+ SIGFPE = C.SIGFPE
+ SIGKILL = C.SIGKILL
+ SIGUSR1 = C.SIGUSR1
+ SIGSEGV = C.SIGSEGV
+ SIGUSR2 = C.SIGUSR2
+ SIGPIPE = C.SIGPIPE
+ SIGALRM = C.SIGALRM
+ SIGSTKFLT = C.SIGSTKFLT
+ SIGCHLD = C.SIGCHLD
+ SIGCONT = C.SIGCONT
+ SIGSTOP = C.SIGSTOP
+ SIGTSTP = C.SIGTSTP
+ SIGTTIN = C.SIGTTIN
+ SIGTTOU = C.SIGTTOU
+ SIGURG = C.SIGURG
+ SIGXCPU = C.SIGXCPU
+ SIGXFSZ = C.SIGXFSZ
+ SIGVTALRM = C.SIGVTALRM
+ SIGPROF = C.SIGPROF
+ SIGWINCH = C.SIGWINCH
+ SIGIO = C.SIGIO
+ SIGPWR = C.SIGPWR
+ SIGSYS = C.SIGSYS
+
+ FPE_INTDIV = C.FPE_INTDIV & 0xFFFF
+ FPE_INTOVF = C.FPE_INTOVF & 0xFFFF
+ FPE_FLTDIV = C.FPE_FLTDIV & 0xFFFF
+ FPE_FLTOVF = C.FPE_FLTOVF & 0xFFFF
+ FPE_FLTUND = C.FPE_FLTUND & 0xFFFF
+ FPE_FLTRES = C.FPE_FLTRES & 0xFFFF
+ FPE_FLTINV = C.FPE_FLTINV & 0xFFFF
+ FPE_FLTSUB = C.FPE_FLTSUB & 0xFFFF
+
+ BUS_ADRALN = C.BUS_ADRALN & 0xFFFF
+ BUS_ADRERR = C.BUS_ADRERR & 0xFFFF
+ BUS_OBJERR = C.BUS_OBJERR & 0xFFFF
+
+ SEGV_MAPERR = C.SEGV_MAPERR & 0xFFFF
+ SEGV_ACCERR = C.SEGV_ACCERR & 0xFFFF
+
+ ITIMER_REAL = C.ITIMER_REAL
+ ITIMER_PROF = C.ITIMER_PROF
+ ITIMER_VIRTUAL = C.ITIMER_VIRTUAL
+)
+
+type Sigset C.sigset_t
+type Timespec C.struct_timespec
+type Sigaltstack C.struct_sigaltstack
+type Sigcontext C.struct_sigcontext
+type Ucontext C.struct_ucontext
+type Timeval C.struct_timeval
+type Itimerval C.struct_itimerval
+type Siginfo C.struct_xsiginfo
+type Sigaction C.struct_xsigaction
« no previous file with comments | « src/pkg/runtime/linux/defs2.go ('k') | src/pkg/runtime/openbsd/defs.go » ('j') | no next file with comments »

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld f62528b