aboutsummaryrefslogtreecommitdiff
path: root/libgcc
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@gcc.gnu.org>2019-06-10 21:08:42 +0000
committerIan Lance Taylor <ian@gcc.gnu.org>2019-06-10 21:08:42 +0000
commit35c19de69645b18eeef7dbecfcd98b19f9948c84 (patch)
tree344882ca7aca8afcf2c908ba8ab684d36c5f7413 /libgcc
parentfc917b42658000f0c4dc87f6602336eef899fadf (diff)
downloadgcc-35c19de69645b18eeef7dbecfcd98b19f9948c84.zip
gcc-35c19de69645b18eeef7dbecfcd98b19f9948c84.tar.gz
gcc-35c19de69645b18eeef7dbecfcd98b19f9948c84.tar.bz2
compiler: make heap expression's write barrier conditional
Heap_expression::do_get_backend emits an unconditional write barrier if the type has pointers and it is not a stack allocation. This CL changes it to use a write barrier for the assignment only when write barriers are enabled. While here, also change it to call gcWriteBarrier instead of typedmemmove for pointer-shaped types. For this to work, Function::build needs to be adjusted so that Heap_expression::do_get_backend is called when there is a parent block. Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/181540 From-SVN: r272132
Diffstat (limited to 'libgcc')
0 files changed, 0 insertions, 0 deletions