1// syscall_linux_386.go -- GNU/Linux 386 specific support
2
3// Copyright 2009 The Go Authors. All rights reserved.
4// Use of this source code is governed by a BSD-style
5// license that can be found in the LICENSE file.
6
7// TODO(rsc): Rewrite all nn(SP) references into name+(nn-8)(FP)
8// so that go vet can check that they are correct.
9
10package syscall
11
12import "unsafe"
13
14func (r *PtraceRegs) PC() uint64 { return uint64(uint32(r.Eip)) }
15
16func (r *PtraceRegs) SetPC(pc uint64) { r.Eip = int32(pc) }
17
18func PtraceGetRegs(pid int, regsout *PtraceRegs) (err error) {
19	return ptrace(PTRACE_GETREGS, pid, 0, uintptr(unsafe.Pointer(regsout)))
20}
21
22func PtraceSetRegs(pid int, regs *PtraceRegs) (err error) {
23	return ptrace(PTRACE_SETREGS, pid, 0, uintptr(unsafe.Pointer(regs)))
24}
25
26func rawVforkSyscall(trap, a1 uintptr) (r1 uintptr, err Errno) {
27	panic("not implemented")
28}
29