1
0
mirror of https://github.com/golang/go synced 2024-11-20 09:04:44 -07:00
go/src/cmd/gc
Rémy Oudompheng 94ff311d1b gc: avoid false positives when using scalar struct fields.
The escape analysis code does not make a distinction between
scalar and pointers fields in structs. Non-pointer fields
that escape should not make the whole struct escape.

R=lvd, rsc
CC=golang-dev, remy
https://golang.org/cl/5489128
2012-01-12 12:08:40 +01:00
..
align.c gc: Nicer errors before miscompiling. 2012-01-10 11:19:22 +01:00
bisonerrors gc: support for building with Plan 9 yacc 2011-11-16 16:58:02 -05:00
bits.c gc: format nits 2011-11-07 11:42:08 -05:00
builtin.c.boot gc: avoid unsafe in defn of package runtime 2011-12-19 15:52:15 -05:00
closure.c gc: omit runtime.closure wrap for closures without closure variables 2012-01-10 11:07:35 +01:00
const.c gc: implement character constant type rules 2011-12-08 22:07:43 -05:00
cplx.c gc: handle complex CONVNOP 2011-09-19 11:50:53 -04:00
dcl.c gc: disallow declaration of variables outside package. 2012-01-10 11:18:56 +01:00
doc.go gc: composite literals as per Go 1 2011-12-02 14:13:12 -05:00
esc.c gc: avoid false positives when using scalar struct fields. 2012-01-12 12:08:40 +01:00
export.c gc: inlining fixes 2012-01-10 21:24:31 +01:00
fmt.c gc: inlining bug 2012-01-11 20:32:02 -05:00
gen.c gc: composite literals as per Go 1 2011-12-02 14:13:12 -05:00
go.errors gc: clean up if grammar 2011-09-12 15:52:29 -04:00
go.h gc: inlining fixes 2012-01-10 21:24:31 +01:00
go.y gc: inlining (disabled without -l) 2011-12-14 15:05:33 +01:00
init.c gc: changes in export format in preparation of inlining. 2011-12-05 14:40:19 -05:00
inl.c gc: fix inlining bug 2012-01-11 17:25:09 -05:00
lex.c gc: enable inlining by default 2012-01-10 20:08:53 -08:00
Makefile gc: inlining (disabled without -l) 2011-12-14 15:05:33 +01:00
md5.c gc: shuffle #includes 2011-08-25 16:25:10 -04:00
md5.h
mkbuiltin gc: fix mkbuiltin 2011-08-17 14:54:51 -04:00
mkbuiltin1.c gc: fix mkbuiltin 2011-08-17 14:54:51 -04:00
mkopnames
mparith1.c gc: shuffle #includes 2011-08-25 16:25:10 -04:00
mparith2.c gc: fix build on Plan 9 2011-08-29 09:35:04 -04:00
mparith3.c gc: shuffle #includes 2011-08-25 16:25:10 -04:00
obj.c gc: clean up printing. 2011-10-31 18:09:40 +01:00
pgen.c gc: Nicer errors before miscompiling. 2012-01-10 11:19:22 +01:00
range.c runtime: prep for type-specific algorithms 2011-12-05 09:40:22 -05:00
reflect.c gc: implement == on structs and arrays 2011-12-12 22:22:09 -05:00
runtime.go cmd/go: work toward build script 2011-12-20 16:42:44 -05:00
select.c gc: introduce temp = nod+tempname 2011-09-02 15:35:16 -04:00
sinit.c gc: add forgotten typecheck in a lonely corner of sinit 2011-12-14 15:54:10 +01:00
subr.c gc: allow use of unsafe.Pointer in generated code 2011-12-20 16:25:57 -05:00
swt.c gc: remove now redundant typecheck of ->ninit on switches. 2012-01-09 21:42:24 +01:00
typecheck.c gc: fix stray %#N in error message 2012-01-10 11:09:04 +01:00
unsafe.c gc: keep pointer to original node in constant rewrites. 2011-12-07 16:18:50 -05:00
unsafe.go cmd/go: work toward build script 2011-12-20 16:42:44 -05:00
walk.c gc: avoid unsafe in defn of package runtime 2011-12-19 15:52:15 -05:00