• Russ Cox's avatar
    cmd/gc: eliminate redundant &x.Field nil checks · aa0439ba
    Russ Cox authored
    This eliminates ~75% of the nil checks being emitted,
    on all architectures. We can do better, but we need
    a bit more general support from the compiler, and
    I don't want to do that so close to Go 1.2.
    What's here is simple but effective and safe.
    
    A few small code generation cleanups were required
    to make the analysis consistent on all systems about
    which nil checks are omitted, at least in the test.
    
    Fixes #6019.
    
    R=ken2
    CC=golang-dev
    https://golang.org/cl/13334052
    aa0439ba
Name
Last commit
Last update
..
Makefile Loading commit data...
align.c Loading commit data...
bisonerrors Loading commit data...
bits.c Loading commit data...
builtin.c Loading commit data...
bv.c Loading commit data...
closure.c Loading commit data...
const.c Loading commit data...
cplx.c Loading commit data...
dcl.c Loading commit data...
doc.go Loading commit data...
esc.c Loading commit data...
export.c Loading commit data...
fmt.c Loading commit data...
gen.c Loading commit data...
go.errors Loading commit data...
go.h Loading commit data...
go.y Loading commit data...
init.c Loading commit data...
inl.c Loading commit data...
lex.c Loading commit data...
md5.c Loading commit data...
md5.h Loading commit data...
mkbuiltin Loading commit data...
mkbuiltin1.c Loading commit data...
mkopnames Loading commit data...
mparith1.c Loading commit data...
mparith2.c Loading commit data...
mparith3.c Loading commit data...
obj.c Loading commit data...
order.c Loading commit data...
pgen.c Loading commit data...
popt.c Loading commit data...
popt.h Loading commit data...
racewalk.c Loading commit data...
range.c Loading commit data...
reflect.c Loading commit data...
runtime.go Loading commit data...
select.c Loading commit data...
sinit.c Loading commit data...
subr.c Loading commit data...
swt.c Loading commit data...
typecheck.c Loading commit data...
unsafe.c Loading commit data...
unsafe.go Loading commit data...
walk.c Loading commit data...
y.tab.c Loading commit data...
y.tab.h Loading commit data...
yerr.h Loading commit data...