From 393dfd1ced89013a4e67aebdd8950ffb3449773a Mon Sep 17 00:00:00 2001 From: cinap_lenrek Date: Fri, 21 Mar 2014 19:05:17 +0100 Subject: [PATCH] 8c, 6c: fix mulgen botch error for handling multiplication by zero constant --- sys/src/cmd/6c/mul.c | 5 +++++ sys/src/cmd/8c/mul.c | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/sys/src/cmd/6c/mul.c b/sys/src/cmd/6c/mul.c index a60908c64..427a5c8d2 100644 --- a/sys/src/cmd/6c/mul.c +++ b/sys/src/cmd/6c/mul.c @@ -312,6 +312,11 @@ mulgen1(ulong v, Node *n) Mparam *p; Node nod, nods; + if(v == 0){ + zeroregm(n); + return 1; + } + for(i = 0; i < nelem(multab); i++) { p = &multab[i]; if(p->value == v) diff --git a/sys/src/cmd/8c/mul.c b/sys/src/cmd/8c/mul.c index a60908c64..427a5c8d2 100644 --- a/sys/src/cmd/8c/mul.c +++ b/sys/src/cmd/8c/mul.c @@ -312,6 +312,11 @@ mulgen1(ulong v, Node *n) Mparam *p; Node nod, nods; + if(v == 0){ + zeroregm(n); + return 1; + } + for(i = 0; i < nelem(multab); i++) { p = &multab[i]; if(p->value == v)