compiler: handle set-and-use-temp in nilcheck code
commit2dd8970435e9ebe40d005584b73969ec60c76d46
authorian <ian@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 6 Dec 2017 13:32:06 +0000 (6 13:32 +0000)
committerian <ian@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 6 Dec 2017 13:32:06 +0000 (6 13:32 +0000)
tree7fffcd9e8ba3dcd0a191a595a2135dabded952b4
parent41cb1ea74e2cf2778a7f39a53effc99b2647f6fd
compiler: handle set-and-use-temp in nilcheck code

    Change the code in Unary_expression::do_get_backend that introduces
    explicit nil checks for dereference operations to special case
    set-and-use-temporary expressions. For this case it is better to
    generate an explicit reference of the temp in the final conditional
    (avoids introducing tree sharing).

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@255442 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/go/gofrontend/MERGE
gcc/go/gofrontend/expressions.cc