From 1d0e5e8b01f24b2416d5ad1ee98544a4b1ba8dab Mon Sep 17 00:00:00 2001 From: bellard Date: Tue, 2 Nov 2004 21:55:13 +0000 Subject: [PATCH] stack full fix --- tcc.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tcc.c b/tcc.c index e3cceae3..5a8e8327 100644 --- a/tcc.c +++ b/tcc.c @@ -111,7 +111,7 @@ typedef int BOOL; #define INCLUDE_STACK_SIZE 32 #define IFDEF_STACK_SIZE 64 -#define VSTACK_SIZE 64 +#define VSTACK_SIZE 256 #define STRING_MAX_SIZE 1024 #define TOK_HASH_SIZE 8192 /* must be a power of two */ @@ -4266,7 +4266,7 @@ void vsetc(CType *type, int r, CValue *vc) { int v; - if (vtop >= vstack + VSTACK_SIZE) + if (vtop >= vstack + (VSTACK_SIZE - 1)) error("memory full"); /* cannot let cpu flags if other instruction are generated. Also avoid leaving VT_JMP anywhere except on the top of the stack @@ -4387,7 +4387,7 @@ void vswap(void) void vpushv(SValue *v) { - if (vtop >= vstack + VSTACK_SIZE) + if (vtop >= vstack + (VSTACK_SIZE - 1)) error("memory full"); vtop++; *vtop = *v; -- 2.11.4.GIT