diff options
author | Ian Lance Taylor <ian@gcc.gnu.org> | 2019-08-31 03:01:15 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@gcc.gnu.org> | 2019-08-31 03:01:15 +0000 |
commit | c70ff9f9be0c7360a37519ec68ac4dd41e8d0a3c (patch) | |
tree | 2a189fbed2324d7708bfe231203bd294028057c9 /libgo/go/runtime/string.go | |
parent | e7c8f75569e792f81a4f4ceee4e1b20f2544e7a4 (diff) | |
download | gcc-c70ff9f9be0c7360a37519ec68ac4dd41e8d0a3c.zip gcc-c70ff9f9be0c7360a37519ec68ac4dd41e8d0a3c.tar.gz gcc-c70ff9f9be0c7360a37519ec68ac4dd41e8d0a3c.tar.bz2 |
compiler, runtime: support and use single argument go:linkname
The gc compiler has started permitting go:linkname comments with a
single argument to mean that a function should be externally visible
outside the package. Implement this in the Go frontend.
Change the libgo runtime package to use it, rather than repeating the
name just to export a function.
Remove a couple of unnecessary go:linkname comments on declarations.
Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/192197
From-SVN: r275239
Diffstat (limited to 'libgo/go/runtime/string.go')
-rw-r--r-- | libgo/go/runtime/string.go | 21 |
1 files changed, 10 insertions, 11 deletions
diff --git a/libgo/go/runtime/string.go b/libgo/go/runtime/string.go index 9bcfc996..d225dc3 100644 --- a/libgo/go/runtime/string.go +++ b/libgo/go/runtime/string.go @@ -9,19 +9,18 @@ import ( "unsafe" ) -// For gccgo, use go:linkname to rename compiler-called functions to -// themselves, so that the compiler will export them. +// For gccgo, use go:linkname to export compiler-called functions. // -//go:linkname concatstrings runtime.concatstrings -//go:linkname slicebytetostring runtime.slicebytetostring -//go:linkname slicebytetostringtmp runtime.slicebytetostringtmp -//go:linkname stringtoslicebyte runtime.stringtoslicebyte -//go:linkname stringtoslicerune runtime.stringtoslicerune -//go:linkname slicerunetostring runtime.slicerunetostring -//go:linkname intstring runtime.intstring +//go:linkname concatstrings +//go:linkname slicebytetostring +//go:linkname slicebytetostringtmp +//go:linkname stringtoslicebyte +//go:linkname stringtoslicerune +//go:linkname slicerunetostring +//go:linkname intstring // Temporary for C code to call: -//go:linkname gostringnocopy runtime.gostringnocopy -//go:linkname findnull runtime.findnull +//go:linkname gostringnocopy +//go:linkname findnull // The constant is known to the compiler. // There is no fundamental theory behind this number. |