summaryrefslogtreecommitdiff
path: root/libgo/syscalls
diff options
context:
space:
mode:
authorian <ian@138bc75d-0d04-0410-961f-82ee72b054a4>2011-03-07 22:39:45 +0000
committerian <ian@138bc75d-0d04-0410-961f-82ee72b054a4>2011-03-07 22:39:45 +0000
commit9d061fc885e8aedd9e1334d214d7d38937511502 (patch)
tree84056f5650192820258fd06c42d69b19481470dd /libgo/syscalls
parentd180d4574df2f3a7bf438202e6d17715de2b86c4 (diff)
downloadgcc-9d061fc885e8aedd9e1334d214d7d38937511502.tar.gz
Use _nuname on 32-bit Solaris 2/x86.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@170761 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libgo/syscalls')
-rw-r--r--libgo/syscalls/syscall_solaris_386.go3
-rw-r--r--libgo/syscalls/syscall_uname.go7
-rw-r--r--libgo/syscalls/syscall_unix.go2
3 files changed, 10 insertions, 2 deletions
diff --git a/libgo/syscalls/syscall_solaris_386.go b/libgo/syscalls/syscall_solaris_386.go
index 687722ddc1d..7ff8f5b0740 100644
--- a/libgo/syscalls/syscall_solaris_386.go
+++ b/libgo/syscalls/syscall_solaris_386.go
@@ -15,3 +15,6 @@ func libc_ptrace(request int, pid Pid_t, addr uintptr, data *byte) int __asm__ (
var dummy *byte
const sizeofPtr uintptr = uintptr(unsafe.Sizeof(dummy))
+
+// 32-bit Solaris 2/x86 needs to use _nuname internally, cf. <sys/utsname.h>.
+func libc_uname(buf *Utsname) (errno int) __asm__("_nuname")
diff --git a/libgo/syscalls/syscall_uname.go b/libgo/syscalls/syscall_uname.go
new file mode 100644
index 00000000000..955866c89f1
--- /dev/null
+++ b/libgo/syscalls/syscall_uname.go
@@ -0,0 +1,7 @@
+// Copyright 2011 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.
+
+package syscall
+
+func libc_uname(buf *Utsname) (errno int) __asm__("uname")
diff --git a/libgo/syscalls/syscall_unix.go b/libgo/syscalls/syscall_unix.go
index 408d0b8b7aa..a29b6b54bfb 100644
--- a/libgo/syscalls/syscall_unix.go
+++ b/libgo/syscalls/syscall_unix.go
@@ -15,8 +15,6 @@ const ENONE = 0
func GetErrno() int
func SetErrno(int)
-func libc_uname(buf *Utsname) (errno int) __asm__("uname")
-
func Uname(buf *Utsname) (errno int) {
r := libc_uname(buf)
if r < 0 {