From: Shenghou Ma Date: Thu, 25 Oct 2012 05:41:04 +0000 (+0800) Subject: syscall: implement (*PtraceRegs).PC() and SetPC() X-Git-Tag: go1.1rc2~2061 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=7c412e962c1cf5de4e128c0ca2caed14f9b87003;p=gostls13.git syscall: implement (*PtraceRegs).PC() and SetPC() R=golang-dev, rsc CC=golang-dev https://golang.org/cl/6763043 --- diff --git a/src/pkg/syscall/syscall_linux_arm.go b/src/pkg/syscall/syscall_linux_arm.go index 766cf37c6c..547a4eb9bc 100644 --- a/src/pkg/syscall/syscall_linux_arm.go +++ b/src/pkg/syscall/syscall_linux_arm.go @@ -170,10 +170,9 @@ func Setrlimit(resource int, rlim *Rlimit) (err error) { return setrlimit(resource, &rl) } -// TODO(kaib): add support for tracing -func (r *PtraceRegs) PC() uint64 { return 0 } +func (r *PtraceRegs) PC() uint64 { return uint64(r.Uregs[15]) } -func (r *PtraceRegs) SetPC(pc uint64) {} +func (r *PtraceRegs) SetPC(pc uint64) { r.Uregs[15] = uint32(pc) } func (iov *Iovec) SetLen(length int) { iov.Len = uint32(length)