summary refs log tree commit diff
path: root/lisc
diff options
context:
space:
mode:
Diffstat (limited to 'lisc')
-rw-r--r--lisc/live.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/lisc/live.c b/lisc/live.c
index d355fd6..dc8060d 100644
--- a/lisc/live.c
+++ b/lisc/live.c
@@ -111,7 +111,8 @@ Again:
 		bset(b->jmp.arg, b, &nlv, phi, f->tmp);
 		b->nlive = nlv;
 		for (i=&b->ins[b->nins]; i!=b->ins;) {
-			if ((--i)->op == OCall) {
+			if ((--i)->op == OCall)
+			if (rtype(i->arg[1]) == RACall) {
 				b->in.t[0] &= ~calldef(*i, &m);
 				nlv -= m;
 				if (nlv + NRSave > b->nlive)