diff options
| author | Andrew Wilkins <axwalk@gmail.com> | 2016-03-15 05:36:43 +0000 |
|---|---|---|
| committer | Andrew Wilkins <axwalk@gmail.com> | 2016-03-15 05:36:43 +0000 |
| commit | 6436a4abd7a2f3a60b230453295dba199d8a59c3 (patch) | |
| tree | 125aef80fc2cf46c5d1758a8ece1fde14e7b13fd /llgo/third_party/gofrontend/libgo/go/syscall/exec_unix.go | |
| parent | 36761bf92427846ce40fdd849615732c852e44dd (diff) | |
| download | bcm5719-llvm-6436a4abd7a2f3a60b230453295dba199d8a59c3.tar.gz bcm5719-llvm-6436a4abd7a2f3a60b230453295dba199d8a59c3.zip | |
[llgo] Roll gofrontend forward
Switch gofrontend to using go.googlesource.com, and
update to 81eb6a3f425b2158c67ee32c0cc973a72ce9d6be.
There are various changes required to update to the
go 1.5 runtime:
typemap.go is changed to accommodate the change in representation for equal/hash algorithms, and the removal of the zero value/type.
CMakeLists.txt is updated to add the build tree to the package search path, so internal packages, which are not installed, are found.
various files changes due to removal of __go_new_nopointers; the same change as in D11863, but with NoUnwindAttribute added to the added runtime functions which are called with "callOnly".
minor cleanups in ssa.go while investigating issues with unwinding/panic handling.
Differential Revisision: http://reviews.llvm.org/D15188
llvm-svn: 263536
Diffstat (limited to 'llgo/third_party/gofrontend/libgo/go/syscall/exec_unix.go')
| -rw-r--r-- | llgo/third_party/gofrontend/libgo/go/syscall/exec_unix.go | 35 |
1 files changed, 29 insertions, 6 deletions
diff --git a/llgo/third_party/gofrontend/libgo/go/syscall/exec_unix.go b/llgo/third_party/gofrontend/libgo/go/syscall/exec_unix.go index a49d95bc94c..d1927de9b4b 100644 --- a/llgo/third_party/gofrontend/libgo/go/syscall/exec_unix.go +++ b/llgo/third_party/gofrontend/libgo/go/syscall/exec_unix.go @@ -17,6 +17,12 @@ import ( //sysnb raw_fork() (pid Pid_t, err Errno) //fork() Pid_t +//sysnb raw_getpid() (pid Pid_t) +//getpid() Pid_t + +//sysnb raw_getppid() (pid Pid_t) +//getppid() Pid_t + //sysnb raw_setsid() (err Errno) //setsid() Pid_t @@ -35,8 +41,11 @@ import ( //sysnb raw_close(fd int) (err Errno) //close(fd _C_int) _C_int -//sysnb raw_ioctl(fd int, cmd int, val int) (rval int, err Errno) -//ioctl(fd _C_int, cmd _C_int, val _C_int) _C_int +//sysnb raw_ioctl(fd int, cmd uintptr, val int) (rval int, err Errno) +//__go_ioctl(fd _C_int, cmd _C_int, val _C_int) _C_int + +//sysnb raw_ioctl_ptr(fd int, cmd uintptr, val unsafe.Pointer) (rval int, err Errno) +//__go_ioctl_ptr(fd _C_int, cmd _C_int, val unsafe.Pointer) _C_int //sysnb raw_execve(argv0 *byte, argv **byte, envv **byte) (err Errno) //execve(argv0 *byte, argv **byte, envv **byte) _C_int @@ -50,6 +59,18 @@ import ( //sysnb raw_dup2(oldfd int, newfd int) (err Errno) //dup2(oldfd _C_int, newfd _C_int) _C_int +//sysnb raw_kill(pid Pid_t, sig Signal) (err Errno) +//kill(pid Pid_t, sig _C_int) _C_int + +//sysnb raw_setgroups(size int, list unsafe.Pointer) (err Errno) +//setgroups(size Size_t, list *Gid_t) _C_int + +//sysnb raw_setuid(uid int) (err Errno) +//setuid(uid Uid_t) _C_int + +//sysnb raw_setgid(gid int) (err Errno) +//setgid(gid Gid_t) _C_int + // Lock synchronizing creation of new file descriptors with fork. // // We want the child in a fork/exec sequence to inherit only the @@ -99,9 +120,11 @@ import ( var ForkLock sync.RWMutex -// StringSlicePtr is deprecated. Use SlicePtrFromStrings instead. -// If any string contains a NUL byte this function panics instead -// of returning an error. +// StringSlicePtr converts a slice of strings to a slice of pointers +// to NUL-terminated byte arrays. If any string contains a NUL byte +// this function panics instead of returning an error. +// +// Deprecated: Use SlicePtrFromStrings instead. func StringSlicePtr(ss []string) []*byte { bb := make([]*byte, len(ss)+1) for i := 0; i < len(ss); i++ { @@ -112,7 +135,7 @@ func StringSlicePtr(ss []string) []*byte { } // SlicePtrFromStrings converts a slice of strings to a slice of -// pointers to NUL-terminated byte slices. If any string contains +// pointers to NUL-terminated byte arrays. If any string contains // a NUL byte, it returns (nil, EINVAL). func SlicePtrFromStrings(ss []string) ([]*byte, error) { var err error |

