Skip to content

Commit

Permalink
cmd/5g, cmd/6g, cmd/8g, cmd/9g: zero more in componentgen
Browse files Browse the repository at this point in the history
Fix a flipped nil check.
The flipped check prevented componentgen
from zeroing a non-cadable nl.
This fix reduces the number of non-SB LEAQs
in godoc from 35323 to 34920 (-1.1%).

Update golang#1914

Change-Id: I15ea303068835f606f883ddf4a2bb4cb2287e9ae
  • Loading branch information
josharian committed Jan 9, 2015
1 parent ececbe8 commit ba83189
Show file tree
Hide file tree
Showing 4 changed files with 4 additions and 4 deletions.
2 changes: 1 addition & 1 deletion src/cmd/5g/cgen.c
Original file line number Diff line number Diff line change
Expand Up @@ -1681,7 +1681,7 @@ componentgen(Node *nr, Node *nl)

nodl = *nl;
if(!cadable(nl)) {
if(nr == N || !cadable(nr))
if(nr != N && !cadable(nr))
goto no;
igen(nl, &nodl, N);
freel = 1;
Expand Down
2 changes: 1 addition & 1 deletion src/cmd/6g/cgen.c
Original file line number Diff line number Diff line change
Expand Up @@ -1566,7 +1566,7 @@ componentgen(Node *nr, Node *nl)

nodl = *nl;
if(!cadable(nl)) {
if(nr == N || !cadable(nr))
if(nr != N && !cadable(nr))
goto no;
igen(nl, &nodl, N);
freel = 1;
Expand Down
2 changes: 1 addition & 1 deletion src/cmd/8g/cgen.c
Original file line number Diff line number Diff line change
Expand Up @@ -1413,7 +1413,7 @@ componentgen(Node *nr, Node *nl)

nodl = *nl;
if(!cadable(nl)) {
if(nr == N || !cadable(nr))
if(nr != N && !cadable(nr))
goto no;
igen(nl, &nodl, N);
freel = 1;
Expand Down
2 changes: 1 addition & 1 deletion src/cmd/9g/cgen.c
Original file line number Diff line number Diff line change
Expand Up @@ -1597,7 +1597,7 @@ componentgen(Node *nr, Node *nl)

nodl = *nl;
if(!cadable(nl)) {
if(nr == N || !cadable(nr))
if(nr != N && !cadable(nr))
goto no;
igen(nl, &nodl, N);
freel = 1;
Expand Down

0 comments on commit ba83189

Please sign in to comment.