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