github.com/xushiwei/go@v0.0.0-20130601165731-2b9d83f45bc9/src/pkg/runtime/defs_linux_arm.h (about) 1 // TODO: Generate using cgo like defs_linux_{386,amd64}.h 2 3 // Constants 4 enum { 5 EINTR = 0x4, 6 ENOMEM = 0xc, 7 EAGAIN = 0xb, 8 9 PROT_NONE = 0, 10 PROT_READ = 0x1, 11 PROT_WRITE = 0x2, 12 PROT_EXEC = 0x4, 13 MAP_ANON = 0x20, 14 MAP_PRIVATE = 0x2, 15 MAP_FIXED = 0x10, 16 MADV_DONTNEED = 0x4, 17 SA_RESTART = 0x10000000, 18 SA_ONSTACK = 0x8000000, 19 SA_RESTORER = 0x4000000, 20 SA_SIGINFO = 0x4, 21 SIGHUP = 0x1, 22 SIGINT = 0x2, 23 SIGQUIT = 0x3, 24 SIGILL = 0x4, 25 SIGTRAP = 0x5, 26 SIGABRT = 0x6, 27 SIGBUS = 0x7, 28 SIGFPE = 0x8, 29 SIGKILL = 0x9, 30 SIGUSR1 = 0xa, 31 SIGSEGV = 0xb, 32 SIGUSR2 = 0xc, 33 SIGPIPE = 0xd, 34 SIGALRM = 0xe, 35 SIGSTKFLT = 0x10, 36 SIGCHLD = 0x11, 37 SIGCONT = 0x12, 38 SIGSTOP = 0x13, 39 SIGTSTP = 0x14, 40 SIGTTIN = 0x15, 41 SIGTTOU = 0x16, 42 SIGURG = 0x17, 43 SIGXCPU = 0x18, 44 SIGXFSZ = 0x19, 45 SIGVTALRM = 0x1a, 46 SIGPROF = 0x1b, 47 SIGWINCH = 0x1c, 48 SIGIO = 0x1d, 49 SIGPWR = 0x1e, 50 SIGSYS = 0x1f, 51 FPE_INTDIV = 0x1, 52 FPE_INTOVF = 0x2, 53 FPE_FLTDIV = 0x3, 54 FPE_FLTOVF = 0x4, 55 FPE_FLTUND = 0x5, 56 FPE_FLTRES = 0x6, 57 FPE_FLTINV = 0x7, 58 FPE_FLTSUB = 0x8, 59 BUS_ADRALN = 0x1, 60 BUS_ADRERR = 0x2, 61 BUS_OBJERR = 0x3, 62 SEGV_MAPERR = 0x1, 63 SEGV_ACCERR = 0x2, 64 ITIMER_REAL = 0, 65 ITIMER_PROF = 0x2, 66 ITIMER_VIRTUAL = 0x1, 67 O_RDONLY = 0, 68 O_CLOEXEC = 02000000, 69 70 EPOLLIN = 0x1, 71 EPOLLOUT = 0x4, 72 EPOLLERR = 0x8, 73 EPOLLHUP = 0x10, 74 EPOLLRDHUP = 0x2000, 75 EPOLLET = -0x80000000, 76 EPOLL_CLOEXEC = 0x80000, 77 EPOLL_CTL_ADD = 0x1, 78 EPOLL_CTL_DEL = 0x2, 79 EPOLL_CTL_MOD = 0x3, 80 }; 81 82 // Types 83 #pragma pack on 84 85 typedef struct Timespec Timespec; 86 struct Timespec { 87 int32 tv_sec; 88 int32 tv_nsec; 89 }; 90 91 typedef struct Sigaltstack Sigaltstack; 92 struct Sigaltstack { 93 void *ss_sp; 94 int32 ss_flags; 95 uint32 ss_size; 96 }; 97 98 typedef struct Sigcontext Sigcontext; 99 struct Sigcontext { 100 uint32 trap_no; 101 uint32 error_code; 102 uint32 oldmask; 103 uint32 arm_r0; 104 uint32 arm_r1; 105 uint32 arm_r2; 106 uint32 arm_r3; 107 uint32 arm_r4; 108 uint32 arm_r5; 109 uint32 arm_r6; 110 uint32 arm_r7; 111 uint32 arm_r8; 112 uint32 arm_r9; 113 uint32 arm_r10; 114 uint32 arm_fp; 115 uint32 arm_ip; 116 uint32 arm_sp; 117 uint32 arm_lr; 118 uint32 arm_pc; 119 uint32 arm_cpsr; 120 uint32 fault_address; 121 }; 122 123 typedef struct Ucontext Ucontext; 124 struct Ucontext { 125 uint32 uc_flags; 126 Ucontext *uc_link; 127 Sigaltstack uc_stack; 128 Sigcontext uc_mcontext; 129 uint32 uc_sigmask; 130 int32 __unused[31]; 131 uint32 uc_regspace[128]; 132 }; 133 134 typedef struct Timeval Timeval; 135 struct Timeval { 136 int32 tv_sec; 137 int32 tv_usec; 138 }; 139 140 typedef struct Itimerval Itimerval; 141 struct Itimerval { 142 Timeval it_interval; 143 Timeval it_value; 144 }; 145 146 typedef struct Siginfo Siginfo; 147 struct Siginfo { 148 int32 si_signo; 149 int32 si_errno; 150 int32 si_code; 151 uint8 _sifields[4]; 152 }; 153 154 typedef struct Sigaction Sigaction; 155 struct Sigaction { 156 void *sa_handler; 157 uint32 sa_flags; 158 void *sa_restorer; 159 uint64 sa_mask; 160 }; 161 162 typedef struct EpollEvent EpollEvent; 163 struct EpollEvent { 164 uint32 events; 165 uint32 _pad; 166 uint64 data; 167 }; 168 #pragma pack off