From a4bffe65e56a1eee739d54d12512e1372ff0a4af Mon Sep 17 00:00:00 2001 From: Stephen Heumann Date: Wed, 23 Nov 2016 21:03:04 -0600 Subject: [PATCH] Increase the limit on the number of intermediate code labels in a function from 2400 to 3200. This is necessary to compile some very large functions, such as the main interpreter loop in Git. This consumes about 8K of extra memory for the additional label records. --- CCommon.pas | 3 ++- CGC.asm | 2 +- CGI.pas | 4 ++-- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/CCommon.pas b/CCommon.pas index b0e2a1b..443f0d1 100644 --- a/CCommon.pas +++ b/CCommon.pas @@ -622,7 +622,8 @@ implementation const {Note: maxLabel is also defined in cgi.pas} - maxLabel = 2400; {max # compiler generated labels} + {Note: maxlabel is also defined in CGC.asm} + maxLabel = 3200; {max # compiler generated labels} {spinner} {-------} diff --git a/CGC.asm b/CGC.asm index 890a4b3..851bfe6 100644 --- a/CGC.asm +++ b/CGC.asm @@ -96,7 +96,7 @@ rec_cmp equ 18 disp to comp (SANE) value **************************************************************** * InitLabels start -maxLabel equ 2400 +maxLabel equ 3200 ! with labelTab[0] do begin lda #-1 val := -1; diff --git a/CGI.pas b/CGI.pas index 8d9d339..452ed2f 100644 --- a/CGI.pas +++ b/CGI.pas @@ -194,8 +194,8 @@ const {---------------} maxCBuff = 191; {length of constant buffer} {Note: maxlabel is also defined in CCommon.pas} - {Note: maxlabel is also defined in objout.asm} - maxLabel = 2400; {max # of internal labels} + {Note: maxlabel is also defined in CGC.asm} + maxLabel = 3200; {max # of internal labels} maxLocalLabel = 200; {max # local variables} maxString = 8000; {max # chars in string space}