From a67ffa423cc859ac5093337e26af9c87af4631f6 Mon Sep 17 00:00:00 2001 From: Quentin Carbonneaux Date: Tue, 22 Mar 2016 12:16:03 -0400 Subject: check for overflow in ssa.c (abi fuzzer) --- lisc/lisc.h | 2 +- lisc/ssa.c | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) (limited to 'lisc') diff --git a/lisc/lisc.h b/lisc/lisc.h index 41be0ad..a57a984 100644 --- a/lisc/lisc.h +++ b/lisc/lisc.h @@ -77,7 +77,7 @@ enum Reg { enum { NString = 32, - NPred = 15, + NPred = 63, NIns = 8192, NAlign = 3, NSeg = 32, diff --git a/lisc/ssa.c b/lisc/ssa.c index 269406b..7ccd944 100644 --- a/lisc/ssa.c +++ b/lisc/ssa.c @@ -464,6 +464,8 @@ renblk(Blk *b, Name **stk, Fn *fn) t = p->to.val; if ((t=fn->tmp[t].visit)) { m = p->narg++; + if (m == NPred) + diag("ssa: too many phi arguments"); p->arg[m] = getstk(t, b, stk); p->blk[m] = b; } -- cgit 1.4.1