]> Cypherpunks repositories - gostls13.git/commitdiff
cmd/5g, cmd/6g, cmd/8g, cmd/9g: zero more in componentgen
authorJosh Bleecher Snyder <josharian@gmail.com>
Fri, 9 Jan 2015 19:57:51 +0000 (11:57 -0800)
committerJosh Bleecher Snyder <josharian@gmail.com>
Fri, 13 Feb 2015 01:17:38 +0000 (01:17 +0000)
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 #1914

Change-Id: I15ea303068835f606f883ddf4a2bb4cb2287e9ae
Reviewed-on: https://go-review.googlesource.com/2605
Reviewed-by: Russ Cox <rsc@golang.org>
Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com>

src/cmd/5g/cgen.c
src/cmd/6g/cgen.c
src/cmd/8g/cgen.c
src/cmd/9g/cgen.c

index 6acf6dfdf065513b3ad3afb8991c049afa10241d..aa64d05ed0e1684bd37e9fc88b1f982a1a69a82c 100644 (file)
@@ -1680,7 +1680,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;
index 5e98934da6ea7020ebf3da2471e8d2bde1443f3e..fa7d1eefbede21ccd127faa95f2e152edf71b4d3 100644 (file)
@@ -1587,7 +1587,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;
index c65a437857a750182cccec85e706d1ab9f8aa6a2..a0e39c0ffe0ec76cdfd6be3abdae3aa88218b97d 100644 (file)
@@ -1427,7 +1427,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;
index 706658de0e56effd458ae3d7c57e6692e307a71d..e4520fb44dba0d10475893da2d1f153feeec2a52 100644 (file)
@@ -1602,7 +1602,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;