This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

libgo patch committed: Scan write barrier buffer conservatively


This libgo patch by Cherry Zhang scans the write barrier buffer
conservatively.  In gccgo, we insert the write barriers in the
frontend, and so we cannot completely prevent write barriers on stack
writes.  So it is possible for a bad pointer appearing in the write
barrier buffer.  When flushing the write barrier, treat it the same as
scanning the stack.  In particular, don't mark a pointer if it does
not point to an allocated object. We already have similar logic in
greyobject.  With this, hopefully, we can prevent an unallocated
object from being marked completely.  Bootstrapped and ran Go
testsuite on x86_64-pc-linux-gnu.  Committed to mainline.

Ian

Attachment: patch.txt
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]