mirror of
https://github.com/golang/go
synced 2024-11-19 06:14:39 -07:00
3371b79a96
(reflect.Value).Send (reflect.Value).TrySend (reflect.Value).Recv (reflect.Value).TryRecv (reflect.Type).ChanOf (reflect.Type).In (reflect.Type).Out reflect.Indirect reflect.MakeChan Also: - specialize genInvoke when the receiver is a reflect.Type under the assumption that there's only one possible concrete type. This makes all reflect.Type operations context-sensitive since the calls are no longer dynamic. - Rename all variables to match the actual parameter names used in the reflect API. - Add pointer.Config.Reflection flag (exposed in oracle as --reflect, default false) to enable reflection. It currently adds about 20% running time. I'll make it true after the presolver is implemented. - Simplified worklist datatype and solver main loop slightly (~10% speed improvement). - Use addLabel() utility to add a label to a PTS. (Working on my 3 yr old 2x2GHz+4GB Mac vs 8x4GHz+24GB workstation, one really notices the cost of pointer analysis. Note to self: time to implement presolver.) R=crawshaw CC=golang-dev https://golang.org/cl/13242062 |
||
---|---|---|
.. | ||
testdata | ||
analysis.go | ||
api.go | ||
callgraph.go | ||
doc.go | ||
example_test.go | ||
gen.go | ||
intrinsics.go | ||
labels.go | ||
pointer_test.go | ||
print.go | ||
reflect.go | ||
solve.go | ||
TODO | ||
util.go |