diff mbox series

libgo patch committed: Export cgoCheck functions

Message ID CAOyqgcW279XXX7GBwhbjE2rwQezjGCgvWYFjDtvemGkFWEfHMA@mail.gmail.com
State New
Headers show
Series libgo patch committed: Export cgoCheck functions | expand

Commit Message

Ian Lance Taylor Dec. 2, 2017, 12:46 a.m. UTC
This patch to libgo exports the cgoCheck functions.  The functions
cgoCheckPointer and cgoCheckResult are called by code generated by
cgo. That means that we need to export them using go:linkname, as
otherwise they are local symbols. The cgo code currently uses weak
references to only call the symbols if they are defined, which is why
it has been working--the cgo code has not been doing any checks.
Bootstrapped and ran Go testsuite on x86_64-pc-linux-gnu.  Committed
to mainline.

Ian
diff mbox series

Patch

Index: gcc/go/gofrontend/MERGE
===================================================================
--- gcc/go/gofrontend/MERGE	(revision 255346)
+++ gcc/go/gofrontend/MERGE	(working copy)
@@ -1,4 +1,4 @@ 
-1949a203fca0c8bde6f2690ebc36427c5e3953c7
+338f7434175bb71f3c8905e9ad7f480aec3afee6
 
 The first line of this file holds the git revision number of the last
 merge done from the gofrontend repository.
Index: libgo/go/runtime/cgocall.go
===================================================================
--- libgo/go/runtime/cgocall.go	(revision 255340)
+++ libgo/go/runtime/cgocall.go	(working copy)
@@ -11,6 +11,10 @@  import (
 	"unsafe"
 )
 
+// Functions called by cgo-generated code.
+//go:linkname cgoCheckPointer runtime.cgoCheckPointer
+//go:linkname cgoCheckResult runtime.cgoCheckResult
+
 // Pointer checking for cgo code.
 
 // We want to detect all cases where a program that does not use