diff options
author | Ian Lance Taylor <ian@gcc.gnu.org> | 2018-09-13 22:25:58 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@gcc.gnu.org> | 2018-09-13 22:25:58 +0000 |
commit | cec07c4759e8af44ca77a2beb9312e4e30d1cc7a (patch) | |
tree | 38fe52c7aeba372693d83041bf5037d8fbb2c311 /gcc/expr.c | |
parent | 38fab7369d19fd545eb8510ec198e73949a2c75d (diff) | |
download | gcc-cec07c4759e8af44ca77a2beb9312e4e30d1cc7a.zip gcc-cec07c4759e8af44ca77a2beb9312e4e30d1cc7a.tar.gz gcc-cec07c4759e8af44ca77a2beb9312e4e30d1cc7a.tar.bz2 |
compiler, runtime: call gcWriteBarrier instead of writebarrierptr
In 1.11 writebarrierptr is going away, so change the compiler to call
gcWriteBarrier instead. We weren't using gcWriteBarrier before;
adjust the implementation to use the putFast method.
This revealed a problem in the kickoff function. When using cgo,
kickoff can be called on the g0 of an m allocated by newExtraM. In
that case the m will generally have a p, but systemstack may be called
by wbBufFlush as part of flushing the write barrier buffer. At that
point the buffer is full, so we can not do a write barrier. So adjust
the existing code in kickoff so that in the case where we are g0,
don't do any write barrier at all.
Reviewed-on: https://go-review.googlesource.com/131395
From-SVN: r264295
Diffstat (limited to 'gcc/expr.c')
0 files changed, 0 insertions, 0 deletions