Commit fa6375ea authored by Ian Lance Taylor's avatar Ian Lance Taylor

cmd/6g, cmd/8g: simplify calls to gvardef

The gvardef function does nothing if n->class == PEXTERN, so
we don't need to test for that before calling it.  This makes
the 6g/8g code more like the 5g code and clarifies that the
cases that do not test for n->class != PEXTERN are not buggy.

LGTM=rsc
R=rsc
CC=golang-codereviews
https://golang.org/cl/68900044
parent 37346638
......@@ -1389,11 +1389,11 @@ sgen(Node *n, Node *ns, int64 w)
if(n->ullman >= ns->ullman) {
agenr(n, &nodr, N);
if(ns->op == ONAME && ns->class != PEXTERN)
if(ns->op == ONAME)
gvardef(ns);
agenr(ns, &nodl, N);
} else {
if(ns->op == ONAME && ns->class != PEXTERN)
if(ns->op == ONAME)
gvardef(ns);
agenr(ns, &nodl, N);
agenr(n, &nodr, N);
......@@ -1575,7 +1575,7 @@ componentgen(Node *nr, Node *nl)
switch(nl->type->etype) {
case TARRAY:
// componentgen for arrays.
if(nl->op == ONAME && nl->class != PEXTERN)
if(nl->op == ONAME)
gvardef(nl);
t = nl->type;
if(!isslice(t)) {
......@@ -1626,7 +1626,7 @@ componentgen(Node *nr, Node *nl)
goto yes;
case TSTRING:
if(nl->op == ONAME && nl->class != PEXTERN)
if(nl->op == ONAME)
gvardef(nl);
nodl.xoffset += Array_array;
nodl.type = ptrto(types[TUINT8]);
......@@ -1651,7 +1651,7 @@ componentgen(Node *nr, Node *nl)
goto yes;
case TINTER:
if(nl->op == ONAME && nl->class != PEXTERN)
if(nl->op == ONAME)
gvardef(nl);
nodl.xoffset += Array_array;
nodl.type = ptrto(types[TUINT8]);
......@@ -1676,7 +1676,7 @@ componentgen(Node *nr, Node *nl)
goto yes;
case TSTRUCT:
if(nl->op == ONAME && nl->class != PEXTERN)
if(nl->op == ONAME)
gvardef(nl);
loffset = nodl.xoffset;
roffset = nodr.xoffset;
......
......@@ -1384,7 +1384,7 @@ componentgen(Node *nr, Node *nl)
switch(nl->type->etype) {
case TARRAY:
if(nl->op == ONAME && nl->class != PEXTERN)
if(nl->op == ONAME)
gvardef(nl);
nodl.xoffset += Array_array;
nodl.type = ptrto(nl->type->type);
......@@ -1419,7 +1419,7 @@ componentgen(Node *nr, Node *nl)
goto yes;
case TSTRING:
if(nl->op == ONAME && nl->class != PEXTERN)
if(nl->op == ONAME)
gvardef(nl);
nodl.xoffset += Array_array;
nodl.type = ptrto(types[TUINT8]);
......@@ -1444,7 +1444,7 @@ componentgen(Node *nr, Node *nl)
goto yes;
case TINTER:
if(nl->op == ONAME && nl->class != PEXTERN)
if(nl->op == ONAME)
gvardef(nl);
nodl.xoffset += Array_array;
nodl.type = ptrto(types[TUINT8]);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment