]> git.ipfire.org Git - thirdparty/gcc.git/commit - gcc/go/gofrontend/expressions.cc
runtime: rewrite interface code into Go
authorian <ian@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 20 Oct 2016 18:51:35 +0000 (18:51 +0000)
committerian <ian@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 20 Oct 2016 18:51:35 +0000 (18:51 +0000)
commit6098d6cb6df5130c68310dfc281537dfafd0aa6a
tree458f96322bb64b331d71a3304f09cd7c032efa9c
parent8d379b82445d77aae6cd453070ddf7096a14b184
runtime: rewrite interface code into Go

    I started to copy the Go 1.7 interface code, but the gc and gccgo
    representations of interfaces are too different.  So instead I rewrote
    the gccgo interface code from C to Go.  The code is largely the same as
    it was, but the names are more like those used in the gc runtime.

    I also copied over the string comparison functions, and tweaked the
    compiler to use eqstring when comparing strings for equality.

    Reviewed-on: https://go-review.googlesource.com/31591

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@241384 138bc75d-0d04-0410-961f-82ee72b054a4
42 files changed:
gcc/go/gofrontend/MERGE
gcc/go/gofrontend/escape.cc
gcc/go/gofrontend/expressions.cc
gcc/go/gofrontend/runtime.def
gcc/go/gofrontend/statements.cc
gcc/go/gofrontend/types.cc
libgo/Makefile.am
libgo/Makefile.in
libgo/go/runtime/alg.go [new file with mode: 0644]
libgo/go/runtime/iface.go [new file with mode: 0644]
libgo/go/runtime/runtime2.go
libgo/go/runtime/stubs.go
libgo/go/runtime/type.go
libgo/runtime/go-assert-interface.c [deleted file]
libgo/runtime/go-can-convert-interface.c [deleted file]
libgo/runtime/go-cgo.c
libgo/runtime/go-check-interface.c [deleted file]
libgo/runtime/go-convert-interface.c [deleted file]
libgo/runtime/go-deferred-recover.c
libgo/runtime/go-eface-compare.c [deleted file]
libgo/runtime/go-eface-val-compare.c [deleted file]
libgo/runtime/go-iface.goc [deleted file]
libgo/runtime/go-interface-compare.c [deleted file]
libgo/runtime/go-interface-eface-compare.c [deleted file]
libgo/runtime/go-interface-val-compare.c [deleted file]
libgo/runtime/go-panic.c
libgo/runtime/go-panic.h
libgo/runtime/go-recover.c
libgo/runtime/go-strcmp.c [deleted file]
libgo/runtime/go-strslice.c
libgo/runtime/go-type-eface.c [deleted file]
libgo/runtime/go-type-interface.c [deleted file]
libgo/runtime/go-unsafe-new.c
libgo/runtime/go-unsafe-newarray.c
libgo/runtime/go-unwind.c
libgo/runtime/heapdump.c
libgo/runtime/interface.h [deleted file]
libgo/runtime/malloc.goc
libgo/runtime/mgc0.c
libgo/runtime/reflect.goc [deleted file]
libgo/runtime/runtime.h
libgo/runtime/runtime1.goc