diff options
Diffstat (limited to 'sys/src/cmd/8c/cgen.c')
-rw-r--r-- | sys/src/cmd/8c/cgen.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/sys/src/cmd/8c/cgen.c b/sys/src/cmd/8c/cgen.c index 0c26454e8..c1ec490d5 100644 --- a/sys/src/cmd/8c/cgen.c +++ b/sys/src/cmd/8c/cgen.c @@ -131,6 +131,8 @@ cgen(Node *n, Node *nn) if(l->complex >= r->complex) { if(l->op == OINDEX && r->op == OCONST) { gmove(r, l); + if(nn != Z) + gmove(r, nn); break; } reglcgen(&nod1, l, Z); @@ -149,6 +151,8 @@ cgen(Node *n, Node *nn) reglcgen(&nod1, l, Z); } gmove(&nod, &nod1); + if(nn != Z) + gmove(&nod, nn); regfree(&nod); regfree(&nod1); break; |