diff options
author | Anthony Martin <ality@pbrane.org> | 2014-12-18 05:05:44 -0800 |
---|---|---|
committer | Anthony Martin <ality@pbrane.org> | 2014-12-30 14:36:15 +0000 |
commit | 3d032d765318cea13b4aaae882135381cde0c11a (patch) | |
tree | d428f952af104ad9ba5781a91e8d5f48ebe91603 /src/runtime/defs_plan9_386.go | |
parent | f3de21767e1ea12e9ec30fc1e9a1b60dfc6cb440 (diff) | |
download | go-3d032d765318cea13b4aaae882135381cde0c11a.tar.gz go-3d032d765318cea13b4aaae882135381cde0c11a.zip |
runtime: consolidate arch-specific signal handlers on Plan 9
Change-Id: I4379418853c523fc9aaeb5d6f37bc96117841418
Reviewed-on: https://go-review.googlesource.com/1786
Reviewed-by: David du Colombier <0intro@gmail.com>
Reviewed-by: Aram Hăvărneanu <aram@mgk.ro>
Diffstat (limited to 'src/runtime/defs_plan9_386.go')
-rw-r--r-- | src/runtime/defs_plan9_386.go | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/src/runtime/defs_plan9_386.go b/src/runtime/defs_plan9_386.go index 212ecdf14a..3574cb6654 100644 --- a/src/runtime/defs_plan9_386.go +++ b/src/runtime/defs_plan9_386.go @@ -23,3 +23,29 @@ type ureg struct { sp uint32 ss uint32 /* old stack segment */ } + +type sigctxt struct { + u *ureg +} + +func (c *sigctxt) pc() uintptr { return uintptr(c.u.pc) } +func (c *sigctxt) sp() uintptr { return uintptr(c.u.sp) } + +func (c *sigctxt) setpc(x uintptr) { c.u.pc = uint32(x) } +func (c *sigctxt) setsp(x uintptr) { c.u.sp = uint32(x) } + +func dumpregs(u *ureg) { + print("ax ", hex(u.ax), "\n") + print("bx ", hex(u.bx), "\n") + print("cx ", hex(u.cx), "\n") + print("dx ", hex(u.dx), "\n") + print("di ", hex(u.di), "\n") + print("si ", hex(u.si), "\n") + print("bp ", hex(u.bp), "\n") + print("sp ", hex(u.sp), "\n") + print("pc ", hex(u.pc), "\n") + print("flags ", hex(u.flags), "\n") + print("cs ", hex(u.cs), "\n") + print("fs ", hex(u.fs), "\n") + print("gs ", hex(u.gs), "\n") +} |