1
0
mirror of https://github.com/golang/go synced 2024-10-02 12:28:33 -06:00
go/src/runtime/defs_nacl_arm.go
Russ Cox 5bfed7c6c0 runtime: log all thread stack traces during GODEBUG=crash on Linux and OS X
Normally, a panic/throw only shows the thread stack for the current thread
and all paused goroutines. Goroutines running on other threads, or other threads
running on their system stacks, are opaque. Change that when GODEBUG=crash,
by passing a SIGQUIT around to all the threads when GODEBUG=crash.
If this works out reasonably well, we might make the SIGQUIT relay part of
the standard panic/throw death, perhaps eliding idle m's.

Change-Id: If7dd354f7f3a6e326d17c254afcf4f7681af2f8b
Reviewed-on: https://go-review.googlesource.com/2811
Reviewed-by: Rick Hudson <rlh@golang.org>
2015-01-14 18:33:38 +00:00

51 lines
892 B
Go

package runtime
const (
// These values are referred to in the source code
// but really don't matter. Even so, use the standard numbers.
_SIGQUIT = 3
_SIGSEGV = 11
_SIGPROF = 27
)
type timespec struct {
tv_sec int64
tv_nsec int32
}
type excregsarm struct {
r0 uint32
r1 uint32
r2 uint32
r3 uint32
r4 uint32
r5 uint32
r6 uint32
r7 uint32
r8 uint32
r9 uint32 // the value reported here is undefined.
r10 uint32
r11 uint32
r12 uint32
sp uint32 /* r13 */
lr uint32 /* r14 */
pc uint32 /* r15 */
cpsr uint32
}
type exccontext struct {
size uint32
portable_context_offset uint32
portable_context_size uint32
arch uint32
regs_size uint32
reserved [11]uint32
regs excregsarm
}
type excportablecontext struct {
pc uint32
sp uint32
fp uint32
}