summaryrefslogtreecommitdiff
path: root/src/cmd/5g/cgen.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/cmd/5g/cgen.c')
-rw-r--r--src/cmd/5g/cgen.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/src/cmd/5g/cgen.c b/src/cmd/5g/cgen.c
index 76e2707fa..6e2fbe20f 100644
--- a/src/cmd/5g/cgen.c
+++ b/src/cmd/5g/cgen.c
@@ -595,9 +595,6 @@ agen(Node *n, Node *res)
// i is in &n1 (if not constant)
// w is width
- if(w == 0)
- fatal("index is zero width");
-
// constant index
if(isconst(nr, CTINT)) {
if(isconst(nl, CTSTR))
@@ -683,7 +680,9 @@ agen(Node *n, Node *res)
gmove(&n1, &n3);
}
- if(w == 1 || w == 2 || w == 4 || w == 8) {
+ if(w == 0) {
+ // nothing to do
+ } else if(w == 1 || w == 2 || w == 4 || w == 8) {
memset(&n4, 0, sizeof n4);
n4.op = OADDR;
n4.left = &n2;