]> git.ipfire.org Git - thirdparty/gcc.git/commit
libgo: build roots index to speed up bulkBarrierPreWrite
authorian <ian@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 13 Sep 2018 16:44:43 +0000 (16:44 +0000)
committerian <ian@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 13 Sep 2018 16:44:43 +0000 (16:44 +0000)
commit016080e3e9a12adc75fe4472618137c4fce3664b
treecf54f17b22cc8d27bc1149aa3f7b310f13749579
parent15359c963880ece6163fc93652fb1207cac5b710
libgo: build roots index to speed up bulkBarrierPreWrite

    To reduce the amount of time spent in write barrier processing
    (specifically runtime.bulkBarrierPreWrite), add support for building a
    'GC roots index', basically a sorted list of all roots, so as to
    allow more efficient lookups of gcdata structures for globals. The
    previous implementation worked on the raw (unsorted) roots list
    itself, which did not scale well.

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@264276 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/go/gofrontend/MERGE
gcc/go/gofrontend/gogo.cc
libgo/go/runtime/cgocall.go
libgo/go/runtime/mbitmap.go
libgo/go/runtime/mgc_gccgo.go
libgo/go/runtime/proc.go