aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--optimize.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/optimize.c b/optimize.c
index 926761d5..8544f3e1 100644
--- a/optimize.c
+++ b/optimize.c
@@ -578,7 +578,7 @@ F(opt_state_t *opt_state, int code, int v0, int v1)
static inline void
vstore(struct stmt *s, int *valp, int newval, int alter)
{
- if (alter && *valp == newval)
+ if (alter && newval != 0 && *valp == newval)
s->code = NOP;
else
*valp = newval;