|  | // syscall_linux_386.go -- GNU/Linux 386 specific support | 
|  |  | 
|  | // Copyright 2009 The Go Authors. All rights reserved. | 
|  | // Use of this source code is governed by a BSD-style | 
|  | // license that can be found in the LICENSE file. | 
|  |  | 
|  | // TODO(rsc): Rewrite all nn(SP) references into name+(nn-8)(FP) | 
|  | // so that go vet can check that they are correct. | 
|  |  | 
|  | package syscall | 
|  |  | 
|  | import "unsafe" | 
|  |  | 
|  | func (r *PtraceRegs) PC() uint64 { return uint64(uint32(r.Eip)) } | 
|  |  | 
|  | func (r *PtraceRegs) SetPC(pc uint64) { r.Eip = int32(pc) } | 
|  |  | 
|  | func PtraceGetRegs(pid int, regsout *PtraceRegs) (err error) { | 
|  | return ptrace(PTRACE_GETREGS, pid, 0, uintptr(unsafe.Pointer(regsout))) | 
|  | } | 
|  |  | 
|  | func PtraceSetRegs(pid int, regs *PtraceRegs) (err error) { | 
|  | return ptrace(PTRACE_SETREGS, pid, 0, uintptr(unsafe.Pointer(regs))) | 
|  | } | 
|  |  | 
|  | func rawVforkSyscall(trap, a1 uintptr) (r1 uintptr, err Errno) { | 
|  | panic("not implemented") | 
|  | } |