r262120 - in /trunk/gcc/go/gofrontend: MERGE es...
ian@gcc.gnu.org
ian@gcc.gnu.org
Mon Jun 25 22:23:00 GMT 2018
Author: ian
Date: Mon Jun 25 22:23:49 2018
New Revision: 262120
URL: https://gcc.gnu.org/viewcvs?rev=262120&root=gcc&view=rev
Log:
compiler: improve escape analysis
This CL ports recent enhancements of the escape analysis in the
gc compiler to gofrontend.
- CL 99335: unnamed receiver should not escape.
- CL 105257: propagate loop depth to field. This prevents it
from escaping when a field's address is taken inside a loop
(but not otherwise escape).
- CL 107597: use element type for "indirection" of slice/string.
This prevents the slice/string from escaping when only the
element, in case that it is pointerless, flows to outer scope.
Reviewed-on: https://go-review.googlesource.com/120760
Modified:
trunk/gcc/go/gofrontend/MERGE
trunk/gcc/go/gofrontend/escape.cc
More information about the Gcc-cvs
mailing list