diff options
author | Ian Lance Taylor <ian@gcc.gnu.org> | 2011-10-23 19:04:37 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@gcc.gnu.org> | 2011-10-23 19:04:37 +0000 |
commit | de27caacfb3da386f499e0f1c65a3246675824bc (patch) | |
tree | 664e8146cf480634282350e5f7f68403941ddfea /libgo/syscalls/stringbyte.go | |
parent | 7b45b87f01235d15b5d9403fa59693a97e49611a (diff) | |
download | gcc-de27caacfb3da386f499e0f1c65a3246675824bc.zip gcc-de27caacfb3da386f499e0f1c65a3246675824bc.tar.gz gcc-de27caacfb3da386f499e0f1c65a3246675824bc.tar.bz2 |
Implement new syscall package.
Calls to library functions now use entersyscall and
exitsyscall as appropriate. This is a first step toward
multiplexing goroutines onto threads.
From-SVN: r180345
Diffstat (limited to 'libgo/syscalls/stringbyte.go')
-rw-r--r-- | libgo/syscalls/stringbyte.go | 37 |
1 files changed, 0 insertions, 37 deletions
diff --git a/libgo/syscalls/stringbyte.go b/libgo/syscalls/stringbyte.go deleted file mode 100644 index 1761953..0000000 --- a/libgo/syscalls/stringbyte.go +++ /dev/null @@ -1,37 +0,0 @@ -// stringbyte.go -- string to bytes functions. - -// Copyright 2010 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 - -import "unsafe" - -// StringByteSlice returns a NUL-terminated slice of bytes -// containing the text of s. -func StringByteSlice(s string) []byte { - a := make([]byte, len(s)+1); - for i := 0; i < len(s); i++ { - a[i] = s[i]; - } - return a; -} - -// StringBytePtr returns a pointer to a NUL-terminated array of bytes -// containing the text of s. -func StringBytePtr(s string) *byte { - p := StringByteSlice(s); - return &p[0]; -} - -// BytePtrToString takes a NUL-terminated array of bytes and convert -// it to a Go string. -func BytePtrToString(p *byte) string { - a := (*[10000]byte)(unsafe.Pointer(p)) - i := 0 - for a[i] != 0 { - i++ - } - return string(a[:i]) -} |