diff --git a/src/0000Boot/0000Kernel.BIN.C b/src/0000Boot/0000Kernel.BIN.C index ff0d4c95..a49f402b 100755 Binary files a/src/0000Boot/0000Kernel.BIN.C and b/src/0000Boot/0000Kernel.BIN.C differ diff --git a/src/Compiler/Asm.HC b/src/Compiler/Asm.HC index cde59dea..f2fd9128 100755 --- a/src/Compiler/Asm.HC +++ b/src/Compiler/Asm.HC @@ -1,4 +1,4 @@ -Bool PrsAsmImm(CCmpCtrl *cc,CAsmArg *arg) +Bool ParseAsmImm(CCmpCtrl *cc,CAsmArg *arg) { if (arg->imm_or_off_present) LexExcept(cc,"Already one immediate at "); @@ -32,7 +32,7 @@ Bool PrsAsmImm(CCmpCtrl *cc,CAsmArg *arg) return TRUE; } -U0 PrsAsmArg(CCmpCtrl *cc,CAsmArg *arg,Bool rel) +U0 ParseAsmArg(CCmpCtrl *cc,CAsmArg *arg,Bool rel) { CHashGeneric *tmph,*tmph1; CHashReg *tmpr; @@ -113,7 +113,7 @@ U0 PrsAsmArg(CCmpCtrl *cc,CAsmArg *arg,Bool rel) } } else { pa_asm_direct_imm: - PrsAsmImm(cc,arg); + ParseAsmImm(cc,arg); arg->num.abs_cnts=cc->abs_cnts; if (arg->size<=1 && !rel && arg->num.abs_cnts&1) { if (cc->aotc->seg_size==16) @@ -161,7 +161,7 @@ pa_asm_direct_imm: Lex(cc); //skip '+' } else { pa_asm_indirect_imm: - PrsAsmImm(cc,arg); + ParseAsmImm(cc,arg); arg->num.abs_cnts=cc->abs_cnts; } } @@ -392,7 +392,7 @@ Bool AsmStoreNum(CCmpCtrl *cc,CAsmNum2 *num2,I64 cnt,Bool U8_avail) U8 asm_seg_prefixes[6]={0x26,0x2E,0x36,0x3E,0x64,0x65}; -Bool PrsAsmInst(CCmpCtrl *cc,CHashOpcode *tmpo,I64 argcnt) +Bool ParseAsmInst(CCmpCtrl *cc,CHashOpcode *tmpo,I64 argcnt) { CAOTCtrl *aotc=cc->aotc; I64 i,j,arg1,arg2,om,seg,arg1mask,arg2mask; @@ -811,7 +811,7 @@ Bool PrsAsmInst(CCmpCtrl *cc,CHashOpcode *tmpo,I64 argcnt) LexExcept(cc,"Invalid inst at "); } -U0 PrsAsmDefine(CCmpCtrl *cc,I64 U8_cnt) +U0 ParseAsmDefine(CCmpCtrl *cc,I64 U8_cnt) { Bool is_dup; I64 i,dup_val; @@ -885,7 +885,7 @@ U0 PrsAsmDefine(CCmpCtrl *cc,I64 U8_cnt) Lex(cc); } -U0 PrsBinFile(CCmpCtrl *cc) +U0 ParseBinFile(CCmpCtrl *cc) { I64 i,size; U8 *buf,*st; @@ -901,7 +901,7 @@ U0 PrsBinFile(CCmpCtrl *cc) Lex(cc); } -U0 PrsAsmBlk(CCmpCtrl *cc,I64 cmp_flags) +U0 ParseAsmBlk(CCmpCtrl *cc,I64 cmp_flags) { CAOTCtrl *aotc=cc->aotc; I64 i,j,k,argcnt, @@ -973,19 +973,19 @@ U0 PrsAsmBlk(CCmpCtrl *cc,I64 cmp_flags) AOTStoreCodeU8(cc,k); break; case AKW_DU8: - PrsAsmDefine(cc,1); + ParseAsmDefine(cc,1); break; case AKW_DU16: - PrsAsmDefine(cc,2); + ParseAsmDefine(cc,2); break; case AKW_DU32: - PrsAsmDefine(cc,4); + ParseAsmDefine(cc,4); break; case AKW_DU64: - PrsAsmDefine(cc,8); + ParseAsmDefine(cc,8); break; case AKW_BINFILE: - PrsBinFile(cc); + ParseBinFile(cc); break; case AKW_LIST: aotc->lst=TRUE; @@ -1012,9 +1012,9 @@ U0 PrsAsmBlk(CCmpCtrl *cc,I64 cmp_flags) if (tmpo->ins[0].arg1) { argcnt++; if (ARGT_REL8<=tmpo->ins[0].arg1<=ARGT_REL32) - PrsAsmArg(cc,&aotc->arg1,TRUE); + ParseAsmArg(cc,&aotc->arg1,TRUE); else - PrsAsmArg(cc,&aotc->arg1,FALSE); + ParseAsmArg(cc,&aotc->arg1,FALSE); if (tmpo->ins[0].arg2) { argcnt++; if (cc->token!=',') @@ -1022,13 +1022,13 @@ U0 PrsAsmBlk(CCmpCtrl *cc,I64 cmp_flags) else { Lex(cc); //skip ',' if (ARGT_REL8<=tmpo->ins[0].arg2<=ARGT_REL32) - PrsAsmArg(cc,&aotc->arg2,TRUE); + ParseAsmArg(cc,&aotc->arg2,TRUE); else - PrsAsmArg(cc,&aotc->arg2,FALSE); + ParseAsmArg(cc,&aotc->arg2,FALSE); } } } - PrsAsmInst(cc,tmpo,argcnt); + ParseAsmInst(cc,tmpo,argcnt); } else if (cc->hash_entry->type & HTT_EXPORT_SYS_SYM) { if (Btr(&cc->hash_entry->type,HTf_UNRESOLVED)) { if (cc->hash_entry->type & HTF_LOCAL) { diff --git a/src/Compiler/AsmInit.HC b/src/Compiler/AsmInit.HC index 7628b8a9..bbd2206b 100755 --- a/src/Compiler/AsmInit.HC +++ b/src/Compiler/AsmInit.HC @@ -77,7 +77,7 @@ U0 AsmHashLoad() i=LstMatch(cc->cur_str,"NONE\0R8\0R16\0R32\0R64\0SEG\0FSTK\0" "MM\0XMM\0OPCODE\0KEYWORD\0ASM_KEYWORD\0"); if (i<=0) - LexExcept(cc,"Unknown Stmt"); + LexExcept(cc,"Unknown Statement"); Lex(cc); //skip keyword if (cc->token!=TK_IDENT) LexExcept(cc,"Expecting identifier at "); @@ -196,7 +196,7 @@ U0 AsmHashLoad() CmpCtrlDel(cc); for (i=0;itype=HTT_INTERNAL_TYPE; tmpc->raw_type=tmpit->type; Bts(&tmpc->flags,Cf_INTERNAL_TYPE); @@ -205,5 +205,5 @@ U0 AsmHashLoad() HashAdd(tmpc,cmp.asm_hash); cmp.internal_types[tmpc->raw_type]=tmpc; } - zenith_task->hash_table->next=cmp.asm_hash; + zenith_task->hash_table->next=cmp.asm_hash; } diff --git a/src/Compiler/CExts.HC b/src/Compiler/CExts.HC index bea4d19e..10934fbc 100755 --- a/src/Compiler/CExts.HC +++ b/src/Compiler/CExts.HC @@ -21,23 +21,23 @@ extern U0 OptPass5(CCmpCtrl *cc); extern U0 OptPass6(CCmpCtrl *cc); extern I64 OptPass789A( CCmpCtrl *cc,COptReg *reg_offsets,U8 *buf,CDebugInfo **_dbg); -extern CHashClass *PrsClass( +extern CHashClass *ParseClass( CCmpCtrl *cc,I64 keyword,I64 fsp_flags,Bool is_extern); -extern CHashFun *PrsFunJoin( +extern CHashFun *ParseFunJoin( CCmpCtrl *cc,CHashClass *tmp_return,U8 *name,I64 fsp_flags); -extern I64 PrsKeyWord(CCmpCtrl *cc); -extern Bool PrsStmt(CCmpCtrl *cc,I64 try_cnt=0, +extern I64 ParseKeyWord(CCmpCtrl *cc); +extern Bool ParseStatement(CCmpCtrl *cc,I64 try_cnt=0, CCodeMisc *lb_break=NULL,I64 cmp_flags=CMPF_PRS_SEMICOLON); -extern U0 PrsStreamBlk(CCmpCtrl *cc); -extern CHashClass *PrsType(CCmpCtrl *cc,CHashClass **_tmpc1, +extern U0 ParseStreamBlk(CCmpCtrl *cc); +extern CHashClass *ParseType(CCmpCtrl *cc,CHashClass **_tmpc1, I64 *_mode,CMemberLst *tmpm,U8 **_ident,CHashFun **_fun_ptr, CHashExport **_tmpex,CArrayDim *tmpad,I64 fsp_flags); -extern I64 PrsUnaryModifier(CCmpCtrl *cc,CPrsStk *ps, +extern I64 ParseUnaryModifier(CCmpCtrl *cc,CPrsStk *ps, CMemberLst **_local_var,CArrayDim **_tmpad,I64 *unary_post_prec); -extern I64 PrsUnaryTerm( +extern I64 ParseUnaryTerm( CCmpCtrl *cc,CPrsStk *ps,CMemberLst **_local_var,CArrayDim **_tmpad, I64 *max_prec,I64 *unary_pre_prec,I64 *paren_prec); -extern U0 PrsVarInit2(CCmpCtrl *cc,U8 **_dst,CHashClass *tmpc, +extern U0 ParseVarInit2(CCmpCtrl *cc,U8 **_dst,CHashClass *tmpc, CArrayDim *tmpad,U8 *data_addr_rip,U8 **_base,Bool data_heap,I64 pass); _extern CMP_TEMPLATES U32 cmp_templates[1]; _extern CMP_TEMPLATES_DONT_POP U32 cmp_templates_dont_pop[1]; diff --git a/src/Compiler/CMain.HC b/src/Compiler/CMain.HC index 0d7ecc85..9f295a4c 100755 --- a/src/Compiler/CMain.HC +++ b/src/Compiler/CMain.HC @@ -1,4 +1,4 @@ -U8 *LexStmt2Bin(CCmpCtrl *cc,I64 *_type,I64 cmp_flags=0) +U8 *LexStatement2Bin(CCmpCtrl *cc,I64 *_type,I64 cmp_flags=0) {//Compile one cc stmt to bin code. I64 size,i,j,k,*res=INVALID_PTR; CCodeCtrl *tmpcbh; @@ -7,7 +7,7 @@ U8 *LexStmt2Bin(CCmpCtrl *cc,I64 *_type,I64 cmp_flags=0) if (cc->aot_depth==2) COCPush(cc); COCInit(cc); - if (!PrsStmt(cc,,,cmp_flags)) { + if (!ParseStatement(cc,,,cmp_flags)) { if (cc->coc.coc_head.next!=&cc->coc.coc_head) { cc->coc.coc_head.last->ic_flags&=~ICF_RES_NOT_USED; ICAdd(cc,IC_RETURN_VAL2,0,0); @@ -81,7 +81,7 @@ CAOT *CmpJoin(CCmpCtrl *cc,I64 cmp_flags,U8 *map_name=NULL,U8 mapfile_drv_let=0) cmp_flags|=CMPF_PRS_SEMICOLON; if (cc->flags&CCF_AOT_COMPILE) { while (cc->token!=TK_EOF) { - buf=LexStmt2Bin(cc,NULL,cmp_flags); + buf=LexStatement2Bin(cc,NULL,cmp_flags); if (buf!=INVALID_PTR) { tmpie=CAlloc(sizeof(CAOTImportExport)); tmpie->type=IET_MAIN; @@ -92,7 +92,7 @@ CAOT *CmpJoin(CCmpCtrl *cc,I64 cmp_flags,U8 *map_name=NULL,U8 mapfile_drv_let=0) break; } } else - PrsStmt(cc,,,cmp_flags); + ParseStatement(cc,,,cmp_flags); AOTGlblsResolve(cc,res); } catch { if (Fs->except_ch=='Compiler' && !(cmp_flags&CMPF_ASM_BLK)) { diff --git a/src/Compiler/Compiler.BIN b/src/Compiler/Compiler.BIN index bfb68509..1f7647fe 100755 Binary files a/src/Compiler/Compiler.BIN and b/src/Compiler/Compiler.BIN differ diff --git a/src/Compiler/Compiler.MAP b/src/Compiler/Compiler.MAP index 58a30265..e4346270 100755 --- a/src/Compiler/Compiler.MAP +++ b/src/Compiler/Compiler.MAP @@ -1,184 +1,184 @@ $LK,"LexPutPos",A="FL:::/Compiler/CExcept.HC,50",BI=1$ $LK,"ICAssignPostIncDec",A="FL:::/Compiler/BackB.HC,429",BI=2$ $LK,"CmpSetFloatOpPushPop",A="FL:::/Compiler/BackFA.HC,62",BI=3$ -$LK,"ICFCvt2",A="FL:::/Compiler/BackFA.HC,169",BI=4$ -$LK,"CmpMinTypePointed",A="FL:::/Compiler/OptLib.HC,528",BI=5$ -$LK,"CmpRawTypePointed",A="FL:::/Compiler/OptLib.HC,517",BI=6$ -$LK,"OptFixupBinaryOp1",A="FL:::/Compiler/OptLib.HC,96",BI=7$ -$LK,"OptFixupBinaryOp2",A="FL:::/Compiler/OptLib.HC,182",BI=8$ -$LK,"COCInit",A="FL:::/Compiler/PrsLib.HC,99",BI=9$ -$LK,"IsLexExpression2Bin",A="FL:::/Compiler/PrsExp.HC,1135",BI=10$ -$LK,"CSubSwitch",A="FL:::/Compiler/PrsStmt.HC,566"$ -$LK,"LexFilePop",A="FL:::/Compiler/Lex.HC,11",BI=11$ -$LK,"ExePutS",A="FL:::/Compiler/CMain.HC,571",BI=12$ -$LK,"PrsStaticInit",A="FL:::/Compiler/PrsVar.HC,215",BI=13$ +$LK,"ParseDotDotDot",A="FL:::/Compiler/ParseVar.HC,373",BI=4$ +$LK,"ICFCvt2",A="FL:::/Compiler/BackFA.HC,169",BI=5$ +$LK,"CmpMinTypePointed",A="FL:::/Compiler/OptLib.HC,528",BI=6$ +$LK,"CmpRawTypePointed",A="FL:::/Compiler/OptLib.HC,517",BI=7$ +$LK,"OptFixupBinaryOp1",A="FL:::/Compiler/OptLib.HC,96",BI=8$ +$LK,"OptFixupBinaryOp2",A="FL:::/Compiler/OptLib.HC,182",BI=9$ +$LK,"COCInit",A="FL:::/Compiler/ParseLib.HC,99",BI=10$ +$LK,"IsLexExpression2Bin",A="FL:::/Compiler/ParseExp.HC,1135",BI=11$ +$LK,"CSubSwitch",A="FL:::/Compiler/ParseStatement.HC,566"$ +$LK,"LexFilePop",A="FL:::/Compiler/Lex.HC,11",BI=12$ +$LK,"ExePutS",A="FL:::/Compiler/CMain.HC,571",BI=13$ $LK,"LexPutLine",A="FL:::/Compiler/CExcept.HC,22",BI=14$ -$LK,"PrsKeyWord",A="FL:::/Compiler/PrsLib.HC,31",BI=15$ -$LK,"AsmLineLst",A="FL:::/Compiler/AsmLib.HC,147",BI=16$ -$LK,"ICOpSizeRex",A="FL:::/Compiler/BackLib.HC,28",BI=17$ -$LK,"CVI2",A="FL:::/Compiler/PrsVar.HC,117"$ -$LK,"ICU8",A="FL:::/Compiler/BackLib.HC,17",BI=18$ -$LK,"AsmStoreNum",A="FL:::/Compiler/Asm.HC,268",BI=19$ -$LK,"OptPass012",A="FL:::/Compiler/OptPass012.HC,23",BI=20$ -$LK,"MemberLstSize",A="FL:::/Compiler/LexLib.HC,221",BI=21$ +$LK,"AsmLineLst",A="FL:::/Compiler/AsmLib.HC,147",BI=15$ +$LK,"ICOpSizeRex",A="FL:::/Compiler/BackLib.HC,28",BI=16$ +$LK,"CVI2",A="FL:::/Compiler/ParseVar.HC,117"$ +$LK,"ICU8",A="FL:::/Compiler/BackLib.HC,17",BI=17$ +$LK,"AsmStoreNum",A="FL:::/Compiler/Asm.HC,268",BI=18$ +$LK,"OptPass012",A="FL:::/Compiler/OptPass012.HC,23",BI=19$ +$LK,"MemberLstSize",A="FL:::/Compiler/LexLib.HC,221",BI=20$ +$LK,"ParseStaticInit",A="FL:::/Compiler/ParseVar.HC,215",BI=21$ $LK,"ICQueueIns",A="FL:::/Compiler/BackC.HC,354",BI=22$ $LK,"ICAndBranch",A="FL:::/Compiler/BackC.HC,1",BI=23$ -$LK,"U",A="FL:::/Compiler/UAsm.HC,653",BI=24$ -$LK,"ICQueueRem",A="FL:::/Compiler/BackC.HC,402",BI=25$ +$LK,"ParseAsmInst",A="FL:::/Compiler/Asm.HC,395",BI=24$ +$LK,"U",A="FL:::/Compiler/UAsm.HC,653",BI=25$ +$LK,"ICQueueRem",A="FL:::/Compiler/BackC.HC,402",BI=26$ $LK,"LastFun",A="FL:::/Compiler/CMisc.HC,48"$ -$LK,"OptLead1",A="FL:::/Compiler/OptLib.HC,73",BI=26$ -$LK,"CmpNoteFloatOp",A="FL:::/Compiler/BackFA.HC,6",BI=27$ -$LK,"AOTGlblsResolve",A="FL:::/Compiler/AsmResolve.HC,77",BI=28$ -$LK,"ExePutS2",A="FL:::/Compiler/CMain.HC,631",BI=29$ -$LK,"HashEntrySize",A="FL:::/Compiler/CHash.HC,1",BI=30$ -$LK,"COCPush",A="FL:::/Compiler/PrsLib.HC,107",BI=31$ +$LK,"OptLead1",A="FL:::/Compiler/OptLib.HC,73",BI=27$ +$LK,"CmpNoteFloatOp",A="FL:::/Compiler/BackFA.HC,6",BI=28$ +$LK,"AOTGlblsResolve",A="FL:::/Compiler/AsmResolve.HC,77",BI=29$ +$LK,"ExePutS2",A="FL:::/Compiler/CMain.HC,631",BI=30$ +$LK,"HashEntrySize",A="FL:::/Compiler/CHash.HC,1",BI=31$ +$LK,"COCPush",A="FL:::/Compiler/ParseLib.HC,107",BI=32$ $LK,"SLASH_OP_DEC",A="FL:::/Compiler/BackLib.HC,259"$ $LK,"MODR_SIB_D32_INDIRECT_REG",A="FL:::/Compiler/BackLib.HC,132"$ -$LK,"ICPushRegs",A="FL:::/Compiler/BackLib.HC,350",BI=32$ -$LK,"PE_POP_HIGHER",A="FL:::/Compiler/PrsExp.HC,10"$ +$LK,"ICPushRegs",A="FL:::/Compiler/BackLib.HC,350",BI=33$ +$LK,"PE_POP_HIGHER",A="FL:::/Compiler/ParseExp.HC,10"$ $LK,"SLASH_OP_FLD",A="FL:::/Compiler/BackLib.HC,277"$ -$LK,"ICU32",A="FL:::/Compiler/BackLib.HC,47",BI=33$ -$LK,"ICU24",A="FL:::/Compiler/BackLib.HC,41",BI=34$ -$LK,"ICU16",A="FL:::/Compiler/BackLib.HC,35",BI=35$ +$LK,"ICU32",A="FL:::/Compiler/BackLib.HC,47",BI=34$ +$LK,"ICU24",A="FL:::/Compiler/BackLib.HC,41",BI=35$ +$LK,"ICU16",A="FL:::/Compiler/BackLib.HC,35",BI=36$ $LK,"SLASH_OP_DIV",A="FL:::/Compiler/BackLib.HC,266"$ -$LK,"CmpFillTables",A="FL:::/Compiler/CInit.HC,239",BI=36$ -$LK,"AOTStoreCodeU32",A="FL:::/Compiler/AsmLib.HC,30",BI=37$ -$LK,"ICU64",A="FL:::/Compiler/BackLib.HC,53",BI=38$ +$LK,"CmpFillTables",A="FL:::/Compiler/CInit.HC,239",BI=37$ +$LK,"AOTStoreCodeU32",A="FL:::/Compiler/AsmLib.HC,30",BI=38$ +$LK,"ICU64",A="FL:::/Compiler/BackLib.HC,53",BI=39$ $LK,"SLASH_OP_INC",A="FL:::/Compiler/BackLib.HC,258"$ -$LK,"AOTStoreCodeU64",A="FL:::/Compiler/AsmLib.HC,68",BI=39$ -$LK,"LexPopNoRestore",A="FL:::/Compiler/LexLib.HC,38",BI=40$ -$LK,"ExePrint",A="FL:::/Compiler/CMain.HC,605",BI=41$ +$LK,"AOTStoreCodeU64",A="FL:::/Compiler/AsmLib.HC,68",BI=40$ +$LK,"LexPopNoRestore",A="FL:::/Compiler/LexLib.HC,38",BI=41$ +$LK,"ExePrint",A="FL:::/Compiler/CMain.HC,605",BI=42$ $LK,"SLASH_OP_NEG",A="FL:::/Compiler/BackLib.HC,261"$ -$LK,"PrsVarLst",A="FL:::/Compiler/PrsVar.HC,408",BI=42$ -$LK,"PrsAsmDefine",A="FL:::/Compiler/Asm.HC,814",BI=43$ -$LK,"PrsAddOp",A="FL:::/Compiler/PrsExp.HC,15",BI=44$ -$LK,"LexWarn",A="FL:::/Compiler/CExcept.HC,65",BI=45$ -$LK,"PE_POP_ALL1",A="FL:::/Compiler/PrsExp.HC,12"$ -$LK,"PE_POP_ALL2",A="FL:::/Compiler/PrsExp.HC,13"$ -$LK,"COCAppend",A="FL:::/Compiler/PrsLib.HC,126",BI=46$ -$LK,"LexFilePush",A="FL:::/Compiler/Lex.HC,1",BI=47$ -$LK,"PrsUnaryModifier",A="FL:::/Compiler/PrsExp.HC,960",BI=48$ -$LK,"OptFixupUnaryOp",A="FL:::/Compiler/OptLib.HC,196",BI=49$ -$LK,"LexPush",A="FL:::/Compiler/LexLib.HC,12",BI=50$ +$LK,"LexWarn",A="FL:::/Compiler/CExcept.HC,65",BI=43$ +$LK,"PE_POP_ALL1",A="FL:::/Compiler/ParseExp.HC,12"$ +$LK,"PE_POP_ALL2",A="FL:::/Compiler/ParseExp.HC,13"$ +$LK,"COCAppend",A="FL:::/Compiler/ParseLib.HC,126",BI=44$ +$LK,"LexFilePush",A="FL:::/Compiler/Lex.HC,1",BI=45$ +$LK,"ParseAsmDefine",A="FL:::/Compiler/Asm.HC,814",BI=46$ +$LK,"ParseFunNew",A="FL:::/Compiler/ParseLib.HC,62",BI=47$ +$LK,"OptFixupUnaryOp",A="FL:::/Compiler/OptLib.HC,196",BI=48$ +$LK,"LexPush",A="FL:::/Compiler/LexLib.HC,12",BI=49$ $LK,"SLASH_OP_MOV",A="FL:::/Compiler/BackLib.HC,267"$ -$LK,"ICPopRegs",A="FL:::/Compiler/BackLib.HC,391",BI=51$ +$LK,"ICPopRegs",A="FL:::/Compiler/BackLib.HC,391",BI=50$ $LK,"SLASH_OP_MUL",A="FL:::/Compiler/BackLib.HC,264"$ $LK,"SLASH_OP_NOT",A="FL:::/Compiler/BackLib.HC,260"$ $LK,"SLASH_OP_POP",A="FL:::/Compiler/BackLib.HC,270"$ -$LK,"ICFOp",A="FL:::/Compiler/BackFA.HC,339",BI=52$ +$LK,"ICFOp",A="FL:::/Compiler/BackFA.HC,339",BI=51$ $LK,"CN_A1",A="FL:::/Compiler/BackFA.HC,2"$ $LK,"CN_A2",A="FL:::/Compiler/BackFA.HC,1"$ -$LK,"LexExpressionF64",A="FL:::/Compiler/PrsExp.HC,1154",BI=53$ -$LK,"ICAdd",A="FL:::/Compiler/PrsLib.HC,79",BI=54$ -$LK,"CmpRawType",A="FL:::/Compiler/OptLib.HC,508",BI=55$ -$LK,"ICFOpEqu",A="FL:::/Compiler/BackFB.HC,1",BI=56$ -$LK,"LexExpressionI64",A="FL:::/Compiler/PrsExp.HC,1140",BI=57$ -$LK,"LexExpression",A="FL:::/Compiler/PrsExp.HC,1168",BI=58$ -$LK,"PrsExpression",A="FL:::/Compiler/PrsExp.HC,264",BI=59$ -$LK,"PrsClassNew",A="FL:::/Compiler/PrsLib.HC,40",BI=60$ -$LK,"LexInStr",A="FL:::/Compiler/Lex.HC,367",BI=61$ +$LK,"LexExpressionF64",A="FL:::/Compiler/ParseExp.HC,1154",BI=52$ +$LK,"ICAdd",A="FL:::/Compiler/ParseLib.HC,79",BI=53$ +$LK,"CmpRawType",A="FL:::/Compiler/OptLib.HC,508",BI=54$ +$LK,"ICFOpEqu",A="FL:::/Compiler/BackFB.HC,1",BI=55$ +$LK,"LexExpressionI64",A="FL:::/Compiler/ParseExp.HC,1140",BI=56$ +$LK,"LexExpression",A="FL:::/Compiler/ParseExp.HC,1168",BI=57$ +$LK,"LexInStr",A="FL:::/Compiler/Lex.HC,367",BI=58$ $LK,"internal_types_table",A="FL:::/Compiler/CInit.HC,6"$ -$LK,"ICQueueInsRev",A="FL:::/Compiler/BackC.HC,378",BI=62$ +$LK,"ICQueueInsRev",A="FL:::/Compiler/BackC.HC,378",BI=59$ $LK,"CN_INST",A="FL:::/Compiler/BackFA.HC,3"$ -$LK,"OptPass3",A="FL:::/Compiler/OptPass3.HC,1",BI=63$ -$LK,"OptPass4",A="FL:::/Compiler/OptPass4.HC,133",BI=64$ -$LK,"OptPass5",A="FL:::/Compiler/OptPass5.HC,1",BI=65$ -$LK,"OptPass6",A="FL:::/Compiler/OptPass6.HC,96",BI=66$ +$LK,"ParseClassNew",A="FL:::/Compiler/ParseLib.HC,40",BI=60$ +$LK,"OptPass3",A="FL:::/Compiler/OptPass3.HC,1",BI=61$ +$LK,"OptPass4",A="FL:::/Compiler/OptPass4.HC,133",BI=62$ +$LK,"OptPass5",A="FL:::/Compiler/OptPass5.HC,1",BI=63$ +$LK,"OptPass6",A="FL:::/Compiler/OptPass6.HC,96",BI=64$ $LK,"MODR_REG",A="FL:::/Compiler/BackLib.HC,126"$ -$LK,"Echo",A="FL:::/Compiler/CMisc.HC,63",BI=67$ -$LK,"PrsGlblVarLst",A="FL:::/Compiler/PrsStmt.HC,209",BI=68$ -$LK,"ICQueueInit",A="FL:::/Compiler/BackC.HC,340",BI=69$ -$LK,"ICCmp",A="FL:::/Compiler/BackB.HC,102",BI=70$ -$LK,"ICAddRSP",A="FL:::/Compiler/BackLib.HC,59",BI=71$ -$LK,"ICDiv",A="FL:::/Compiler/BackA.HC,355",BI=72$ -$LK,"ICDeref",A="FL:::/Compiler/BackLib.HC,693",BI=73$ -$LK,"ICLea",A="FL:::/Compiler/BackLib.HC,661",BI=74$ -$LK,"CmpBuf",A="FL:::/Compiler/CMain.HC,157",BI=75$ +$LK,"Echo",A="FL:::/Compiler/CMisc.HC,63",BI=65$ +$LK,"ICQueueInit",A="FL:::/Compiler/BackC.HC,340",BI=66$ +$LK,"ICCmp",A="FL:::/Compiler/BackB.HC,102",BI=67$ +$LK,"ICAddRSP",A="FL:::/Compiler/BackLib.HC,59",BI=68$ +$LK,"ICDiv",A="FL:::/Compiler/BackA.HC,355",BI=69$ +$LK,"ICDeref",A="FL:::/Compiler/BackLib.HC,693",BI=70$ +$LK,"ParseNoWarn",A="FL:::/Compiler/ParseStatement.HC,791",BI=71$ +$LK,"ICLea",A="FL:::/Compiler/BackLib.HC,661",BI=72$ +$LK,"ParseExpression",A="FL:::/Compiler/ParseExp.HC,264",BI=73$ +$LK,"CmpBuf",A="FL:::/Compiler/CMain.HC,157",BI=74$ $LK,"CMP_TEMPLATES_DONT_PUSH_POP",A="FL:::/Compiler/Templates.HC,385"$ -$LK,"ICAddEct",A="FL:::/Compiler/BackA.HC,1",BI=76$ -$LK,"ICToF64",A="FL:::/Compiler/BackB.HC,283",BI=77$ -$LK,"PrsBinFile",A="FL:::/Compiler/Asm.HC,888",BI=78$ -$LK,"HashTableSize2",A="FL:::/Compiler/CHash.HC,72",BI=79$ -$LK,"HashEntrySize2",A="FL:::/Compiler/CHash.HC,33",BI=80$ -$LK,"Ui",A="FL:::/Compiler/UAsm.HC,245",BI=81$ -$LK,"ICSlashOp",A="FL:::/Compiler/BackLib.HC,282",BI=82$ -$LK,"OptBrZero",A="FL:::/Compiler/OptLib.HC,230",BI=83$ -$LK,"Un",A="FL:::/Compiler/UAsm.HC,668",BI=84$ -$LK,"PrsSizeOf",A="FL:::/Compiler/PrsExp.HC,303",BI=85$ -$LK,"ICToI64",A="FL:::/Compiler/BackB.HC,277",BI=86$ -$LK,"ICMod",A="FL:::/Compiler/BackA.HC,425",BI=87$ -$LK,"OptSetNOP1",A="FL:::/Compiler/OptLib.HC,17",BI=88$ -$LK,"OptPass789A",A="FL:::/Compiler/OptPass789A.HC,1",BI=89$ -$LK,"OptSetNOP2",A="FL:::/Compiler/OptLib.HC,25",BI=90$ +$LK,"ICAddEct",A="FL:::/Compiler/BackA.HC,1",BI=75$ +$LK,"ICToF64",A="FL:::/Compiler/BackB.HC,283",BI=76$ +$LK,"HashTableSize2",A="FL:::/Compiler/CHash.HC,72",BI=77$ +$LK,"HashEntrySize2",A="FL:::/Compiler/CHash.HC,33",BI=78$ +$LK,"Ui",A="FL:::/Compiler/UAsm.HC,245",BI=79$ +$LK,"ICSlashOp",A="FL:::/Compiler/BackLib.HC,282",BI=80$ +$LK,"ParseGlblVarLst",A="FL:::/Compiler/ParseStatement.HC,209",BI=81$ +$LK,"OptBrZero",A="FL:::/Compiler/OptLib.HC,230",BI=82$ +$LK,"Un",A="FL:::/Compiler/UAsm.HC,668",BI=83$ +$LK,"ICToI64",A="FL:::/Compiler/BackB.HC,277",BI=84$ +$LK,"ICMod",A="FL:::/Compiler/BackA.HC,425",BI=85$ +$LK,"OptSetNOP1",A="FL:::/Compiler/OptLib.HC,17",BI=86$ +$LK,"OptPass789A",A="FL:::/Compiler/OptPass789A.HC,1",BI=87$ +$LK,"OptSetNOP2",A="FL:::/Compiler/OptLib.HC,25",BI=88$ $LK,"FBO1_F64",A="FL:::/Compiler/OptLib.HC,94"$ -$LK,"ICXorEqu",A="FL:::/Compiler/BackC.HC,581",BI=91$ -$LK,"ICToUpper",A="FL:::/Compiler/BackB.HC,266",BI=92$ -$LK,"AsmLexExpression",A="FL:::/Compiler/AsmLib.HC,127",BI=93$ -$LK,"ICMov",A="FL:::/Compiler/BackLib.HC,445",BI=94$ -$LK,"ICNot",A="FL:::/Compiler/BackB.HC,10",BI=95$ -$LK,"ICMul",A="FL:::/Compiler/BackA.HC,224",BI=96$ -$LK,"ICRex",A="FL:::/Compiler/BackLib.HC,22",BI=97$ -$LK,"ICPop",A="FL:::/Compiler/BackLib.HC,363",BI=98$ +$LK,"ICXorEqu",A="FL:::/Compiler/BackC.HC,581",BI=89$ +$LK,"ICToUpper",A="FL:::/Compiler/BackB.HC,266",BI=90$ +$LK,"AsmLexExpression",A="FL:::/Compiler/AsmLib.HC,127",BI=91$ +$LK,"ParseAddOp",A="FL:::/Compiler/ParseExp.HC,15",BI=92$ +$LK,"ICMov",A="FL:::/Compiler/BackLib.HC,445",BI=93$ +$LK,"ICNot",A="FL:::/Compiler/BackB.HC,10",BI=94$ +$LK,"ICMul",A="FL:::/Compiler/BackA.HC,224",BI=95$ +$LK,"ICRex",A="FL:::/Compiler/BackLib.HC,22",BI=96$ +$LK,"ICPop",A="FL:::/Compiler/BackLib.HC,363",BI=97$ $LK,"SLASH_OP_FADD",A="FL:::/Compiler/BackLib.HC,271"$ $LK,"MODR_RIP_REL",A="FL:::/Compiler/BackLib.HC,133"$ -$LK,"LexStmt2Bin",A="FL:::/Compiler/CMain.HC,1",BI=99$ -$LK,"ICSub",A="FL:::/Compiler/BackA.HC,166",BI=100$ -$LK,"COCFloatConstFind",A="FL:::/Compiler/PrsLib.HC,164",BI=101$ -$LK,"ICPut",A="FL:::/Compiler/CExcept.HC,184",BI=102$ -$LK,"PrsArrayDims",A="FL:::/Compiler/PrsVar.HC,247",BI=103$ -$LK,"ICSqr",A="FL:::/Compiler/BackC.HC,456",BI=104$ +$LK,"ICSub",A="FL:::/Compiler/BackA.HC,166",BI=98$ +$LK,"COCFloatConstFind",A="FL:::/Compiler/ParseLib.HC,164",BI=99$ +$LK,"ICPut",A="FL:::/Compiler/CExcept.HC,184",BI=100$ +$LK,"ICSqr",A="FL:::/Compiler/BackC.HC,456",BI=101$ $LK,"FBO1_NOT_CONST",A="FL:::/Compiler/OptLib.HC,92"$ $LK,"CMP_TEMPLATES_DONT_POP",A="FL:::/Compiler/Templates.HC,173"$ -$LK,"PrsClass",A="FL:::/Compiler/PrsStmt.HC,1",BI=105$ $LK,"SLASH_OP_MOV_IMM",A="FL:::/Compiler/BackLib.HC,268"$ -$LK,"MemberMetaData",A="FL:::/Compiler/LexLib.HC,45",BI=106$ -$LK,"ICSwitch",A="FL:::/Compiler/BackC.HC,602",BI=107$ -$LK,"OptBrNotZero",A="FL:::/Compiler/OptLib.HC,357",BI=108$ -$LK,"LexPutToken",A="FL:::/Compiler/CExcept.HC,1",BI=109$ +$LK,"MemberMetaData",A="FL:::/Compiler/LexLib.HC,45",BI=102$ +$LK,"ICSwitch",A="FL:::/Compiler/BackC.HC,602",BI=103$ +$LK,"ParseArrayDims",A="FL:::/Compiler/ParseVar.HC,247",BI=104$ +$LK,"OptBrNotZero",A="FL:::/Compiler/OptLib.HC,357",BI=105$ +$LK,"LexPutToken",A="FL:::/Compiler/CExcept.HC,1",BI=106$ $LK,"SLASH_OP_FDIV",A="FL:::/Compiler/BackLib.HC,275"$ -$LK,"AsmHashLoad",A="FL:::/Compiler/AsmInit.HC,50",BI=110$ -$LK,"UAsmHashLoad",A="FL:::/Compiler/UAsm.HC,195",BI=111$ -$LK,"UnusedExternWarning",A="FL:::/Compiler/CExcept.HC,104",BI=112$ +$LK,"ParseIf",A="FL:::/Compiler/ParseStatement.HC,459",BI=107$ +$LK,"AsmHashLoad",A="FL:::/Compiler/AsmInit.HC,50",BI=108$ +$LK,"ParseFunCall",A="FL:::/Compiler/ParseExp.HC,383",BI=109$ +$LK,"UAsmHashLoad",A="FL:::/Compiler/UAsm.HC,195",BI=110$ +$LK,"UnusedExternWarning",A="FL:::/Compiler/CExcept.HC,104",BI=111$ $LK,"SLASH_OP_FILD",A="FL:::/Compiler/BackLib.HC,280"$ -$LK,"ICXorXor",A="FL:::/Compiler/BackB.HC,75",BI=113$ -$LK,"PrsTryBlk",A="FL:::/Compiler/PrsStmt.HC,842",BI=114$ -$LK,"CInit",A="FL:::/Compiler/CMain.HC,691",BI=115$ -$LK,"MemberMetaFind",A="FL:::/Compiler/LexLib.HC,56",BI=116$ -$LK,"ExePrint2",A="FL:::/Compiler/CMain.HC,648",BI=117$ +$LK,"ICXorXor",A="FL:::/Compiler/BackB.HC,75",BI=112$ +$LK,"CInit",A="FL:::/Compiler/CMain.HC,691",BI=113$ +$LK,"MemberMetaFind",A="FL:::/Compiler/LexLib.HC,56",BI=114$ +$LK,"ExePrint2",A="FL:::/Compiler/CMain.HC,648",BI=115$ $LK,"FBO1_INT",A="FL:::/Compiler/OptLib.HC,93"$ -$LK,"PE_DO_UNARY_OP",A="FL:::/Compiler/PrsExp.HC,8"$ -$LK,"PrsVarInit",A="FL:::/Compiler/PrsVar.HC,1",BI=118$ -$LK,"ICOrEqu",A="FL:::/Compiler/BackC.HC,560",BI=119$ -$LK,"ICModr1",A="FL:::/Compiler/BackLib.HC,136",BI=120$ -$LK,"ICModr2",A="FL:::/Compiler/BackLib.HC,214",BI=121$ +$LK,"PE_DO_UNARY_OP",A="FL:::/Compiler/ParseExp.HC,8"$ +$LK,"ICOrEqu",A="FL:::/Compiler/BackC.HC,560",BI=116$ +$LK,"ICModr1",A="FL:::/Compiler/BackLib.HC,136",BI=117$ +$LK,"ICModr2",A="FL:::/Compiler/BackLib.HC,214",BI=118$ $LK,"SLASH_OP_FMUL",A="FL:::/Compiler/BackLib.HC,274"$ -$LK,"ICPreIncDec",A="FL:::/Compiler/BackB.HC,304",BI=122$ -$LK,"PrsUnaryTerm",A="FL:::/Compiler/PrsExp.HC,593",BI=123$ -$LK,"MemberLstDel",A="FL:::/Compiler/LexLib.HC,183",BI=124$ +$LK,"ICPreIncDec",A="FL:::/Compiler/BackB.HC,304",BI=119$ +$LK,"MemberLstDel",A="FL:::/Compiler/LexLib.HC,183",BI=120$ $LK,"SLASH_OP_FSUB",A="FL:::/Compiler/BackLib.HC,272"$ -$LK,"ICAndAnd",A="FL:::/Compiler/BackB.HC,30",BI=125$ -$LK,"InstEntriesCompare",A="FL:::/Compiler/UAsm.HC,1",BI=126$ +$LK,"ICAndAnd",A="FL:::/Compiler/BackB.HC,30",BI=121$ +$LK,"InstEntriesCompare",A="FL:::/Compiler/UAsm.HC,1",BI=122$ $LK,"SLASH_OP_IMUL",A="FL:::/Compiler/BackLib.HC,265"$ -$LK,"MemberLstCmp",A="FL:::/Compiler/LexLib.HC,157",BI=127$ +$LK,"MemberLstCmp",A="FL:::/Compiler/LexLib.HC,157",BI=123$ +$LK,"ParseUnaryTerm",A="FL:::/Compiler/ParseExp.HC,593",BI=124$ +$LK,"ParseVarLst",A="FL:::/Compiler/ParseVar.HC,408",BI=125$ $LK,"SLASH_OP_FSTP",A="FL:::/Compiler/BackLib.HC,278"$ -$LK,"COCDel",A="FL:::/Compiler/PrsLib.HC,186",BI=128$ -$LK,"PE_UNARY_TERM1",A="FL:::/Compiler/PrsExp.HC,1"$ -$LK,"ICFAdd",A="FL:::/Compiler/BackFB.HC,515",BI=129$ -$LK,"PE_UNARY_TERM2",A="FL:::/Compiler/PrsExp.HC,2"$ -$LK,"CmdLinePmt",A="FL:::/Compiler/CMisc.HC,127",BI=130$ -$LK,"AsmMakeArgMask",A="FL:::/Compiler/Asm.HC,177",BI=131$ -$LK,"COCHeaderPut",A="FL:::/Compiler/PrsLib.HC,229",BI=132$ -$LK,"PrsGlblInit",A="FL:::/Compiler/PrsVar.HC,206",BI=133$ -$LK,"ICAndEqu",A="FL:::/Compiler/BackC.HC,539",BI=134$ -$LK,"LexD2I32",A="FL:::/Compiler/CMisc.HC,91",BI=135$ -$LK,"MemberLstNew",A="FL:::/Compiler/LexLib.HC,150",BI=136$ -$LK,"LexD3I32",A="FL:::/Compiler/CMisc.HC,107",BI=137$ -$LK,"OptClassFwd",A="FL:::/Compiler/OptLib.HC,9",BI=138$ -$LK,"ICFCmp",A="FL:::/Compiler/BackFA.HC,519",BI=139$ -$LK,"PrsSwitch",A="FL:::/Compiler/PrsStmt.HC,578",BI=140$ +$LK,"COCDel",A="FL:::/Compiler/ParseLib.HC,186",BI=126$ +$LK,"PE_UNARY_TERM1",A="FL:::/Compiler/ParseExp.HC,1"$ +$LK,"ICFAdd",A="FL:::/Compiler/BackFB.HC,515",BI=127$ +$LK,"PE_UNARY_TERM2",A="FL:::/Compiler/ParseExp.HC,2"$ +$LK,"CmdLinePmt",A="FL:::/Compiler/CMisc.HC,127",BI=128$ +$LK,"AsmMakeArgMask",A="FL:::/Compiler/Asm.HC,177",BI=129$ +$LK,"COCHeaderPut",A="FL:::/Compiler/ParseLib.HC,229",BI=130$ +$LK,"ICAndEqu",A="FL:::/Compiler/BackC.HC,539",BI=131$ +$LK,"LexD2I32",A="FL:::/Compiler/CMisc.HC,91",BI=132$ +$LK,"ParseClass",A="FL:::/Compiler/ParseStatement.HC,1",BI=133$ +$LK,"MemberLstNew",A="FL:::/Compiler/LexLib.HC,150",BI=134$ +$LK,"ParseUnaryModifier",A="FL:::/Compiler/ParseExp.HC,960",BI=135$ +$LK,"ParseGlblInit",A="FL:::/Compiler/ParseVar.HC,206",BI=136$ +$LK,"ParseFunJoin",A="FL:::/Compiler/ParseStatement.HC,62",BI=137$ +$LK,"LexD3I32",A="FL:::/Compiler/CMisc.HC,107",BI=138$ +$LK,"OptClassFwd",A="FL:::/Compiler/OptLib.HC,9",BI=139$ +$LK,"ICFCmp",A="FL:::/Compiler/BackFA.HC,519",BI=140$ $LK,"ICFDiv",A="FL:::/Compiler/BackFB.HC,504",BI=141$ $LK,"AOTStoreCodeU8At",A="FL:::/Compiler/AsmLib.HC,106",BI=142$ -$LK,"PE_PUSH_LOWER",A="FL:::/Compiler/PrsExp.HC,11"$ +$LK,"PE_PUSH_LOWER",A="FL:::/Compiler/ParseExp.HC,11"$ $LK,"OptPass6Lag",A="FL:::/Compiler/OptPass6.HC,28",BI=143$ $LK,"OptLag1",A="FL:::/Compiler/OptLib.HC,51",BI=144$ $LK,"OptLag2",A="FL:::/Compiler/OptLib.HC,62",BI=145$ @@ -186,41 +186,41 @@ $LK,"StreamPrint",A="FL:::/Compiler/CMisc.HC,68",BI=146$ $LK,"_LAST_FUN",A="FL:::/Compiler/CMisc.HC,12"$ $LK,"ICFCvt",A="FL:::/Compiler/BackFA.HC,123",BI=147$ $LK,"StreamDir",A="FL:::/Compiler/CMisc.HC,82",BI=148$ -$LK,"PrsOffsetOf",A="FL:::/Compiler/PrsExp.HC,353",BI=149$ -$LK,"GetOption",A="FL:::/Compiler/CMisc.HC,6",BI=150$ -$LK,"PrsDoWhile",A="FL:::/Compiler/PrsStmt.HC,506",BI=151$ -$LK,"ICShift",A="FL:::/Compiler/BackA.HC,573",BI=152$ -$LK,"ICFMod",A="FL:::/Compiler/BackFA.HC,242",BI=153$ -$LK,"COCPop",A="FL:::/Compiler/PrsLib.HC,121",BI=154$ -$LK,"PrsExpression2",A="FL:::/Compiler/PrsExp.HC,65",BI=155$ +$LK,"GetOption",A="FL:::/Compiler/CMisc.HC,6",BI=149$ +$LK,"LexStatement2Bin",A="FL:::/Compiler/CMain.HC,1",BI=150$ +$LK,"ICShift",A="FL:::/Compiler/BackA.HC,573",BI=151$ +$LK,"ICFMod",A="FL:::/Compiler/BackFA.HC,242",BI=152$ +$LK,"COCPop",A="FL:::/Compiler/ParseLib.HC,121",BI=153$ +$LK,"ParseOffsetOf",A="FL:::/Compiler/ParseExp.HC,353",BI=154$ $LK,"SLASH_OP_PUSH",A="FL:::/Compiler/BackLib.HC,269"$ -$LK,"PE_DEREFERENCE",A="FL:::/Compiler/PrsExp.HC,5"$ -$LK,"LexPopRestore",A="FL:::/Compiler/LexLib.HC,23",BI=156$ -$LK,"ICUnaries",A="FL:::/Compiler/BackB.HC,1",BI=157$ -$LK,"ICFMul",A="FL:::/Compiler/BackFB.HC,488",BI=158$ -$LK,"ICShiftEqu",A="FL:::/Compiler/BackA.HC,603",BI=159$ -$LK,"LexExpression2Bin",A="FL:::/Compiler/PrsExp.HC,1117",BI=160$ -$LK,"ICFPow",A="FL:::/Compiler/BackFA.HC,266",BI=161$ -$LK,"MapFileWrite",A="FL:::/Compiler/CHash.HC,90",BI=162$ -$LK,"ICFSub",A="FL:::/Compiler/BackFB.HC,551",BI=163$ +$LK,"PE_DEREFERENCE",A="FL:::/Compiler/ParseExp.HC,5"$ +$LK,"LexPopRestore",A="FL:::/Compiler/LexLib.HC,23",BI=155$ +$LK,"ICUnaries",A="FL:::/Compiler/BackB.HC,1",BI=156$ +$LK,"ICFMul",A="FL:::/Compiler/BackFB.HC,488",BI=157$ +$LK,"ICShiftEqu",A="FL:::/Compiler/BackA.HC,603",BI=158$ +$LK,"LexExpression2Bin",A="FL:::/Compiler/ParseExp.HC,1117",BI=159$ +$LK,"ICFPow",A="FL:::/Compiler/BackFA.HC,266",BI=160$ +$LK,"MapFileWrite",A="FL:::/Compiler/CHash.HC,90",BI=161$ +$LK,"ICFSub",A="FL:::/Compiler/BackFB.HC,551",BI=162$ +$LK,"ParseSizeOf",A="FL:::/Compiler/ParseExp.HC,303",BI=163$ $LK,"ICFModEqu",A="FL:::/Compiler/BackFA.HC,549",BI=164$ $LK,"CmpF1PushPop",A="FL:::/Compiler/OptLib.HC,535",BI=165$ $LK,"OptFree",A="FL:::/Compiler/OptLib.HC,33",BI=166$ $LK,"CMP_TEMPLATES_DONT_PUSH2",A="FL:::/Compiler/Templates.HC,447"$ +$LK,"ParseKeyWord",A="FL:::/Compiler/ParseLib.HC,31",BI=167$ $LK,"CInternalType",A="FL:::/Compiler/CInit.HC,3"$ -$LK,"LexDollar",A="FL:::/Compiler/Lex.HC,93",BI=167$ -$LK,"AsmUnresolvedAdd",A="FL:::/Compiler/AsmResolve.HC,189",BI=168$ -$LK,"AOTStoreCodeU8",A="FL:::/Compiler/AsmLib.HC,1",BI=169$ -$LK,"ICBitOps",A="FL:::/Compiler/BackB.HC,202",BI=170$ +$LK,"LexDollar",A="FL:::/Compiler/Lex.HC,93",BI=168$ +$LK,"AsmUnresolvedAdd",A="FL:::/Compiler/AsmResolve.HC,189",BI=169$ +$LK,"AOTStoreCodeU8",A="FL:::/Compiler/AsmLib.HC,1",BI=170$ +$LK,"ParseExpression2",A="FL:::/Compiler/ParseExp.HC,65",BI=171$ +$LK,"ICBitOps",A="FL:::/Compiler/BackB.HC,202",BI=172$ $LK,"lex_zeros",A="FL:::/Compiler/Lex.HC,91"$ -$LK,"ClassMemberLstDel",A="FL:::/Compiler/LexLib.HC,209",BI=171$ -$LK,"CSwitchCase",A="FL:::/Compiler/PrsStmt.HC,571"$ -$LK,"AsmResolve",A="FL:::/Compiler/AsmResolve.HC,1",BI=172$ -$LK,"PrsAsmInst",A="FL:::/Compiler/Asm.HC,395",BI=173$ -$LK,"COCCompile",A="FL:::/Compiler/PrsLib.HC,249",BI=174$ -$LK,"RunFile2",A="FL:::/Compiler/CMain.HC,667",BI=175$ -$LK,"Cmp",A="FL:::/Compiler/CMain.HC,419",BI=176$ -$LK,"PrsPush2",A="FL:::/Compiler/PrsLib.HC,11",BI=177$ +$LK,"ClassMemberLstDel",A="FL:::/Compiler/LexLib.HC,209",BI=173$ +$LK,"CSwitchCase",A="FL:::/Compiler/ParseStatement.HC,571"$ +$LK,"AsmResolve",A="FL:::/Compiler/AsmResolve.HC,1",BI=174$ +$LK,"COCCompile",A="FL:::/Compiler/ParseLib.HC,249",BI=175$ +$LK,"RunFile2",A="FL:::/Compiler/CMain.HC,667",BI=176$ +$LK,"Cmp",A="FL:::/Compiler/CMain.HC,419",BI=177$ $LK,"ICArgPut",A="FL:::/Compiler/CExcept.HC,141",BI=178$ $LK,"UndefinedExtern",A="FL:::/Compiler/CExcept.HC,98",BI=179$ $LK,"CN_RES",A="FL:::/Compiler/BackFA.HC,4"$ @@ -228,93 +228,93 @@ $LK,"OptIC4",A="FL:::/Compiler/OptPass4.HC,1",BI=180$ $LK,"OptIC6",A="FL:::/Compiler/OptPass6.HC,1",BI=181$ $LK,"ICCmpAndBranch",A="FL:::/Compiler/BackB.HC,468",BI=182$ $LK,"ICDivEqu",A="FL:::/Compiler/BackA.HC,372",BI=183$ -$LK,"PrsWhile",A="FL:::/Compiler/PrsStmt.HC,486",BI=184$ -$LK,"ICFCmpAndBranch",A="FL:::/Compiler/BackFB.HC,226",BI=185$ -$LK,"Lex",A="FL:::/Compiler/Lex.HC,441",BI=186$ +$LK,"ICFCmpAndBranch",A="FL:::/Compiler/BackFB.HC,226",BI=184$ +$LK,"Lex",A="FL:::/Compiler/Lex.HC,441",BI=185$ +$LK,"ParseStatement",A="FL:::/Compiler/ParseStatement.HC,904",BI=186$ $LK,"ICTestAndBranch",A="FL:::/Compiler/BackB.HC,640",BI=187$ +$LK,"ParseTryBlk",A="FL:::/Compiler/ParseStatement.HC,842",BI=188$ $LK,"uasm",A="FL:::/Compiler/Compiler.PRJ,21"$ $LK,"MODR_INDIRECT_REG",A="FL:::/Compiler/BackLib.HC,127"$ -$LK,"PE_MAYBE_MODIFIERS",A="FL:::/Compiler/PrsExp.HC,3"$ -$LK,"PE_UNARY_MODIFIERS",A="FL:::/Compiler/PrsExp.HC,4"$ -$LK,"AOTLocalsResolve",A="FL:::/Compiler/AsmResolve.HC,43",BI=188$ -$LK,"PE_DO_BINARY_OP",A="FL:::/Compiler/PrsExp.HC,9"$ -$LK,"CmpFixUpAOTAsm",A="FL:::/Compiler/CMain.HC,302",BI=189$ -$LK,"OptLabelFwd",A="FL:::/Compiler/OptLib.HC,1",BI=190$ -$LK,"ICOrOr",A="FL:::/Compiler/BackB.HC,51",BI=191$ -$LK,"LexExcept",A="FL:::/Compiler/CExcept.HC,81",BI=192$ +$LK,"PE_MAYBE_MODIFIERS",A="FL:::/Compiler/ParseExp.HC,3"$ +$LK,"PE_UNARY_MODIFIERS",A="FL:::/Compiler/ParseExp.HC,4"$ +$LK,"AOTLocalsResolve",A="FL:::/Compiler/AsmResolve.HC,43",BI=189$ +$LK,"PE_DO_BINARY_OP",A="FL:::/Compiler/ParseExp.HC,9"$ +$LK,"CmpFixUpAOTAsm",A="FL:::/Compiler/CMain.HC,302",BI=190$ +$LK,"OptLabelFwd",A="FL:::/Compiler/OptLib.HC,1",BI=191$ +$LK,"ICOrOr",A="FL:::/Compiler/BackB.HC,51",BI=192$ +$LK,"LexExcept",A="FL:::/Compiler/CExcept.HC,81",BI=193$ $LK,"cmp_templates",A="FL:::/Compiler/CExts.HC,42"$ -$LK,"CmpF2PushPop",A="FL:::/Compiler/OptLib.HC,542",BI=193$ +$LK,"CmpF2PushPop",A="FL:::/Compiler/OptLib.HC,542",BI=194$ $LK,"INTERNAL_TYPES_NUM",A="FL:::/Compiler/CInit.HC,1"$ -$LK,"CmpJoin",A="FL:::/Compiler/CMain.HC,35",BI=194$ -$LK,"PrsPop2",A="FL:::/Compiler/PrsLib.HC,16",BI=195$ +$LK,"CmpJoin",A="FL:::/Compiler/CMain.HC,35",BI=195$ $LK,"CMP_TEMPLATES",A="FL:::/Compiler/Templates.HC,4"$ $LK,"MODR_D8_INDIRECT_REG",A="FL:::/Compiler/BackLib.HC,128"$ -$LK,"PrsAsmBlk",A="FL:::/Compiler/Asm.HC,904",BI=196$ -$LK,"PrsAsmArg",A="FL:::/Compiler/Asm.HC,35",BI=197$ -$LK,"LexFirstRem",A="FL:::/Compiler/Lex.HC,271",BI=198$ -$LK,"MemberClassBaseFind",A="FL:::/Compiler/LexLib.HC,87",BI=199$ -$LK,"MemberFind",A="FL:::/Compiler/LexLib.HC,67",BI=200$ +$LK,"LexFirstRem",A="FL:::/Compiler/Lex.HC,271",BI=196$ +$LK,"MemberClassBaseFind",A="FL:::/Compiler/LexLib.HC,87",BI=197$ +$LK,"MemberFind",A="FL:::/Compiler/LexLib.HC,67",BI=198$ $LK,"cmp",A="FL:::/Compiler/Compiler.PRJ,16"$ +$LK,"ParsePush2",A="FL:::/Compiler/ParseLib.HC,11",BI=199$ +$LK,"ParseSwitch",A="FL:::/Compiler/ParseStatement.HC,578",BI=200$ $LK,"OptLag",A="FL:::/Compiler/OptLib.HC,40",BI=201$ $LK,"ICPostIncDec",A="FL:::/Compiler/BackB.HC,345",BI=202$ $LK,"ICFPostIncDec",A="FL:::/Compiler/BackFB.HC,593",BI=203$ $LK,"ICTest",A="FL:::/Compiler/BackLib.HC,413",BI=204$ $LK,"ICModU64",A="FL:::/Compiler/BackC.HC,463",BI=205$ -$LK,"PrsAsmImm",A="FL:::/Compiler/Asm.HC,1",BI=206$ -$LK,"LexExtStr",A="FL:::/Compiler/LexLib.HC,248",BI=207$ -$LK,"ICAddSubEctEqu",A="FL:::/Compiler/BackA.HC,442",BI=208$ -$LK,"ICAddSubEctImm",A="FL:::/Compiler/BackA.HC,56",BI=209$ -$LK,"ICPush",A="FL:::/Compiler/BackLib.HC,312",BI=210$ +$LK,"LexExtStr",A="FL:::/Compiler/LexLib.HC,248",BI=206$ +$LK,"ICAddSubEctEqu",A="FL:::/Compiler/BackA.HC,442",BI=207$ +$LK,"ICAddSubEctImm",A="FL:::/Compiler/BackA.HC,56",BI=208$ +$LK,"ICPush",A="FL:::/Compiler/BackLib.HC,312",BI=209$ +$LK,"ParseWhile",A="FL:::/Compiler/ParseStatement.HC,486",BI=210$ $LK,"ICSwap",A="FL:::/Compiler/BackC.HC,490",BI=211$ $LK,"CMP_TEMPLATES_DONT_PUSH",A="FL:::/Compiler/Templates.HC,260"$ +$LK,"ParsePop2",A="FL:::/Compiler/ParseLib.HC,16",BI=212$ $LK,"intermediate_code_table",A="FL:::/Compiler/CInit.HC,16"$ -$LK,"ICZero",A="FL:::/Compiler/BackLib.HC,404",BI=212$ -$LK,"CmpCtrlDel",A="FL:::/Compiler/Lex.HC,58",BI=213$ -$LK,"ICClassPut",A="FL:::/Compiler/CExcept.HC,117",BI=214$ -$LK,"ICAssign",A="FL:::/Compiler/BackC.HC,159",BI=215$ -$LK,"ICFTemplateFun",A="FL:::/Compiler/BackFB.HC,617",BI=216$ -$LK,"RunFile",A="FL:::/Compiler/CMain.HC,625",BI=217$ -$LK,"MemberAdd",A="FL:::/Compiler/LexLib.HC,103",BI=218$ -$LK,"PrsPush",A="FL:::/Compiler/PrsLib.HC,1",BI=219$ +$LK,"ICZero",A="FL:::/Compiler/BackLib.HC,404",BI=213$ +$LK,"CmpCtrlDel",A="FL:::/Compiler/Lex.HC,58",BI=214$ +$LK,"ICClassPut",A="FL:::/Compiler/CExcept.HC,117",BI=215$ +$LK,"ICAssign",A="FL:::/Compiler/BackC.HC,159",BI=216$ +$LK,"ICFTemplateFun",A="FL:::/Compiler/BackFB.HC,617",BI=217$ +$LK,"RunFile",A="FL:::/Compiler/CMain.HC,625",BI=218$ +$LK,"MemberAdd",A="FL:::/Compiler/LexLib.HC,103",BI=219$ $LK,"SLASH_OP_FDIVR",A="FL:::/Compiler/BackLib.HC,276"$ $LK,"SLASH_OP_FISTTP",A="FL:::/Compiler/BackLib.HC,279"$ -$LK,"CmpCtrlSize",A="FL:::/Compiler/Lex.HC,70",BI=220$ -$LK,"ICLocalVarInit",A="FL:::/Compiler/BackC.HC,761",BI=221$ -$LK,"PrsFor",A="FL:::/Compiler/PrsStmt.HC,529",BI=222$ +$LK,"ParseBinFile",A="FL:::/Compiler/Asm.HC,888",BI=220$ +$LK,"CmpCtrlSize",A="FL:::/Compiler/Lex.HC,70",BI=221$ +$LK,"ICLocalVarInit",A="FL:::/Compiler/BackC.HC,761",BI=222$ $LK,"PassTrace",A="FL:::/Compiler/CMisc.HC,50",BI=223$ -$LK,"PrsPopDeref",A="FL:::/Compiler/PrsLib.HC,21",BI=224$ -$LK,"ICCopyTemplate",A="FL:::/Compiler/BackFA.HC,77",BI=225$ -$LK,"PrsStmt",A="FL:::/Compiler/PrsStmt.HC,904",BI=226$ -$LK,"PrsFun",A="FL:::/Compiler/PrsStmt.HC,140",BI=227$ -$LK,"LexIncludeStr",A="FL:::/Compiler/Lex.HC,293",BI=228$ -$LK,"PrsType",A="FL:::/Compiler/PrsVar.HC,285",BI=229$ -$LK,"CmpCtrlNew",A="FL:::/Compiler/Lex.HC,28",BI=230$ +$LK,"ICCopyTemplate",A="FL:::/Compiler/BackFA.HC,77",BI=224$ +$LK,"ParsePopDeref",A="FL:::/Compiler/ParseLib.HC,21",BI=225$ +$LK,"LexIncludeStr",A="FL:::/Compiler/Lex.HC,293",BI=226$ +$LK,"CmpCtrlNew",A="FL:::/Compiler/Lex.HC,28",BI=227$ $LK,"MODR_SIB_D8_INDIRECT_REG",A="FL:::/Compiler/BackLib.HC,131"$ $LK,"cmp_type_flags_src_code",A="FL:::/Compiler/Lex.HC,322"$ -$LK,"PrsVarInit2",A="FL:::/Compiler/PrsVar.HC,123",BI=231$ -$LK,"PrsPop",A="FL:::/Compiler/PrsLib.HC,6",BI=232$ +$LK,"ParseFor",A="FL:::/Compiler/ParseStatement.HC,529",BI=228$ +$LK,"ParseFun",A="FL:::/Compiler/ParseStatement.HC,140",BI=229$ +$LK,"ParseVarInit2",A="FL:::/Compiler/ParseVar.HC,123",BI=230$ $LK,"asm_seg_prefixes",A="FL:::/Compiler/Asm.HC,393"$ -$LK,"ICMinMax",A="FL:::/Compiler/BackC.HC,418",BI=233$ -$LK,"CmpLoadDefines",A="FL:::/Compiler/CInit.HC,204",BI=234$ -$LK,"PrsIf",A="FL:::/Compiler/PrsStmt.HC,459",BI=235$ -$LK,"ICBuiltInFloatConst",A="FL:::/Compiler/BackLib.HC,423",BI=236$ -$LK,"ICFUnaryMinus",A="FL:::/Compiler/BackFA.HC,194",BI=237$ -$LK,"LexDocRead",A="FL:::/Compiler/Lex.HC,305",BI=238$ -$LK,"CmpFixUpJITAsm",A="FL:::/Compiler/CMain.HC,174",BI=239$ -$LK,"COCPopNoFree",A="FL:::/Compiler/PrsLib.HC,114",BI=240$ -$LK,"ParenWarning",A="FL:::/Compiler/CExcept.HC,110",BI=241$ -$LK,"PrsFunCall",A="FL:::/Compiler/PrsExp.HC,383",BI=242$ +$LK,"ICMinMax",A="FL:::/Compiler/BackC.HC,418",BI=231$ +$LK,"CmpLoadDefines",A="FL:::/Compiler/CInit.HC,204",BI=232$ +$LK,"ParsePush",A="FL:::/Compiler/ParseLib.HC,1",BI=233$ +$LK,"ICBuiltInFloatConst",A="FL:::/Compiler/BackLib.HC,423",BI=234$ +$LK,"ICFUnaryMinus",A="FL:::/Compiler/BackFA.HC,194",BI=235$ +$LK,"LexDocRead",A="FL:::/Compiler/Lex.HC,305",BI=236$ +$LK,"CmpFixUpJITAsm",A="FL:::/Compiler/CMain.HC,174",BI=237$ +$LK,"COCPopNoFree",A="FL:::/Compiler/ParseLib.HC,114",BI=238$ +$LK,"ParenWarning",A="FL:::/Compiler/CExcept.HC,110",BI=239$ $LK,"SLASH_OP_IMM_U32",A="FL:::/Compiler/BackLib.HC,263"$ -$LK,"ICDerefPostIncDec",A="FL:::/Compiler/BackB.HC,384",BI=243$ -$LK,"Option",A="FL:::/Compiler/CMisc.HC,1",BI=244$ -$LK,"ExeFile2",A="FL:::/Compiler/CMain.HC,657",BI=245$ +$LK,"ParsePop",A="FL:::/Compiler/ParseLib.HC,6",BI=240$ +$LK,"ICDerefPostIncDec",A="FL:::/Compiler/BackB.HC,384",BI=241$ +$LK,"Option",A="FL:::/Compiler/CMisc.HC,1",BI=242$ +$LK,"ExeFile2",A="FL:::/Compiler/CMain.HC,657",BI=243$ $LK,"COptMemberVar",A="FL:::/Compiler/OptLib.HC,556"$ -$LK,"PE_CHECK_BINARY_OPS1",A="FL:::/Compiler/PrsExp.HC,6"$ -$LK,"PE_CHECK_BINARY_OPS2",A="FL:::/Compiler/PrsExp.HC,7"$ -$LK,"LexBackupLastChar",A="FL:::/Compiler/LexLib.HC,1",BI=246$ -$LK,"Trace",A="FL:::/Compiler/CMisc.HC,58",BI=247$ -$LK,"ICBrBitOps",A="FL:::/Compiler/BackC.HC,208",BI=248$ +$LK,"ParseType",A="FL:::/Compiler/ParseVar.HC,285",BI=244$ +$LK,"PE_CHECK_BINARY_OPS1",A="FL:::/Compiler/ParseExp.HC,6"$ +$LK,"PE_CHECK_BINARY_OPS2",A="FL:::/Compiler/ParseExp.HC,7"$ +$LK,"LexBackupLastChar",A="FL:::/Compiler/LexLib.HC,1",BI=245$ +$LK,"Trace",A="FL:::/Compiler/CMisc.HC,58",BI=246$ +$LK,"ICBrBitOps",A="FL:::/Compiler/BackC.HC,208",BI=247$ $LK,"MODR_D32_INDIRECT_REG",A="FL:::/Compiler/BackLib.HC,129"$ +$LK,"ParseVarInit",A="FL:::/Compiler/ParseVar.HC,1",BI=248$ $LK,"LexGetChar",A="FL:::/Compiler/Lex.HC,107",BI=249$ $LK,"LexSkipEol",A="FL:::/Compiler/Lex.HC,264",BI=250$ $LK,"ICFlagBranch",A="FL:::/Compiler/BackB.HC,688",BI=251$ @@ -323,111 +323,101 @@ $LK,"ICFPreIncDec",A="FL:::/Compiler/BackFB.HC,573",BI=252$ $LK,"MODR_SIB_INDIRECT_REG",A="FL:::/Compiler/BackLib.HC,130"$ $LK,"SLASH_OP_IMM_U8",A="FL:::/Compiler/BackLib.HC,262"$ $LK,"ExeFile",A="FL:::/Compiler/CMain.HC,614",BI=253$ -$LK,"COCMiscNew",A="FL:::/Compiler/PrsLib.HC,143",BI=254$ +$LK,"COCMiscNew",A="FL:::/Compiler/ParseLib.HC,143",BI=254$ $LK,"cmp_templates_dont_pop",A="FL:::/Compiler/CExts.HC,43"$ $LK,"CmpOffset2Reg",A="FL:::/Compiler/OptLib.HC,83",BI=255$ -$LK,"PrsFunNew",A="FL:::/Compiler/PrsLib.HC,62",BI=256$ -$LK,"StreamExePrint",A="FL:::/Compiler/CMain.HC,673",BI=257$ -$LK,"COCGoToLabelFind",A="FL:::/Compiler/PrsLib.HC,152",BI=258$ -$LK,"OptMVCompare",A="FL:::/Compiler/OptLib.HC,562",BI=259$ -$LK,"ICToBool",A="FL:::/Compiler/BackB.HC,289",BI=260$ -$LK,"PrsFunJoin",A="FL:::/Compiler/PrsStmt.HC,62",BI=261$ +$LK,"StreamExePrint",A="FL:::/Compiler/CMain.HC,673",BI=256$ +$LK,"COCGoToLabelFind",A="FL:::/Compiler/ParseLib.HC,152",BI=257$ +$LK,"OptMVCompare",A="FL:::/Compiler/OptLib.HC,562",BI=258$ +$LK,"ICToBool",A="FL:::/Compiler/BackB.HC,289",BI=259$ +$LK,"ParseAsmBlk",A="FL:::/Compiler/Asm.HC,904",BI=260$ +$LK,"ParseAsmArg",A="FL:::/Compiler/Asm.HC,35",BI=261$ $LK,"OptFixSizeOf",A="FL:::/Compiler/OptLib.HC,484",BI=262$ $LK,"cmp_templates_dont_push",A="FL:::/Compiler/CExts.HC,45"$ $LK,"cmp_templates_dont_push_pop",A="FL:::/Compiler/CExts.HC,46"$ -$LK,"LexAttachDoc",A="FL:::/Compiler/Lex.HC,325",BI=263$ -$LK,"PrsStreamBlk",A="FL:::/Compiler/PrsStmt.HC,805",BI=264$ +$LK,"ParseAsmImm",A="FL:::/Compiler/Asm.HC,1",BI=263$ +$LK,"LexAttachDoc",A="FL:::/Compiler/Lex.HC,325",BI=264$ $LK,"MODR_RIP_REL_IMM_U32",A="FL:::/Compiler/BackLib.HC,134"$ $LK,"cmp_templates_dont_push2",A="FL:::/Compiler/CExts.HC,44"$ $LK,"InstEntryFind",A="FL:::/Compiler/UAsm.HC,66",BI=265$ -$LK,"PrsDotDotDot",A="FL:::/Compiler/PrsVar.HC,373",BI=266$ -$LK,"ICMulEqu",A="FL:::/Compiler/BackA.HC,285",BI=267$ -$LK,"AsmPrsInsFlags",A="FL:::/Compiler/AsmInit.HC,1",BI=268$ -$LK,"PrsNoWarn",A="FL:::/Compiler/PrsStmt.HC,791",BI=269$ -H2@2#2#;#A#\#a#########wawaaaaaaaaaa bb=bKbKbxbbbbbbbc c6c6c=cacwcwcwccH>Lggpww'=Pu(8~~d`ff&17<>JQ`kqvx - ,<<AT[bbbbi D47:GMZ]`fhr ,cjpp~ - os..<QW P 7777777777777 ;\LLLLLM3MTM]MnMMMMMMMMM&N7N;NCNCNVNfNjNnN .BPgmy~|1"""""""""""""# -###!#$#$#.#0'ƉXXlsz~͢ -:EPRYbdov(" //>TZ  #/:L]NL}ǵεյٵ۵ #5F75fĶȶʶжܶ#5F75fķȷʷзܷ$5&$U\bnxĸҸ۸GGd2l{„ӄۄ߄  577CKO\\hptօ,17BGGU^jrzņՆՆچ(Mdqy‡ȇχԇԇ',,3>DLR]bbq|Ĉʈ҈؈݈݈ -  Elqq։܉!7HNSlrϊ!'.33IOev|~̋Ջ "5<BJP`fntttyyyyy̌Ռ "39>PV[t  >>CCOWZagllώގ .6NVY`fffɏ؏ -/;V^ahnnnnss|Ӑِސ)14;Ajrˑё28KĒĒޒ ,8CCHHbnzϓՓړ '2;GORX^cwՔݔ"(..?HT\_flqĕʕ #+.5;;KT`hkqw|ɖ̖Җؖ6>AGMM^gs{~ԗܗߗ .KSV]ccccchh~ƘҘۘ%-EMPW]u}șΙΙΙߙ #2>YadkqԚܚߚ%055H^doqqʛӛ  #9?M\aatȜΜ-38DM\\aaw}ܝ  &,Iaa՞۞:@BNWbbbbgu~П՟  =Mq %4fntv{ȡȡ͡ҡ  ,39ALRbhp{ĢĢĢ֢ۢۢ/2>GSZ`eep̣УУܣ '2=COSS_hkkvxɤ̤ФФؤߤ - *1<GJPUU`ddpy||ƥѥץ - ")/7BMS]`ddlsvxŦЦۦަ "$:AGYdouzz§§֧ۧۧ $((5AIO_ctȨϨܨ##DSkmyʩөީ"..YxZ5Z5l5n5r5{5555555555 6 666"6,6lby?}?}U}d}i}~}k}}}}}}}}}}}~+~D~N~mmmmmmmmmmmmmmmmmnnn'nJnknpnnnnnnnnnnnnnnnnoo oo$oGoUomorovoooooooopp:pMpRpXp]p`pbphpnptpypppppppppppp!q4q9qIqlqzqqqqqqqqqqqrrrr$rr>rLrdrdrurur~rrrrrrrssss ss,s4s?sZs\sbs|sssssssH5ELc~ׇL__s4IR=GGor 8PU\bd 07SSeM2=HQY\cgpŧԧ٧(97/GPVVdg{̨ը #44;T`h{ީ #/3HJ[epzCPwgOgOOOOOOOOPPPP(P ccc28 2/2/@/F/R/]/n/x///3@oo}4S 0 7 > E K M T [ ^ ^ p p            - - -6 -: -: -? -H -R -f +$LK,"ParseDoWhile",A="FL:::/Compiler/ParseStatement.HC,506",BI=266$ +$LK,"ParseStreamBlk",A="FL:::/Compiler/ParseStatement.HC,805",BI=267$ +$LK,"ICMulEqu",A="FL:::/Compiler/BackA.HC,285",BI=268$ +$LK,"AsmPrsInsFlags",A="FL:::/Compiler/AsmInit.HC,1",BI=269$ +H2@2#2#;#A#\#a#########aaaaaaaaaaabbEbSbSbbbbbbbb cc>c>cEcicccccH>Loou$$$$$$$$% %%%!%+%1%<%L%T%d%k%s%{%%%%%%%%p  /EX}(8d`nn .9?DFRYhsy~$4DDI\cjjjjq ! D&&<?BOUbehnpz +,cjpp~ os66DY_ P 7777777777777 ;\LLLLMM;M\MeMvMMMMMMMMM.N?NCNKNKN^NnNrNvN|1"""""""""""""# +###!#$#$#.#``t{ĢբBMXZajlw~(" 77F\b  +7BTeVTŵϵֵݵ  +=N?=nŶ̶жҶض +=N?=nŷ̷зҷط +,=.,]djv¸¸̸ڸ OOl:tÄʄۄ((=??KSWddpx|ƅޅ %49?JOO]frz݆݆͆ 0UlyʇЇׇ܇܇ /44;FLTZejjÿ҈ڈ +"((Mtyyʼnމ +#)?PV[tz׊!)/6;;QWm~‹‹‹ԋ݋*=DJRXhnv|||ɌԌ݌*;AFX^c|ǍǍ (FFKKW_biott׎6>V^ahnnnя7C^fipvvvv{{Ȑې%19<CIrzӑّ +:@Sǒ̒̒  (4@KKPPjvœדݓ /:COWZ`fkŔݔ'*066GP\dgnty•ŕ̕ҕ+36=CCS\hpsyɖіԖږ">FIOUUfo{ܗ 6S[^ekkkkkppΘژ -5MUX_e}ƙəЙ֙֙֙+:Failsyܚ '-8==Pflwyyқۛ+AGUdii|М֜  5;@LUddii.4QiižžǞǞݞBHJV_jjjjo}ȟ؟ݟ (EUy-<nv|~ССաڡ4;AITZjpxǢǢǢ̢̢̢ޢ&7:FO[bhmmxģɣɣԣأأ /:EKW[[gpss~ǤѤԤؤؤ29DORX]]hllxåΥ٥ߥ*17?JU[ehllt{~Ʀͦئ*,BIOalw}ŧʧʧާ %,00=IQWgk|¨¨Шר++L[suɩҩ۩ *66axZ5Z5l5n5r5{5555555555 6 666"6,6 6JXoulbyG}G}]}l}q}}s}}}}}}}}}}~~3~L~V~mmmmmmmmmmmmmmmmnnnn/nRnsnxnnnnnnnnnnnnnnnoo ooo,oOo]ouozo~ooooooooppBpUpZp`pephpjpppvp|ppppppppppppq)qBqfW ---3?QYq%3:>@S]krvvvv #7AOVZjuz%3M]h} ',@HSSSSgw 2Kdfqyy """?M[r + +$3NYpxx!AOe &>GGNW]iH5ELc~ׇLgg{4IR!&=OOwz  #@X]djl #8?[[mM :EPYadkoxͧܧ + '0A?7OX^^loԨݨ+<<C\hp©ɩ +7;PRcmxĪɪKPwoOoOOOOOOOP PP!P$P0P cccN``lŠȊ0~~ +$,28::F18 2/2/@/F/R/]/n/x///2@ww3S% 8 ? F M S U \ c f f x x            + +& +> +B +B +G +P +Z n -w +v  - - - - - - - - - - -   & + 1 G W l q              + C H S g o x             -   # ( / E U j o            )AAAMS]hz5ESS\fs ''@5D -6\ObȊȊ "''8<D\_k70VV_dmtv{833>BMzaT =QUUZxk"6>GOT[m} -6JN]]]]pv4GLkzs444L?},@DIgZ| 4<EMRYk{***=CMTg -"APIhx9Dt^^n:</8>BM;. #4;TXiisz+<d(=/7;EOWZ`=4oGG.G1G5GBGKGVGfGnGxGGGGGGGGGGGGGGGH H HHHH.H3H3HCHHHHHXH]H]H]H`HiHHHHHHHHHHHHHHHHII3I;IAIAIUIUI^IaI!J>lzO~O~e~t~y~~{~~~~~~~~~~ ";T^? n__|ܬ#'9<GP\o{ǭۭ+OcelɮЮݮ)-ZZrwwԯٯٯ#6BGGGizİʰϰϰ԰ް )5BN]gmvıܱ*4:CLLQQQQQaaayòвҲ߲ 4@R^dlr{ȳгس#%3388?MReq}ŴŴŴŴŴŴŴŴŴŴݴ'46CSXXXa{Եٵٵٵ+@aҶ۶,4<Jt}߷!'-2;DIIIIXl̸  3Qagll̹ҹҹ׹׹׹ (9FHWYYYYYmmmmmmmmmmmmmmmm|кغ1@Lb|ۻ!4b:}}ļǼ>APdѽ97,!GGGJORlzʾʾ<PlXۿٿοÿ)5@!,3>RR]nu))Dpp!05==BBI_oy 06;;;;;;;;;FTdjr"1;U[``gz',P\dy!,4INNr~+08@BJY_goqy*^fu   8==FKKKKKKKKKKKKKKKKVbz!$&6@@@BWhknv{{)>EEJJJJJJJR]ix}} $,OU\^dkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkmm Ax[%,3>EV`gq$*@GOelllz%:KKRRR` NBx`__w - +6ALSfr"19HPsy 0C_t|-C ?Cw1w1111D?[?[`[k[|[k[[[[[[[[[[[[[ \\\(\L\L\]\h\n\u\z\z\\\\\\\\\\\\\]]]]]+]0]A]G]P]e]y]y]~]~]]]]]]]]]]]]]]]]]^^^)^4^;^=^Q^`^e^j^j^j^}^^^^^^^^^^^^^_ ____-_?_N_i_t_________``!`4`6`D`W`Y`g`u````````````` aa&a7aEaganazaaaaaaaaaaaaabbbb%b-b2b2bAbNb\bgbrbbbbbbbbbbbbbbccc"c+cCMPZ_x{{{{&::INN\HPcsAA8A%AZAGAiAxAAAAAAAAAIP &>FJJvv #7<>>>ZxxKP>>0>2>@>F>a>p>>>>>>>L7////00 0"090P0t0000000111"1*1*14141?1D1Y1_1~11111112 2 222'2e2}22M$ ZZ[Z[$[NLxffx"OTHYeeeeeeeeff -ff"f%f/fP!Gdd(d1dDdQd]diduddddddddddddee+e=e=eFeieieke~eeeeeeQlppppp-q4qHqOqWq_qhqpqxqzqqqqqqqqq r7r@rbr|rrrrrrrss$s@sgsssss t0tLtsttttttttttttt -uu4uLudufufufumumuzuuuuuuuuv v v vv.v>Xa%+009YYY`bbikkqqxzz %((28>>BJQU]eksz%*@QVYTL؇؇ &>VYkU/`..BWfjx ''=?ImxzEV$ZZZZZZWP?D?D`DMDDoDDDDDDDDDDDX,YOOpӏ""//6IGWWblrx{ǐ̐א'-3:Q@agmu}Б#)111GGGGR\e̒ђђܒ(=Rottۓ 6KWhm~ɔΔΔݔ !055HW\j\~̕ѕߕѕ<AOAchhӖؖؖ!/!CHHejӗؗؗ388SXXsxxɘΘΘߘ!:?elv{̙יߙ#<EEkppxǚҚݚ   7BLW\gottÛۛ'HTej{ǜ֜(-8@EP`o̝ݝݝ!!+?IKW_|Ş֞+00;@@HSXX`kppxߟȟƟ(--:??GLL^puuuƠˠˠޠ ,<AA[kppΡӡӡޡ 7<xfT<Ȣآݢݢ'?DlZDɣΣΣգ%**E1oɤΤΤ 1AFFNSS[``hmmuzzԥ¥ -XF4" -ejjyŦʦʦۦM;)lħ8&PUxmU٨ިި$=M^^˩-PXXXdii|ʪϪϪתܪܪ -#2=BBM^ccny~~ɫثݫݫ$8$GLL`LooottȬ۬'3>INbNq}í̭ѭѭ٭ޭޭ#((388CHHSXXchhsxxˮЮЮڮ߮߮ - -).....6;;CHHPUU]bbjooگ߯(3>CCJUuzðΰٰްް+6O;^ityyñȱޱ%4?DD_KnͲܲ -*9Y^tʳճڳڳ   #*MOOYYYYY[[ryش  A6YYYbi|̵$4I[kkȶض"-9Gt}Ϸ۷+0A`ʸ̸̸и?bbeZ, (.[`EY__uև&EO\8 -7Z7ZXZEZgZrZ}ZZZZZ]\áΡ١#&U^l77\an -3Souy 3JPTmuz9>FLPTfns   %%<>>RTTkmm(----Pl25JQS\oq}}-Mn5D[w||"HWu -6888DDDb_\ -OOOOOOOPP$PP3P;PFP\PRPtPzP`:::::::;; -;;;;,;T;o;\;;;;;;;; <<?<G<L<U<a<i<p<<<<<<<< ====="=&=7=7=Z=l=a$__nb|kgg!###+FHHRRjc"G6G6i6s6666666666777'7/7<7D7G7G7G7I7X7b7k7s7v77d77777778-8D8O888888888 992979I9N9Q9q9999999999: :%:*:5:5:@:@:L:L:^:::::edύ&6PT\f(r*r********+ -++8+b+s++++++++++++,,,,,,,,B,B,X,X,n,n,,,,,,,,,,,,,--%-%-<-D-O-`-k-|-----.g  ! % 0 B B ] ` b n                   ;!h(Łׁ߁i=_R_RRRRRRRRRRRRRSSS S"S/S/S4S=SESNSVSXS`ShSpS}SSSSSSSSSSS TTTT,T0B0G0R0]0`0d0l0kZOOiˆ͈Ո (0:Xjs{ˉӉՉ1;CCLTjҊԊي -+5?His}ԋ؋5999?MWpvόٌ  /1=?GMf~ɍ !-BG\lĎ֎le!AAGOW_gmzz %%,..44;==CCJJRX^ffffrz '.6>BHSYfrx - m`b!b!k!r!!!!!!!!"""-"6"8"L"\""n2ȕȕޕ"3FN\zіז#)>FJR`fkk՗!#02DDKSeeŘɘ՘٘"(,6:IM\`swwwwșؙ#+8Scsxxxxƚۚ&,9TdpvśMonnnnnno$o\.\^\^\u\i\\\\\\\\\ ]\\$]&]B]B]I]s]s]s]]{Q -002?JPap+++6Q<Ylnv"+++>CCKKVktttt %%1N]lty  ""@Vafs~ $$1<BKK^k} #*7>Pelr{{%-5A^ert{-8GNNgz| &-8=ELW\qs!**099XXehqz!*,Nav|+ |tR4R4d4m4p4y4444444444444445}`2PPPPPPPPPPPQQQ#Q9Q.QQQYQ~-HhHhfhvhhhhhhhhhhhhhhhhi!i!i1i>i>iaininiiiiiiiijjjRjjjjjjtZ3Z3n3333333334 4 4!4!4$4'4<4B4D4D4L4``xzƎю &,/9JP\\ď&))))))))*!* *0*A*F*g*S*********++-++E+R+R+j+j+t+444/4L4W4444444555#575>5>5M5[5j5555555555556B6x αձܱ -(7FPPU\o~β "0BBBT_q|ijѳֳ !2;;=MTddŴŴŴȴ۴\ȏȏ#146@RRY0..FzPN`/__uąʅ0OYL[j222222222222-3(*3*383G3K3N3T3\k~/3/3=3O3U3]3o3u3~33333334, $GGew~999HdZ|`Biiiii j.j0j>jKjQj\jsjjjjjjjjjjjkk+k=k?kMk_k_khkykkkkkkkkkkkkkkl+l:lElWlclzllllllllllllllmmmm&m&m+m+m5m@mRmXmdmtmmmmmmmmmmmmmnn&n,n8n@nKnRnVninon|nnnnnnnno ooo)o9oIoIoYo^o^ohosooooooooooooopppppp/p8pJpPpRpRp`pfpopppppppppppppqq:qLqWqiqmqrqyqqqqqqqqqr8((()$)E)2)])u)u))`j~",7?NX[_gg%-5?HPS\w#7>E\83=8>HDDQ11111111112252{9<CHNPU[[mt!(79Obbt0RZ7272@2f2w2}2}22a~FFXmw"1D  -00000h'g'g=gHgSgaglguggggggggggghhhgh=Z'K'KWK]KfKrKzKKKKKKKKKKL LL'L?LcLLLl 77Oaho 66> y}!-2(A 1119ASbSwyy2?AR___hz -/:??FJX\el -@SUUUhhov{&-9Wju|#Sfw(2>IKKKP\\H%/////////////0 OO6O#OEOaOWOyOOL''''(5("(M(R(}((((((([LLLLLLLMMMM:M"MIMIMWMaMhMMMMMMMMMMN+NHNKNSNZNzN|NNNNNNNNNOT]n)0 -R??nc{ $,1=BV]alq| -16AIIIKdyZ0f0fJfXf]fjfxfffffffggg g"g,g8gFOW\cu >RVeeeex~ '<OTs{<<<TG4HLQob #(<DMUZas #222EKU\o%*IXQp8Dtffv9<&7@FJU:4oGG.G1G5GBGKGVGfGnGxGGGGGGGGGGGGGGGH H HHHH.H3H3HCHHHHHXH]H]H]H`HiHHHHHHHHHHHHHHHHII3I;IAIAIUIUI^IaI!J;lzW~W~m~|~~~~~~~~~~~~~*C\f<d(=/7;EOWZ`= nggɬ+/ADOXdwϭ3WkmtѮخ15bbzɯܯ!+>JOOOqǰ̰Ұװװܰ 1=JVeou~DẔ#2<BKTTYYYYYiii˲زڲ + +$<HZfltzгس +-;;@@GUZmyʹʹʹʹʹʹʹʹʹʹ/<>K[```iµµǵǵǵǵǵǵǵǵܵ 3Hiڶ4<DR|ŷŷŷŷŷ )/5:CLQQQQ`tԸ ';YiottԹڹڹ߹߹߹ 0ANP_aaaaauuuuuuuuuuuuuuuuغ!9HTjû')<jB̼ϼFIXlٽ A?4)OOORWZtҾҾ#DXt`ֿ˿1=>%)4;FZZev}11Lxx)8=EEJJQgw #8>CCCCCCCCCN\lrz"*9C]chho"&/4Xdl$)4<QVVz$38@HJRagowy 2fn}#@EENSSSSSSSSSSSSSSSS^j!),.>HHHJ_psv~1FMMRRRRRRRZeq,4W]dflssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssuu#?x[-4;FM^hoy,2HOWmttt&-BSSZZZhV@x`gg(3>IT[nz*9APX{(8Kg|5A ?C11111BDTa|||||| }}'}?}G}CfGSGSiSsSSSSSSSSSSST T!T2TQTYT[TzTTTTTTTTTTTTTTTUU UU!U@UGUIUhUoUoUoUUUUUUUUUUUU VUV!V(V0V6V8VIVNVdVPVsVyVyVVVVVVVVVVVWWW1W1WCWD ;z#APn"9==AFKUXbg%.BBQVVdEPcsAA@A-AbAOAqAAAAAAAAAAFP. FNGD$rrsss)s.s7sCsEsWsWsYssHR~~+?DFFFbI.+<C\`qq{3JP>>8>:>H>N>i>x>>>>>>>K7//00000*0A0X0|0000000 111*12121<1<1G1L1a1g1111111222222/2m222L$ ZZ[[$[,[MTHYeeeeeeeeff +ff"f%f/fN!Gdd(d1dDdQd]diduddddddddddddee+e=e=eFeieieke~eeeeeeOlppppp-q4qHqOqWq_qhqpqxqzqqqqqqqqq r7r@rbr|rrrrrrrss$s@sgsssss t0tLtsttttttttttttt +uu4uLudufufufumumuzuuuuuuuuv v v vv.v`L`_`a`o`}````````````aa'a.a?aMaoavaaaaaaaaaaaaaa bbb$b-b5b:b:bIbVbdbobzbbbbbbbbbbbbbbcc$c*c3cDckcsc}cccccccccccddddeRdFF`i-388Aaaahjjqssyy#-00:@FFJRY]ems{"-2HY^aSL؇؇ &>VYkT$ZZZZZZUPGDGDhDUDDwDDDDDDDDDDDV,WWWxۏ**77>QO__jtzϐԐߐ/5;BYHiou}ؑǑ%+1999OOOOZdmԒْْ  0EZw||Ɠ (>S_pu””є֔֔)8==P_drdԕٕٕ"DIWIkppǖۖ$)7)KPPmrۗ  ;@@[``{ј֘֘)BGmt~Ùԙߙ"'''+DMMsxxĚϚښ "?JT_dow||˛$/P\mrϜޜ%05@HMXhwÝȝȝԝ + ))3GQS_g͞ޞ #388CHHP[``hsxxƟПΟ055BGGOTTfx}}}ΠӠӠ4DIIcsxx֡ۡۡ'?Dn\DТ/GLtbLѣ֣֣ݣ-22M9wѤ֤֤!&&9INNV[[chhpuu}ܥʥ `N<*mrrͦҦҦ UC1$ţ @.# X]u]ɨ  ,EUffƩө5#X```lqqҪתתߪ+:EJJUfkkvƫѫƫ  ',@,OTThTwww||ĬĬЬĬ   /;FQVjVy˭íԭ٭٭   +00;@@KPP[``kpp{ĮɮɮӮخخ $$166666>CCKPPX]]ejjrww¯! 0;FKKR]}˰ְ3>WCfq|˱б +-<GLLgSvղ2Aaf|óҳݳ + + +!!+2UWWaaaaacczŴ#I>aaajqɵԵ   ,<QcssĶɶж!&&*5AO|׷"38Ih¸ҸԸԸظGjjmX, '06Y`EYgg}‡ȇއ.MWZ8 +?Z?Z`ZMZoZzZZZZZZ[\áˡ֡"+.]\@BB_r (;;;NYl]l??div ;[w};RX\u} "AFNTX\nv{(--DFFZ\\suu05555Xt     :=RY[dwy5Uv%=Lc *P_}>@@@LLLj^\ +OOOOOOO PP,PP;PCPNPdPZP|PP_::::::; ; ;;;;!;4;\;w;d;;;;;;;;<<G<O<T<]<i<q<x<<<<<<=<==!=!='=*=.=?=?=b=t=`$ggva|koo)+++3NPPZZrb7777788858L8W8888888889#9:9?9Q9V9Y9y999999999: :(:-:2:=:=:H:H:T:T:f:::::cdύ&6PT\d(r*r********+ +++8+b+s++++++++++++,,,,,,,,B,B,X,X,n,n,,,,,,,,,,,,,--%-%-<-D-O-`-k-|-----.e(́߁f8-7*0*0>0B0G0R0]0`0d0l0gZWWqňʈՈ݈'08B`r{ɉӉۉ݉'9CKKT\rڊ܊3=GPq{Ë܋"=AAAGU_x~Ɍ׌79EGOUnэ)5JOdtŎ̎ގh   ) - 8 J J e h j v                   C!ie )IIOW_gou%''--466<<CEEKKRRZ`fnnnnz !'/6>FJP[anz j`b!b!k!r!!!!!!!!"""-"6"8"L"\""kxee-e?eEeQehehezeeeeeeeeeeeee f f;fl2ȕȕޕ"3FN\zіז#)>FJR`fkk՗!#02DDKSeeŘɘ՘٘"(,6:IM\`swwwwșؙ#+8Scsxxxxƚۚ&,9TdpvśRmTP 8HU[_egjnn +&*-4:>DU[`ert#@d~ ,3?Wcccilo %%*7DDJXoux{&-=AJbgn  'I\nnnnnnno$oi>iaininiiiiiiiijjjRjjjjjj{tZ3Z3n3333333334 4 4!4!4$4'4<4B4D4D4L4|Q88:GRXix +%333>YDatv~$*333FKKSS^s||||#(--9Vet|!**H^in{ ',,9DJSSfs&+2?FXmtz-5=Ifmz|'5@OVVo.5@EMT_dy{)228AA``mpy )24Vi~3 }%%%%%& +&&&,&,&7&A&A&N&W&f&q&w&&&&&&&&&&&&&&&'' '3'9'<'B'B'D'J'P'R'R'R'c'm'r'r'''''''''''''''( (((#(,(>(>(c(g(m(s((((((((((((((((((( ) )$)1)5)=)O)o)o)u)x)|))))))))))))* ***0*;*^*i*o*u*{*************+ ++++6+)+P+Y+_+_+t+y+y++++++++++++, ,,,;,A,G,S,j,q,w,,,,,,,,,,,,,,,,,,,, -$-4-A-L-h-j-------------------. ...!.-.4.8.@.H.P.b.p.u..................../ /"/$/$/$///////4/]0~``xzƎю &,/9JP\\ď&)))))))) *)**8*I*N*o*[*********++5+!+M+Z+Z+r+r+|+44#474T4_4444444 55$5+5?5F5F5U5c5r555555555566 6J6x ֱݱ!0?NXX]dwֲ (*8JJJ\gydz̳ٳ޳'):CCEU\llʹʹʹд\ȏȏ#146@RRY`/gg}ȅ̅҅8&WaL[j22222222222253=gRgRRRRRRRRRRRRSS S&S(S*S7S7STTTTTT UUUU0U6U8UCUJUJUNU]UfUnUwUUUUUUUUUUUUUUUVV#V#V7VBVIVRV`ViVVVVVVVVVVVVVVWWWWWkW\k~7373E3W3]3e3w3}333333334, $OOmAAAPlb8(()),)M):)e)})}))`j~*4?GV`c_oo  !!%-5=GPX[d   +?FMd83=8>HDDQ111111112222=2{ADKPVX]ccu|)0?AWjj|0RZ?2?2H2n22222  +00000"O6O6q6{666666666677 7/777D7L7O7O7O7Q7`7j7s7{7~77=Z/K/K_KeKnKzKKKKKKKKKKK LLL/LGLkLLLl ??Wipw>>F y}!-2a~NN`u&*9LH%/////////////0 OO>O+OMOiO_OOOL'''((=(*(U(Z(((((((([LLLLLLLMM%M'MBM*MQMQM_MiMpMMMMMMMMMMN3NPNSN[NbNNNNNNNNNNOOT]n $'10 +RGGvk +!,49EJ^eity'9>IQQQSlZ0f0fJfXf]fjfxfffffffggg g"g,g8gYIYVYbYuYYYYYYYYYYYZ(Z(Z(Z:Z< 5 -555$5,545<5C5S5S5X5*ãУգ٣&.1=E_Ӥ")MT-Źܹ"8FJj~Ѻ޺޺ #*:>>H^bbsĻ˻ӻ޻*EEKRakyؼ"7<JYcq|½Ľӽڽ޽ -%05S]krvʾξξξپ)8@KPXcos~ǿ6:i^Oyy%%%+7IQi+268KUcjnnnn|/9GNRbmr +EU`uz$8@KKKK_o*C\^iqqz7ESj+FQhpp 9G]y 6??FOUa<D̐֐ܐ *0:@JQ]clǑё$)9DI]_pɒђߒ++3A$PPQ QQQl:GGGG`GxGGGGGGGHH#H&H*H/H9HiJi`iyiiiiiiiiiiiiiiiiijjj*j1j=jDjDjQj[j[j`jjjjtAAABA7BBBFBUB]BhBjBuBBBBBBB CB.CCBC=C^CmCuCCCCCCCCCCCCCDD3D3D3D;D\7f7fMf_fefpf~fffffffffff&g$5HOV]acjquu}    4 4 B Y ^ w                   !!4!6!O!b!f!f!f!z!~!!!!!!!!!!!" """"""1"3"U"U"w"""""""""""""###*#,#E#V#Z#Z#a#t#x###########$$$2$6$H$H$H$H$Z$M$o$~$$$$$$$$$$$ % % %%%/%F%Q%b%g%m%w%y%%%%%%%%%%%%%& -&&&#&'&+&-&2&:&>&P&R&W&_&c&e&e&n&{&&&&&&&&&''' -'')'7'C'J'J'd'f'k'''''''''' (J(JEJTJTJTJqJqJJJJJJJJJJJJJJJJJJJJJJJJJJKKK:KL,LDLSLXL_LhL{LLLLLLLLLLLLLMMM%M-M2M2M8M8MAMRMTMiMkMsMyMMMMMMMMMMMMMMMMMMMNNNN N NN1N5N7NCNEN`NfNnNsN|NNNNNNNNNNNNO OOO#O(O(O-O/O7O7OROdOiOuO{O~OOOOOOOOOOOOOOOOPPP4P9PCPkPvPPPPPPPPPPPPPP Q)QBQDQJQLQPQ[Q]Q]QcQiQiQqQzQQQQQQQQQQQQQQQQQRRRRDRDRMR[RlRxRRRRRRRRRRRRRSSS$S&S/S2S2SV>VLVRVXVbVlVzVVVVVVVVVVVVVVVVVVVVVVWW!W&W+W0W5W:W?W?WDWIWeWoWWWWWWWWWWWWWWWXXXXX!X&X/X/X4X4X:XBXGXGXLXWX\XaXfXuXuXXXXXXXXXXXXXXXYYYY YYYY!Y)Y.Y.Y3Y>YCYHYMY\Y\YmYsYsYYYYYYYYYYYYYYYYYYZZZZZZ"Z(Z(Z6ZGGGYdj  &<CKRgxx%=EKZcgoxx xWWez %-57=CRZ`bhccccccc ddd!d'd0d!W!j!n!n!n!!!!!!!!!!!!!""%"%"%"*"9";"]"]"""""""""""""" # ##2#4#M#^#b#b#i#|############ $$'$:$>$P$P$P$P$b$U$w$$$$$$$$$$$$%%%$%$%7%N%Y%j%o%u%%%%%%%%%%%%%%% &&&#&+&/&3&5&:&B&F&X&Z&_&g&k&m&m&v&&&&&&&&&' ' ' '''1'?'K'R'R'l'n's'''''''''' (J(JEJTJTJTJqJqJJJJJJJJJJJJJJJJJJJJJJJJJJKKK:KL,LDLSLXL_LhL{LLLLLLLLLLLLLMMM%M-M2M2M8M8MAMRMTMiMkMsMyMMMMMMMMMMMMMMMMMMMNNNN N NN1N5N7NCNEN`NfNnNsN|NNNNNNNNNNNNO OOO#O(O(O-O/O7O7OROdOiOuO{O~OOOOOOOOOOOOOOOOPPP4P9PCPkPvPPPPPPPPPPPPPP Q)QBQDQJQLQPQ[Q]Q]QcQiQiQqQzQQQQQQQQQQQQQQQQQRRRRDRDRMR[RlRxRRRRRRRRRRRRRSSS$S&S/S2S2SV>VLVRVXVbVlVzVVVVVVVVVVVVVVVVVVVVVVWW!W&W+W0W5W:W?W?WDWIWeWoWWWWWWWWWWWWWWWXXXXX!X&X/X/X4X4X:XBXGXGXLXWX\XaXfXuXuXXXXXXXXXXXXXXXYYYY YYYY!Y)Y.Y.Y3Y>YCYHYMY\Y\YmYsYsYYYYYYYYYYYYYYYYYYZZZZZZ"Z(Z(Z6Z>R`f#77777777788#8E8m8{8888889"919L9W9r999999::%:4:4:?:R:c:v:::::::::::::; ;1;5;=;H;`;x;;;;;;;;;<<<4<6<A<t<<<<<<<<<<==!=,=.=>=V=n==========> HHQpu\[&&@GT_dj|,.1=EMUcir~~&<GU`p} !!,11<AALLgntw -BTen#)>DU`fvv+;GYdsu++18|D#ɭѭѭ߭ 444<>>FHHPRRZZcinnwȮ888@BBBJLLLTVVV^``kkqvvvv}ЯЯׯۯ'PS\cw˰Ӱٰ$))0;;@RXXXXd$CCD DDDD,D.D;D=DHD\DdDtDyDDDDDLWf"1"161:1?1J1J1T1Z1Z1^1f1\CV00000000000111118(2VV__mqx{Y]]]]]]]]S^9^.^^]Y^n^^^^^^^^^^^^^_;__R_p_p_p_|_lQh----- .).E.;.].u.b........///4'';@FJNmux߁߁ -#*@EJNPV\r_ׂ͂"XXfx|Ŭ۬ %0;DLLP2626P6T6X6`6n6q6t666666666666666 77<DD'E2EWE9EqEEEEEEEEEE F-F?FLFgFwF|FFFFFFFFGG;G1GUG[G[GdGGGGGGGGGGGGGH -H.H.H3H6HLHXHmHHHHHHHHHHI$II9I?INIvIeIIIIIIIIIIIJ J J*J0J0J0J9JYJJpJJJJJJJJJJKK'K8222222223 3333*34393a3f3s333333344434_4g4l4l444444444 5 5 5 5 5 585=5@5C5C5p5u5u555555555556666$6;6=6=6J6a6a6q6v66666677!7+7-7-7-7I7Q7S7S7{778]  *DLSXs{{{}}}}  */4?DDDyfȃ1Jc|̄2KKK]0%<:E"9"9+969D9P9\9e9n9w9}99lu&&&&&&&&&&& '('*':':'?'A'H'z'ssstss%tWt=t0ttttttttt!>!`!k!n!v!y!y!!!!!!!!!!!!!!!!!!"""&"."3"3":"C"T"Z"c"n""""""""""""""""#### ##'#8#Y#j#x############$9778%8,808F8s8888888889999X{&&Q[ny!1AJPU\bhny #+Fcgpw(  +^^^^$^:^:^C^C^C^L^Q^Q^Y^^^^^{^^^^^^^^^^^^^^^^^^___!_+_4_6_6_6_<_@_B_B_B_B_G_M_S_W_b xx-x0x6xJxRxcxpxvx{x{xxxxxxxxxxx y yy.y9y=yNyNyNySySy_ynyyyyyyyyyyyyyyyyzzzzz"z*z,z1z=z?zDzLzNzSz[z]zbzjzlzqzyzyzyzzzzzzzzzzzzzzz{{&{1{7{D{I{N{N{c{k{u{}{{{{{{{{{{{{| |||'|+|0|5|@|K|V|X|^|k|p|u|||||||||||||| } } }}}#}%}%}8}:}:}M}O}O}b}d}d}w}y}y}}}}}}}}}}}}}}} ~~~~~3~6~8~G~Y~i~u~~~~~~~~~~!)15CINNThx}} !--3@BO[j}}€̀Հ݀߀&&=MMamox́́́́́Ijjjjjj k"k7kBkXkDkgkokok~k~kkkkkkkkkkkkk ll.l0l5lDlOl\lflfltlJOuOukuruuuuuuuuuuuu vvv.vCvCvWv_vov|vvvvvvvvvv w w!w.w?wOwXwiwiwow}wwww x+L"%(,1S@cksvxҦ ._C_C}CCCCCCCCCCCDD)D8DGDXDgDgDuDyD}DDDDDDDDDDDDDEEEEE E EE$E,EBEBEBEGEGE_EkEvE{E{E~EEEEEEEEEEEEEEEEEFFFFFFFF"F'FCFCFCFCFCFCFCFCFCFCFCFCFEFVFhFwFFFFFFFFFOG,l3JgQgQ}QQQQQQQQQQQQQQRR4R)RLRVRPQa$$$$%%&%+%H%N%U%\%j%v%%%D+FFZhn#777777777 88+8M8u8888888 9*999T9_9z999999 ::-:<:<:G:Z:k:~::::::::::::;;(;9;=;E;P;h;;;;;;;;;; <<<<<><I<|<<<<<<<<<<=!=)=4=6=F=^=v========>> >d$CCD DDDD,D.D;D=DHD\DdDtDyDDDDDLWf"1"161:1?1J1J1T1Z1Z1^1f1\CV0000000000011111  @F`Biiiij(j6j8jFjSjYjdj{jjjjjjjjjjkk%k3kEkGkUkgkgkpkkkkkkkkkkkkkkll3lBlMl_lklllllllllllllll mm m m.m.m3m3m=mHmZm`mlm|mmmmmmmmmmmmnn'n.n4n@nHnSnZn^nqnwnnnnnnnno ooo&o1oAoQoQoaofofopo{oooooooooooop +p +ppp#p'p7p@pRpXpZpZphpnpwpppppppppppppqqBqTq_qqquqzqqqqqqqqqqr8(2^^gguyY]]]]]]]][^A^6^^^a^v^f^^^^^^^^^^^_C_&_Z_x_x_x__lQh---.-.1.M.C.e.}.j........//#/4//CHNRVu}x!+2HMRVX^dzg߂Ղ2626P6T6X6`6n6q6t666666666666666 77<DD/E:E_EAEyEEEEEEEEEEF5FGFTFoFFFFFFFFFF G'GCG9G]GcGcGlGGGGGGGGGGGGGHH6H6H;H>HTH`HuHHHHHHHHHII,I"IAIGIVI~ImIIIIIIIIIII JJJ2J8J8J8JAJaJJxJJJJJJJJJJKK/K8222222223333$323<3A3i3n3{33333334!4&4;4g4o4t4t44444444455555(5@5E5H5K5K5x5}5}555555555566666,6C6E6E6R6i6i6y6~666666 77)737575757Q7Y7[7[7778]  2LT[`{\?f?fUfgfmfxfffffffffffg.g!&&27<GLLLnЃ  9RkԄ!:SSSe HHQpu0''-<:E"9"9+969D9P9\9e9n9w9}99lu&&&&&&&&&&& '('*':':'?'A'H'z'sss tts-t_tEt8tttttttttDu7u,uuJuUuuuuuuuuuuvu)vv@vGvsvsvsvsv{vLix'/'/E/W/^/////////$qv?O?OSO[OfOlOgj1j111111111 2222$2<2G2W2c2j2u222222222222222222*3Lxnn*`FZ9999999999999999: ::<ߎߎ <GW,29111.1G1[1^1d1Mz  %79=ADWp49@Y4xx<%0DDDDDDDEE)E9778%8,808F8s88888888899995ohohhhhhhhhhhiii i&i9i?iHiNi`ifiqiyiiii oWoWWWWWWWWWWXXX"X4X4XRX]XpXwXXXXXX YY!Y)Y6Y?YDYTYbYYYYYYYYYYY0ZZ Z@Z{ZeZVZZZZB[X{..Ycv ')9IRX]djpv$+3Nkox0!38>AEEhm€рӀ  +:::U ""11@@OO^^m|# ƈ݈d688< +1=RTm|((:P1A0E0EFEREZE^EoE}EEEEEEEE ->>>>>>???.???Q?c?r?????????????????? @ @@@&@.@;@C@K@\@g@l@l@y@@@@@@@@@@@@@AAAA!A!A)A)A;ABAXAXAXA]A]AuAAAAAAAAAAAAAAAAA +BBBBBBB*B,B,B/B/B/B/B/B8B>BBBNBnB{BBBXC(rx (ntZ&Z&c&m&~&&&&   -+069==`e~ɀ߀ˀ -#222M| ""11@@OO^^m|#xee%e7e=eIe`e`erexeeeeeeeeeeeeff3fdww{.004 )5JLetxxx  2P1A0E0EFEREZE^EoE}EEEEEEEE ->>>>>>>>?&?7?I?[?j?y?????????????????@@@@@&@3@;@C@T@_@d@d@q@w@@@@@@@@@@@@@AAAAA!A!A3A:APAPAPAUAUAmA{AAAAAAAAAAAAAAAABBBBBBB"B$B$B'B'B'B'B'B0B6B:BFBfBsBBBPC(rx (ntZ&Z&c&m&~&&&&TP 0@MSW]_bff "%,26<MSX]jl~8\v{$+7O[[[adg "/<<BPgmpszz -%59BZ_fATxz_____________ `Q`4`'`t`y````````aa+aAaAagagasa V0V0e0~004wPwPPPPPPPP8 .... -////%/%/+/ :>_1_1i1q1v1SwvwvvvvvvvwDwJwPwXwZwbwwwzwwwwwww%x+x1x9x>xFx[x^xixuxzxxxxxxxxxyy yy%y'yKyyyyyyyyyyyyyzzzz1z3zPzhztz|zzzzzzzzz{{!{C{Z{s{{{{{{{{{{||%|)|)|)|0|5|H|S|m|o|t|||||||k:::::::::::;;;;;;";&;<;<;r;~;;;;;;;;;;;;;<<<$<0<8<=<=<Y<e<n<v<~<<<<<<<<<< =#=-=9=A=F=F=e=q================= >>*>,>/>4>4>4>>>F>M>U>^>i>o>|>>>>>>>>>>???(?0?0?2?2?7?7?>?D?H?O?S?S?S?S?b?b?????C(CCCCCCololllllllllllllmmm6m8m=mKmVmcmjmxm\=P,,,,,,-,-.--=-V-h-------8fpNNNNN OOOO6O0),40S[2:GQdP>N``lŠȊTQQ9QLQOQYQfQ{Q}QQQQQQQ -R<88LS_k{ 26H!/'['[;[G[][I[l[n[u[[[[D>TTTTTTU -U U U(U.U0U;UBUBUFUUU^UfUoUwU~UUUUUUUUUUUUU VVVV/V:VAVJVXVaVVVVVVVVVVVVVVWWWWWcWl ""68AGGGGOEnEEEEEF F FF(F,F1FFFHFKFOFVFjFnFvFFFFFFFFFFFFFFFFG%Isssssssssst t$tQtktxttttttttttt uuu uCu Bjjjjjjjjjjjkkkkkk$k-k8k>kGkZk_ktkkkkkkkkkkkl lllll!l'l,l,l?lMl[lelklplzlllllllllllmmm3mZm_m_m_mbmimomvm{m{mmmmmmmmmmmmmnnnnn)n3n9n@n@nBnBnBnGnMnRnVnXn[nfnunxnzn~n~nnnnn -u$$$$$$$$$% %%%#%)%4%D%L%\%c%k%s%{%%%%%%% $bo=o=========>>$>,>;>u>w>>>>>>>??)?/?>?S?U?`?h?h??????????? @*@@J@b@O@@q@@@@@@@@@@AAA 1““ /6ES\luwwww~Õ D$rrrss!s&s/s;s=sOsOsQss \ No newline at end of file +___________``(`Y`<`/`|````````` aa3aIaIaoaoa{a ^0^0m0004PPPPPPPPPltF!F!h!s!v!~!!!!!!!!!!!!!!!!!!!!"#"&"."6";";"B"K"\"b"k"v"""""""""""""""######&#/#@#a#r#############$8 .... +////%/%/+/ :>g1g1q1y1~1SvvvvvvvvwLwRwXw`wbwjwwwwwwwww-x3x9xAxFxNxcxfxqx}xxxxxxxxxx +yyyy-y/ySyyyyyyyyyyyy +z +zz"z9z;zXzpz|zzzzzzzzzz +{{){K{b{{{{{{{{{{{{||-|1|1|1|8|=|P|[|u|w|||||||||tVVx %*M`dj +  ?MYs!8CR`o|$/4:Q\ipp~(k:::::::::::;;;;;;";&;<;<;r;~;;;;;;;;;;;;;<<<$<0<8<=<=<Y<e<n<v<~<<<<<<<<<< =#=-=9=A=F=F=e=q================= >>*>,>/>4>4>4>>>F>M>U>^>i>o>|>>>>>>>>>>???(?0?0?2?2?7?7?>?D?H?O?S?S?S?S?b?b?????C(CCCCCCwlwlllllllllmmmm mm%m>m@mEmSm^mkmrmm\=P,,,,,, -,!-6-#-E-^-p-------8fpNNNNOOOO O>O0),40S[&&:BOYlT'Q'QAQTQWQaQnQQQQQQQQQR<88LS_k{ 26H!//[/[C[O[e[Q[t[v[}[[[[\[..HO\glr469EMU]kqz.DO]hx $))499DIITTov|5J\mv  +1FL]hn~~%3COal{} %339@D#ѭ٭٭ <<<DFFNPPXZZbbkqvvîЮ !@@@HJJJRTTT\^^^fhhssy~~~~ȯȯȯدد߯"/X[dkӰ۰&,118CCHZ````l (**>@IOOOOW"``nȬͬ !-8CLTTXEnEEEEEF F FF(F,F1FFFHFKFOFVFjFnFvFFFFFFFFFFFFFFFFG Bjjjjjjjjjjjkkkkkk$k-k8k>kGkZk_ktkkkkkkkkkkkl lllll!l'l,l,l?lMl[lelklplzlllllllllllmmm3mZm_m_m_mbmimomvm{m{mmmmmmmmmmmmmnnnnn)n3n9n@n@nBnBnBnGnMnRnVnXn[nfnunxnzn~n~nnnnn +h/g/gEgPg[gigtg}ggggggggggh +hh!hoh %Issssssssst tt,tYtsttttttttttttuu"u(uKu $bw=w========= > >,>4>C>}>>>>>>?>"??1?7?F?[?]?h?p?p????????@??@2@@R@j@W@@y@@@@@@@@@@AAA 1““ /6ES\luwwww~Õ \ No newline at end of file diff --git a/src/Compiler/Compiler.PRJ b/src/Compiler/Compiler.PRJ index 72015bdc..dffac601 100755 --- a/src/Compiler/Compiler.PRJ +++ b/src/Compiler/Compiler.PRJ @@ -21,17 +21,17 @@ CCmpGlbls cmp; CUAsmGlbls uasm; #include "CHash" #include "UAsm" -#include "PrsLib" +#include "ParseLib" #include "AsmInit" #include "AsmLib" #include "AsmResolve" #include "Asm" #include "OptLib" -#include "PrsExp" -#include "PrsVar" +#include "ParseExp" +#include "ParseVar" #include "CMisc" #include "CMain" -#include "PrsStmt" +#include "ParseStatement" #include "OptPass012" #include "OptPass3" #include "OptPass4" diff --git a/src/Compiler/CompilerB.HH b/src/Compiler/CompilerB.HH index 989e1f4c..f07aa200 100755 --- a/src/Compiler/CompilerB.HH +++ b/src/Compiler/CompilerB.HH @@ -50,7 +50,7 @@ public extern U0 LexPutLine(CCmpCtrl *cc,U8 *start); public extern U0 LexPutPos(CCmpCtrl *cc); public extern U0 LexPutToken(CCmpCtrl *cc); public extern U0 LexSkipEol(CCmpCtrl *cc); -public extern U8 *LexStmt2Bin( +public extern U8 *LexStatement2Bin( CCmpCtrl *cc,I64 *_type,I64 cmp_flags=CMPF_PRS_SEMICOLON); public extern U0 LexWarn(CCmpCtrl *cc,U8 *str=NULL); extern CMemberLst *MemberClassBaseFind( @@ -60,7 +60,7 @@ extern U0 MemberLstDel(CMemberLst *tmpm); public extern I64 MemberMetaData(U8 *st,CMemberLst *ml); public extern CMemberLstMeta *MemberMetaFind(U8 *st,CMemberLst *ml); public extern CHashClass *OptClassFwd(CHashClass *tmpc); -public extern I64 PrsKeyWord(CCmpCtrl *cc); +public extern I64 ParseKeyWord(CCmpCtrl *cc); #help_index "Compiler;Cmd Line (Typically)" extern I64 Cmp(U8 *filename, diff --git a/src/Compiler/Lex.HC b/src/Compiler/Lex.HC index aa6a3cbb..366a6b7f 100755 --- a/src/Compiler/Lex.HC +++ b/src/Compiler/Lex.HC @@ -816,7 +816,7 @@ lex_else: if (ch=='#') { if (!Lex(cc)) goto lex_end; - i=PrsKeyWord(cc); + i=ParseKeyWord(cc); if (i==KW_IF || i==KW_IFDEF || i==KW_IFNDEF || i==KW_IFAOT || i==KW_IFJIT) j++; @@ -867,7 +867,7 @@ lex_if: if (ch=='#') { if (!Lex(cc)) goto lex_end; - i=PrsKeyWord(cc); + i=ParseKeyWord(cc); if (i==KW_IF || i==KW_IFDEF || i==KW_IFNDEF || i==KW_IFAOT || i==KW_IFJIT) j++; @@ -906,7 +906,7 @@ lex_ifdef: if (ch=='#') { if (!Lex(cc)) goto lex_end; - i=PrsKeyWord(cc); + i=ParseKeyWord(cc); if (i==KW_IF || i==KW_IFDEF || i==KW_IFNDEF || i==KW_IFAOT || i==KW_IFJIT) j++; @@ -943,7 +943,7 @@ lex_ifndef: if (ch=='#') { if (!Lex(cc)) goto lex_end; - i=PrsKeyWord(cc); + i=ParseKeyWord(cc); if (i==KW_IF || i==KW_IFDEF || i==KW_IFNDEF || i==KW_IFAOT || i==KW_IFJIT) j++; @@ -972,7 +972,7 @@ lex_ifaot: if (ch=='#') { if (!Lex(cc)) goto lex_end; - i=PrsKeyWord(cc); + i=ParseKeyWord(cc); if (i==KW_IF || i==KW_IFDEF || i==KW_IFNDEF || i==KW_IFAOT || i==KW_IFJIT) j++; @@ -1001,7 +1001,7 @@ lex_ifjit: if (ch=='#') { if (!Lex(cc)) goto lex_end; - i=PrsKeyWord(cc); + i=ParseKeyWord(cc); if (i==KW_IF || i==KW_IFDEF || i==KW_IFNDEF || i==KW_IFAOT || i==KW_IFJIT) j++; @@ -1031,7 +1031,7 @@ lex_ifjit: case KW_EXE: if (!Lex(cc)) goto lex_end; - PrsStreamBlk(cc); + ParseStreamBlk(cc); goto lex_end; case KW_HELP_INDEX: if (Lex(cc)!=TK_STR) diff --git a/src/Compiler/OptPass012.HC b/src/Compiler/OptPass012.HC index 2d5cf57e..c08f7b95 100755 --- a/src/Compiler/OptPass012.HC +++ b/src/Compiler/OptPass012.HC @@ -3,7 +3,7 @@ Pass#0 When parsing the arg expressions to a function call, there is a call to OptPass012 to determine -the type of the expression. $LK,"OptPass012",A="FF:::/Compiler/PrsExp.HC,OptPass012"$ +the type of the expression. $LK,"OptPass012",A="FF:::/Compiler/ParseExp.HC,OptPass012"$ Pass#1&2 Constant expressions are simplified. @@ -50,15 +50,15 @@ args. ps->ptr-=tmpi->ic_data>>2; break; case IS_2_ARG: - tmpi2=PrsPop(ps); + tmpi2=ParsePop(ps); tmpc2=tmpi2->ic_class; tmpi->t.arg2_tree=tmpi2; - tmpi->t.arg2_class=PrsPop(ps); + tmpi->t.arg2_class=ParsePop(ps); case IS_1_ARG: - tmpi1=PrsPop(ps); + tmpi1=ParsePop(ps); tmpc1=tmpi1->ic_class; tmpi->t.arg1_tree=tmpi1; - tmpi->t.arg1_class=PrsPop(ps); + tmpi->t.arg1_class=ParsePop(ps); break; case IS_0_ARG: //nobound switch break; @@ -1265,8 +1265,8 @@ args. } } if (intermediate_code_table[tmpi_push->ic_code].res_cnt) { - PrsPush(ps,tmpi->ic_class2); - PrsPush(ps,tmpi_push); + ParsePush(ps,tmpi->ic_class2); + ParsePush(ps,tmpi_push); } if (tmpi->ic_class) { if (tmpi->ic_class->raw_type==RT_F64) diff --git a/src/Compiler/OptPass3.HC b/src/Compiler/OptPass3.HC index 6956e89c..a341370a 100755 --- a/src/Compiler/OptPass3.HC +++ b/src/Compiler/OptPass3.HC @@ -66,7 +66,7 @@ U0 OptPass3(CCmpCtrl *cc,COptReg *reg_offsets) ps->ptr-=tmpi->ic_data>>3; break; case IS_2_ARG: - tmpi2=PrsPop(ps); + tmpi2=ParsePop(ps); if (tmpi2->ic_flags&ICF_RES_TO_F64) tmpc2=cmp.internal_types[RT_F64]; else if (tmpi2->ic_flags & ICF_RES_TO_INT) @@ -76,7 +76,7 @@ U0 OptPass3(CCmpCtrl *cc,COptReg *reg_offsets) tmpi->arg2.type=MDF_STK+CmpRawType(tmpc2); tmpi->ic_flags|=ICF_ARG2_WAS_STK; case IS_1_ARG: - tmpi1=PrsPop(ps); + tmpi1=ParsePop(ps); if (tmpi1->ic_flags&ICF_RES_TO_F64) tmpc1=cmp.internal_types[RT_F64]; else if (tmpi1->ic_flags & ICF_RES_TO_INT) @@ -93,7 +93,7 @@ U0 OptPass3(CCmpCtrl *cc,COptReg *reg_offsets) if (intermediate_code_table[code].res_cnt) { tmpi->res.type=MDF_STK+CmpRawType(tmpc); tmpi->ic_flags|=ICF_RES_WAS_STK; - PrsPush(ps,tmpi); + ParsePush(ps,tmpi); } switch [code] { case IC_IMM_F64: diff --git a/src/Compiler/OptPass4.HC b/src/Compiler/OptPass4.HC index 0b4078f1..9b75eb55 100755 --- a/src/Compiler/OptPass4.HC +++ b/src/Compiler/OptPass4.HC @@ -171,10 +171,10 @@ U0 OptPass4(CCmpCtrl *cc,COptReg *reg_offsets,I64 *_type) ps->ptr-=tmpi->ic_data>>3; break; case IS_2_ARG: - tmpi2=PrsPop(ps); + tmpi2=ParsePop(ps); tmpc2=tmpi2->ic_class; case IS_1_ARG: - tmpi1=PrsPop(ps); + tmpi1=ParsePop(ps); tmpc1=tmpi1->ic_class; break; case IS_0_ARG: //nobound switch @@ -677,7 +677,7 @@ p4_sib: while (OptIC4(tmpi)); code=tmpi->ic_code; if (intermediate_code_table[code].res_cnt) - PrsPush(ps,tmpi); + ParsePush(ps,tmpi); } } tmpi=tmpi_next; diff --git a/src/Compiler/OptPass5.HC b/src/Compiler/OptPass5.HC index 4632331f..56b485d3 100755 --- a/src/Compiler/OptPass5.HC +++ b/src/Compiler/OptPass5.HC @@ -27,7 +27,7 @@ U0 OptPass5(CCmpCtrl *cc) ps->ptr--; } if (tmpi->arg2.type&MDF_STK) { - tmpi1=PrsPop(ps); + tmpi1=ParsePop(ps); if (tmpi1->ic_code==IC_MOV || tmpi1->ic_code==IC_REG) { if (tmpi1->ic_flags & ICF_RES_TO_INT) { if (tmpi1->arg1.type&MDF_IMM) @@ -51,7 +51,7 @@ U0 OptPass5(CCmpCtrl *cc) } if (tmpi->arg1.type&MDF_STK) { - tmpi1=PrsPop(ps); + tmpi1=ParsePop(ps); if (tmpi1->ic_code==IC_MOV || tmpi1->ic_code==IC_REG) { if (tmpi1->ic_flags & ICF_RES_TO_INT) { if (tmpi1->arg1.type&MDF_IMM) @@ -79,7 +79,7 @@ U0 OptPass5(CCmpCtrl *cc) } if (tmpi->res.type&MDF_STK && !(tmpi->ic_flags&ICF_RES_NOT_USED)) - PrsPush(ps,tmpi); + ParsePush(ps,tmpi); } tmpi=tmpi->next; } diff --git a/src/Compiler/OptPass6.HC b/src/Compiler/OptPass6.HC index 7b3fae6d..a8443c2e 100755 --- a/src/Compiler/OptPass6.HC +++ b/src/Compiler/OptPass6.HC @@ -50,14 +50,14 @@ U0 OptPass6Lag(CCmpCtrl *cc,CPrsStk *ps,CIntermediateCode *tmpi, } } tmpi->ic_data=clobbered_stk_tmp_mask; - PrsPush(ps,stk_ptr); - PrsPush(ps,clobbered_stk_tmp_mask); + ParsePush(ps,stk_ptr); + ParsePush(ps,clobbered_stk_tmp_mask); } else if (code==IC_CALL_END) { - tmpi->ic_data=PrsPop(ps); - stk_ptr=PrsPop(ps); + tmpi->ic_data=ParsePop(ps); + stk_ptr=ParsePop(ps); } else if (code==IC_CALL_END2) { ps->ptr--; - stk_ptr=PrsPop(ps); + stk_ptr=ParsePop(ps); } if (intermediate_code_table[code].arg_cnt==IS_V_ARG) stk_ptr-=tmpi->ic_data>>3; diff --git a/src/Compiler/PrsExp.HC b/src/Compiler/ParseExp.HC similarity index 93% rename from src/Compiler/PrsExp.HC rename to src/Compiler/ParseExp.HC index c950f011..0b79a689 100755 --- a/src/Compiler/PrsExp.HC +++ b/src/Compiler/ParseExp.HC @@ -12,7 +12,7 @@ #define PE_POP_ALL1 11 #define PE_POP_ALL2 12 -CIntermediateCode *PrsAddOp(CCmpCtrl *cc,I64 stk_op,CHashClass *tmpc) +CIntermediateCode *ParseAddOp(CCmpCtrl *cc,I64 stk_op,CHashClass *tmpc) { CIntermediateCode *tmpi=cc->coc.coc_head.last; Bool div_sizeof=FALSE; @@ -62,7 +62,7 @@ CIntermediateCode *PrsAddOp(CCmpCtrl *cc,I64 stk_op,CHashClass *tmpc) return tmpi; } -U0 PrsExpression2(CCmpCtrl *cc,I64 *_max_prec,CPrsStk *ps) +U0 ParseExpression2(CCmpCtrl *cc,I64 *_max_prec,CPrsStk *ps) { I64 i,cur_op,stk_op,state,max_prec=PREC_NULL,unary_pre_prec,paren_prec, unary_post_prec,left_prec=PREC_MAX; @@ -81,16 +81,16 @@ pe_unary_term1: cc->flags&=~(CCF_PAREN+CCF_PREINC+CCF_PREDEC+CCF_POSTINC+ CCF_POSTDEC+CCF_FUN_EXP); case PE_UNARY_TERM2: - state=PrsUnaryTerm(cc,ps,&local_var,&tmpad, + state=ParseUnaryTerm(cc,ps,&local_var,&tmpad, &max_prec,&unary_pre_prec,&paren_prec); break; case PE_UNARY_MODIFIERS: - state=PrsUnaryModifier(cc,ps,&local_var,&tmpad,&unary_post_prec); + state=ParseUnaryModifier(cc,ps,&local_var,&tmpad,&unary_post_prec); break; case PE_MAYBE_MODIFIERS: if (cc->token=='(') { //Typecast or fun_ptr cc->flags|=CCF_RAX; - state=PrsUnaryModifier(cc,ps,&local_var,&tmpad,&unary_post_prec); + state=ParseUnaryModifier(cc,ps,&local_var,&tmpad,&unary_post_prec); } else goto pe_check_binary_ops1; break; @@ -130,8 +130,8 @@ pe_check_binary_ops1: case PE_CHECK_BINARY_OPS2: pe_check_binary_ops2: - stk_op=PrsPop(ps); - tmpc=PrsPop(ps); + stk_op=ParsePop(ps); + tmpc=ParsePop(ps); if (!(0coc.coc_head.last->ic_class); - PrsPush(ps,cur_op); + ParsePush(ps,tmpc); + ParsePush(ps,stk_op); + ParsePush(ps,cc->coc.coc_head.last->ic_class); + ParsePush(ps,cur_op); goto pe_unary_term1; } else { tmpi=cc->coc.coc_head.last; @@ -164,8 +164,8 @@ pe_check_binary_ops2: case PE_DO_BINARY_OP: pe_do_binary_op: - PrsPush(ps,tmpc); - PrsPush(ps,stk_op); + ParsePush(ps,tmpc); + ParsePush(ps,stk_op); if (!cur_op) goto pe_pop_all1; @@ -210,8 +210,8 @@ pe_do_binary_op: case PE_POP_HIGHER: pe_pop_higher: - stk_op=PrsPop(ps); //pop ops of higher prec - tmpc=PrsPop(ps); + stk_op=ParsePop(ps); //pop ops of higher prec + tmpc=ParsePop(ps); if (!stk_op) goto pe_push_lower; else if (cur_op.u8[2]&~ASSOC_MASK==stk_op.u8[2]&~ASSOC_MASK) { @@ -220,7 +220,7 @@ pe_pop_higher: } else if (cur_op.u8[2]&~ASSOC_MASK<=stk_op.u8[2]&~ASSOC_MASK) goto pe_push_lower; - tmpi=PrsAddOp(cc,stk_op,tmpc); + tmpi=ParseAddOp(cc,stk_op,tmpc); if (intermediate_code_table[cur_op.u16[0]].type==IST_CMP && intermediate_code_table[stk_op.u16[0]].type==IST_CMP) { @@ -234,10 +234,10 @@ pe_pop_higher: case PE_PUSH_LOWER: pe_push_lower: - PrsPush(ps,tmpc); - PrsPush(ps,stk_op); - PrsPush(ps,cc->coc.coc_head.last->ic_class); - PrsPush(ps,cur_op); + ParsePush(ps,tmpc); + ParsePush(ps,stk_op); + ParsePush(ps,cc->coc.coc_head.last->ic_class); + ParsePush(ps,cur_op); goto pe_unary_term1; case PE_POP_ALL1: @@ -248,11 +248,11 @@ pe_pop_all1: ParenWarning(cc); case PE_POP_ALL2: pe_pop_all2: - stk_op=PrsPop(ps); - tmpc=PrsPop(ps); + stk_op=ParsePop(ps); + tmpc=ParsePop(ps); if (!stk_op.u16[0]) goto pe_done; - PrsAddOp(cc,stk_op,tmpc); + ParseAddOp(cc,stk_op,tmpc); goto pe_pop_all2; } } @@ -261,7 +261,7 @@ pe_done: *_max_prec=max_prec; } -Bool PrsExpression(CCmpCtrl *cc,I64 *_max_prec,Bool end_exp,CPrsStk *_ps=NULL) +Bool ParseExpression(CCmpCtrl *cc,I64 *_max_prec,Bool end_exp,CPrsStk *_ps=NULL) { Bool res=TRUE; I64 old_flags=cc->flags; @@ -273,11 +273,11 @@ Bool PrsExpression(CCmpCtrl *cc,I64 *_max_prec,Bool end_exp,CPrsStk *_ps=NULL) ps->ptr=0; ps->ptr2=0; } - PrsPush(ps,0); //terminate - PrsPush(ps,0); //terminate + ParsePush(ps,0); //terminate + ParsePush(ps,0); //terminate try //try catch causes noreg vars in function - PrsExpression2(cc,_max_prec,ps); + ParseExpression2(cc,_max_prec,ps); catch { if (Fs->except_ch=='Compiler') { res=FALSE; @@ -300,7 +300,7 @@ Bool PrsExpression(CCmpCtrl *cc,I64 *_max_prec,Bool end_exp,CPrsStk *_ps=NULL) return res; } -U0 PrsSizeOf(CCmpCtrl *cc) +U0 ParseSizeOf(CCmpCtrl *cc) { CHashClass *tmpc; CMemberLst *tmpm; @@ -350,7 +350,7 @@ pu_sizeof_member: ICAdd(cc,IC_IMM_I64,i,cmp.internal_types[RT_I64]); } -U0 PrsOffsetOf(CCmpCtrl *cc) +U0 ParseOffsetOf(CCmpCtrl *cc) { CHashClass *tmpc; CMemberLst *tmpm; @@ -380,7 +380,7 @@ U0 PrsOffsetOf(CCmpCtrl *cc) ICAdd(cc,IC_IMM_I64,i,cmp.internal_types[RT_I64]); } -I64 PrsFunCall(CCmpCtrl *cc,CPrsStk *ps,Bool indirect,CHashFun *tmpf) +I64 ParseFunCall(CCmpCtrl *cc,CPrsStk *ps,Bool indirect,CHashFun *tmpf) { I64 i,argc_cnt,dft_val; Bool is_first_arg=TRUE,needs_right_paren,is_print,is_putchars, @@ -467,7 +467,7 @@ I64 PrsFunCall(CCmpCtrl *cc,CPrsStk *ps,Bool indirect,CHashFun *tmpf) } else ICAdd(cc,IC_IMM_I64,dft_val,tmpm->member_class); } else { - if (!PrsExpression(cc,NULL,FALSE,ps)) + if (!ParseExpression(cc,NULL,FALSE,ps)) throw('Compiler'); else { COCPush(cc); @@ -502,7 +502,7 @@ I64 PrsFunCall(CCmpCtrl *cc,CPrsStk *ps,Bool indirect,CHashFun *tmpf) LexExcept(cc,"Expecting ',' at "); } COCInit(cc); - if (!PrsExpression(cc,NULL,FALSE,ps)) + if (!ParseExpression(cc,NULL,FALSE,ps)) throw('Compiler'); COCPush(cc); is_first_arg=FALSE; @@ -519,7 +519,7 @@ I64 PrsFunCall(CCmpCtrl *cc,CPrsStk *ps,Bool indirect,CHashFun *tmpf) LexExcept(cc,"Expecting ',' at "); } COCInit(cc); - if (!PrsExpression(cc,NULL,FALSE,ps)) + if (!ParseExpression(cc,NULL,FALSE,ps)) throw('Compiler'); COCPush(cc); is_first_arg=FALSE; @@ -590,7 +590,7 @@ I64 PrsFunCall(CCmpCtrl *cc,CPrsStk *ps,Bool indirect,CHashFun *tmpf) return PE_UNARY_MODIFIERS; } -I64 PrsUnaryTerm(CCmpCtrl *cc,CPrsStk *ps,CMemberLst **_local_var, +I64 ParseUnaryTerm(CCmpCtrl *cc,CPrsStk *ps,CMemberLst **_local_var, CArrayDim **_tmpad,I64 *max_prec,I64 *unary_pre_prec,I64 *paren_prec) { I64 i,j; @@ -671,8 +671,8 @@ I64 PrsUnaryTerm(CCmpCtrl *cc,CPrsStk *ps,CMemberLst **_local_var, i=IC_ADDR; break; end: - PrsPush(ps,tmpc); - PrsPush(ps,PREC_UNARY_PRE<<16+i); + ParsePush(ps,tmpc); + ParsePush(ps,PREC_UNARY_PRE<<16+i); return PE_UNARY_TERM2; start: @@ -736,7 +736,7 @@ I64 PrsUnaryTerm(CCmpCtrl *cc,CPrsStk *ps,CMemberLst **_local_var, paren_warn=FALSE; else paren_warn=TRUE; - if (!PrsExpression(cc,paren_prec,FALSE,ps)) + if (!ParseExpression(cc,paren_prec,FALSE,ps)) throw('Compiler'); if (!paren_warn) *paren_prec=PREC_NULL; @@ -765,9 +765,9 @@ I64 PrsUnaryTerm(CCmpCtrl *cc,CPrsStk *ps,CMemberLst **_local_var, cc->flags&=~(CCF_RAX|CCF_ARRAY|CCF_FUN_EXP); tmpc=tmpm->member_class+1; if (tmpm->flags & MLF_FUN && !(cc->flags&CCF_ASM_EXPRESSIONS)) { - PrsPopDeref(ps); + ParsePopDeref(ps); cc->flags|=CCF_FUN_EXP; - PrsPush2(ps,tmpm->fun_ptr-tmpm->fun_ptr->ptr_stars_cnt); + ParsePush2(ps,tmpm->fun_ptr-tmpm->fun_ptr->ptr_stars_cnt); } if (tmpm->dim.next) { *_tmpad=tmpm->dim.next; @@ -783,7 +783,7 @@ I64 PrsUnaryTerm(CCmpCtrl *cc,CPrsStk *ps,CMemberLst **_local_var, ICAdd(cc,IC_IMM_I64,tmpm->static_data,tmpc); } else { if (cc->flags&CCF_ASM_EXPRESSIONS) { - i=PrsPop(ps); + i=ParsePop(ps); ps->ptr--; if (i.u16[0]!=IC_ADDR) LexExcept(cc,"Expecting '&' at "); @@ -863,7 +863,7 @@ pu_export_sys_sym: if (PREC_TERM>*max_prec) *max_prec=PREC_TERM; Lex(cc); //skip fun name - return PrsFunCall(cc,ps,FALSE,tmpex); + return ParseFunCall(cc,ps,FALSE,tmpex); case HTt_GLBL_VAR: if (PREC_TERM>*max_prec) *max_prec=PREC_TERM; @@ -897,13 +897,13 @@ pu_export_sys_sym: } Lex(cc); if (tmpg->flags & GVF_FUN) { - PrsPopDeref(ps); + ParsePopDeref(ps); cc->flags|=CCF_FUN_EXP; - PrsPush2(ps,tmpg->fun_ptr-tmpg->fun_ptr->ptr_stars_cnt); + ParsePush2(ps,tmpg->fun_ptr-tmpg->fun_ptr->ptr_stars_cnt); } return PE_UNARY_MODIFIERS; case HTt_CLASS: - PrsOffsetOf(cc); + ParseOffsetOf(cc); return PE_MAYBE_MODIFIERS; case HTt_KEYWORD: switch (tmpex(CHashGeneric *)->user_data0) { @@ -913,7 +913,7 @@ pu_export_sys_sym: j=0; while (Lex(cc)=='(') j++; - PrsSizeOf(cc); + ParseSizeOf(cc); while (j--) { if (cc->token!=')') LexExcept(cc,"Missing ')' at "); @@ -926,7 +926,7 @@ pu_export_sys_sym: j=0; while (Lex(cc)=='(') j++; - PrsOffsetOf(cc); + ParseOffsetOf(cc); while (j--) { if (cc->token!=')') LexExcept(cc,"Missing ')' at "); @@ -957,7 +957,7 @@ pu_export_sys_sym: LexExcept(cc,"Missing expression at "); } -I64 PrsUnaryModifier(CCmpCtrl *cc,CPrsStk *ps,CMemberLst **_local_var, +I64 ParseUnaryModifier(CCmpCtrl *cc,CPrsStk *ps,CMemberLst **_local_var, CArrayDim **_tmpad,I64 *unary_post_prec) { CHashClass *tmpc,*tmpc1; @@ -1007,8 +1007,8 @@ I64 PrsUnaryModifier(CCmpCtrl *cc,CPrsStk *ps,CMemberLst **_local_var, cc->flags|=CCF_ARRAY; } if(tmpm->flags & MLF_FUN) { - PrsPopDeref(ps); - PrsPush2(ps,tmpm->fun_ptr-tmpm->fun_ptr->ptr_stars_cnt); + ParsePopDeref(ps); + ParsePush2(ps,tmpm->fun_ptr-tmpm->fun_ptr->ptr_stars_cnt); cc->flags|=CCF_FUN_EXP; } ICAdd(cc,IC_ADD,0,tmpc1); @@ -1017,7 +1017,7 @@ I64 PrsUnaryModifier(CCmpCtrl *cc,CPrsStk *ps,CMemberLst **_local_var, if (cc->flags & CCF_FUN_EXP) { if (!*unary_post_prec) *unary_post_prec=PREC_TERM; - return PrsFunCall(cc,ps,TRUE,PrsPop2(ps)); + return ParseFunCall(cc,ps,TRUE,ParsePop2(ps)); } if (!*unary_post_prec) *unary_post_prec=PREC_TERM; @@ -1029,11 +1029,11 @@ I64 PrsUnaryModifier(CCmpCtrl *cc,CPrsStk *ps,CMemberLst **_local_var, tmpc=cc->hash_entry; Lex(cc); mode=PRS0_TYPECAST|PRS1_NULL; - tmpc=PrsType(cc,&tmpc,&mode,NULL,NULL,&fun_ptr,NULL,&tmpad2,0); + tmpc=ParseType(cc,&tmpc,&mode,NULL,NULL,&fun_ptr,NULL,&tmpad2,0); if (fun_ptr) { - PrsPopDeref(ps); + ParsePopDeref(ps); Bts(&cc->flags,CCf_FUN_EXP); - PrsPush2(ps,fun_ptr); + ParsePush2(ps,fun_ptr); cm=COCMiscNew(cc,CMT_HASH_ENTRY); cm->h=fun_ptr; } @@ -1070,7 +1070,7 @@ I64 PrsUnaryModifier(CCmpCtrl *cc,CPrsStk *ps,CMemberLst **_local_var, ICAdd(cc,IC_IMM_I64,tmpad1->total_cnt*tmpc1->size,tmpc); if (*_tmpad=tmpad1->next) { old_flags=cc->flags; - if (!PrsExpression(cc,NULL,FALSE,ps)) + if (!ParseExpression(cc,NULL,FALSE,ps)) throw('Compiler'); cc->flags=cc->flags&~CCF_FUN_EXP|old_flags&CCF_FUN_EXP; if (cc->token!=']') @@ -1086,7 +1086,7 @@ I64 PrsUnaryModifier(CCmpCtrl *cc,CPrsStk *ps,CMemberLst **_local_var, } else ICAdd(cc,IC_IMM_I64,tmpc1->size,tmpc); old_flags=cc->flags; - if (!PrsExpression(cc,NULL,FALSE,ps)) + if (!ParseExpression(cc,NULL,FALSE,ps)) throw('Compiler'); cc->flags=cc->flags&~CCF_FUN_EXP|old_flags&CCF_FUN_EXP; if (cc->token!=']') @@ -1121,7 +1121,7 @@ U8 *LexExpression2Bin(CCmpCtrl *cc,I64 *_type=NULL) Bool old_trace=Btr(&cc->flags,CCf_PASS_TRACE_PRESENT); COCPush(cc); COCInit(cc); - if (PrsExpression(cc,NULL,FALSE)) { + if (ParseExpression(cc,NULL,FALSE)) { ICAdd(cc,IC_RETURN_VAL,0,0); ICAdd(cc,IC_RET,0,0); res=COCCompile(cc,&size,NULL,_type); diff --git a/src/Compiler/PrsLib.HC b/src/Compiler/ParseLib.HC similarity index 95% rename from src/Compiler/PrsLib.HC rename to src/Compiler/ParseLib.HC index 02098809..2dace908 100755 --- a/src/Compiler/PrsLib.HC +++ b/src/Compiler/ParseLib.HC @@ -1,34 +1,34 @@ -U0 PrsPush(CPrsStk *ps,I64 val) +U0 ParsePush(CPrsStk *ps,I64 val) { ps->stk[++ps->ptr]=val; } -I64 PrsPop(CPrsStk *ps) +I64 ParsePop(CPrsStk *ps) { return ps->stk[ps->ptr--]; } -U0 PrsPush2(CPrsStk *ps,I64 val) +U0 ParsePush2(CPrsStk *ps,I64 val) { ps->stk2[++ps->ptr2]=val; } -I64 PrsPop2(CPrsStk *ps) +I64 ParsePop2(CPrsStk *ps) { return ps->stk2[ps->ptr2--]; } -U0 PrsPopDeref(CPrsStk *ps) +U0 ParsePopDeref(CPrsStk *ps) { - I64 i=PrsPop(ps); - CHashClass *tmpc=PrsPop(ps); + I64 i=ParsePop(ps); + CHashClass *tmpc=ParsePop(ps); if (i.u16[0]!=IC_DEREF) { - PrsPush(ps,tmpc); - PrsPush(ps,i); + ParsePush(ps,tmpc); + ParsePush(ps,i); } } -I64 PrsKeyWord(CCmpCtrl *cc) +I64 ParseKeyWord(CCmpCtrl *cc) {//Cvt cur token to $LK,"KEYWORD",A="FF:::/Compiler/OpCodes.DD,KEYWORD"$ or -1. CHashGeneric *tmph; if (cc->token==TK_IDENT &&(tmph=cc->hash_entry) && tmph->type&HTT_KEYWORD) @@ -37,7 +37,7 @@ I64 PrsKeyWord(CCmpCtrl *cc) return -1; } -CHashClass *PrsClassNew() +CHashClass *ParseClassNew() {/*Ptrs to classes are handled by allocating 5 structures for each new class and representing a pointer @@ -59,7 +59,7 @@ for one * and two fwd for two **. return res; } -CHashFun *PrsFunNew() +CHashFun *ParseFunNew() { I64 i; CHashFun *res=CAlloc(sizeof(CHashFun)*(PTR_STARS_NUM+1),Fs->code_heap), diff --git a/src/Compiler/PrsStmt.HC b/src/Compiler/ParseStatement.HC similarity index 90% rename from src/Compiler/PrsStmt.HC rename to src/Compiler/ParseStatement.HC index abf3e003..97a20f89 100755 --- a/src/Compiler/PrsStmt.HC +++ b/src/Compiler/ParseStatement.HC @@ -1,10 +1,10 @@ -CHashClass *PrsClass(CCmpCtrl *cc,I64 keyword,I64 fsp_flags,Bool is_extern) +CHashClass *ParseClass(CCmpCtrl *cc,I64 keyword,I64 fsp_flags,Bool is_extern) { CHashClass *tmpc,*base_class; if (cc->token!=TK_IDENT) LexExcept(cc,"Expecting identifier at "); if (is_extern) { - tmpc=PrsClassNew; + tmpc=ParseClassNew; tmpc->str=cc->cur_str; cc->cur_str=NULL; HashAdd(tmpc,cc->htc.glbl_hash_table); @@ -28,7 +28,7 @@ CHashClass *PrsClass(CCmpCtrl *cc,I64 keyword,I64 fsp_flags,Bool is_extern) Free(tmpc->idx); tmpc->idx=NULL; } else { - tmpc=PrsClassNew; + tmpc=ParseClassNew; tmpc->str=cc->cur_str; cc->cur_str=NULL; HashAdd(tmpc,cc->htc.glbl_hash_table); @@ -51,15 +51,15 @@ CHashClass *PrsClass(CCmpCtrl *cc,I64 keyword,I64 fsp_flags,Bool is_extern) tmpc->size+=base_class->size; } if (keyword==KW_UNION) - PrsVarLst(cc,tmpc,PRS0_NULL|PRS1_CLASS|PRSF_UNION); + ParseVarLst(cc,tmpc,PRS0_NULL|PRS1_CLASS|PRSF_UNION); else - PrsVarLst(cc,tmpc,PRS0_NULL|PRS1_CLASS); + ParseVarLst(cc,tmpc,PRS0_NULL|PRS1_CLASS); tmpc->size+=tmpc->neg_offset; } return tmpc; } -CHashFun *PrsFunJoin(CCmpCtrl *cc,CHashClass *tmp_return, +CHashFun *ParseFunJoin(CCmpCtrl *cc,CHashClass *tmp_return, U8 *name,I64 fsp_flags) { CMemberLst *tmpm,*header_lst; @@ -93,7 +93,7 @@ CHashFun *PrsFunJoin(CCmpCtrl *cc,CHashClass *tmp_return, tmpf->member_lst_and_root=NULL; ClassMemberLstDel(tmpf); } else { - tmpf=PrsFunNew; + tmpf=ParseFunNew; header_return=NULL; tmpf->used_reg_mask=REGG_CLOBBERED+REGG_SAVED+REGG_STK_TMP; tmpf->clobbered_reg_mask=REGG_CLOBBERED+REGG_STK_TMP; @@ -111,7 +111,7 @@ CHashFun *PrsFunJoin(CCmpCtrl *cc,CHashClass *tmp_return, tmpf->return_class=tmp_return; tmpf->use_cnt=0; HashSrcFileSet(cc,tmpf); - PrsVarLst(cc,tmpf,PRS0_NULL|PRS1_FUN_ARG); + ParseVarLst(cc,tmpf,PRS0_NULL|PRS1_FUN_ARG); tmpf->arg_cnt=tmpf->member_cnt; if (0arg_cnt<<3<=I16_MAX && !Bt(&tmpf->flags,Ff_DOT_DOT_DOT)) LBts(&tmpf->flags,Ff_RET1); @@ -137,7 +137,7 @@ CHashFun *PrsFunJoin(CCmpCtrl *cc,CHashClass *tmp_return, return tmpf; } -U0 PrsFun(CCmpCtrl *cc,CHashClass *tmp_return,U8 *name,I64 fsp_flags) +U0 ParseFun(CCmpCtrl *cc,CHashClass *tmp_return,U8 *name,I64 fsp_flags) { CMemberLst *tmpm; CCodeMisc *saved_leave_label; @@ -148,7 +148,7 @@ U0 PrsFun(CCmpCtrl *cc,CHashClass *tmp_return,U8 *name,I64 fsp_flags) cc->min_line=cc->max_line=cc->lex_include_stk->line_num; cc->flags&=~CCF_NO_REG_OPT; - cc->htc.local_var_lst=cc->htc.fun=PrsFunJoin(cc,tmp_return,name,fsp_flags); + cc->htc.local_var_lst=cc->htc.fun=ParseFunJoin(cc,tmp_return,name,fsp_flags); COCPush(cc); Btr(&cc->flags,CCf_PASS_TRACE_PRESENT); @@ -157,7 +157,7 @@ U0 PrsFun(CCmpCtrl *cc,CHashClass *tmp_return,U8 *name,I64 fsp_flags) saved_leave_label=cc->lb_leave; cc->lb_leave=COCMiscNew(cc,CMT_LABEL); cc->flags&=~CCF_HAS_RETURN; - PrsStmt(cc,,,0); + ParseStatement(cc,,,0); if (cc->max_linemin_line) cc->max_line=cc->min_line; @@ -206,7 +206,7 @@ U0 PrsFun(CCmpCtrl *cc,CHashClass *tmp_return,U8 *name,I64 fsp_flags) cc->htc.local_var_lst=cc->htc.fun=cc->fun_lex_file=NULL; } -U0 PrsGlblVarLst(CCmpCtrl *cc,I64 saved_mode,CHashClass *saved_tmpc, +U0 ParseGlblVarLst(CCmpCtrl *cc,I64 saved_mode,CHashClass *saved_tmpc, I64 saved_val,I64 fsp_flags) { I64 i,j,mode,k,val; @@ -220,7 +220,7 @@ U0 PrsGlblVarLst(CCmpCtrl *cc,I64 saved_mode,CHashClass *saved_tmpc, CArrayDim tmpad; Bool has_alias,undef_array_size,is_array; while (TRUE) { - tmpc=PrsType(cc,&saved_tmpc,&saved_mode,NULL,&st, + tmpc=ParseType(cc,&saved_tmpc,&saved_mode,NULL,&st, &tmpf_fun_ptr,&tmpex,&tmpad,fsp_flags); if (!st) return; @@ -242,7 +242,7 @@ U0 PrsGlblVarLst(CCmpCtrl *cc,I64 saved_mode,CHashClass *saved_tmpc, if (cc->token=='(') { switch (mode&255) { case PRS0__INTERN: - tmpf=PrsFunJoin(cc,tmpc,st,fsp_flags); + tmpf=ParseFunJoin(cc,tmpc,st,fsp_flags); tmpf->exe_addr=val; Bts(&tmpf->flags,Ff_INTERNAL); LBtr(&tmpf->flags,Cf_EXTERN); @@ -250,7 +250,7 @@ U0 PrsGlblVarLst(CCmpCtrl *cc,I64 saved_mode,CHashClass *saved_tmpc, case PRS0__EXTERN: if (!(fsp_flags&FSF__) && !(mode&PRS1_NOT_REALLY__EXTERN)) LexExcept(cc,"Expecting label with underscore at "); - tmpf=PrsFunJoin(cc,tmpc,st,fsp_flags); + tmpf=ParseFunJoin(cc,tmpc,st,fsp_flags); tmpf->exe_addr=val; SysSymImportsResolve(tmpf->str); LBtr(&tmpf->flags,Cf_EXTERN); @@ -260,7 +260,7 @@ U0 PrsGlblVarLst(CCmpCtrl *cc,I64 saved_mode,CHashClass *saved_tmpc, tmpf->type|=HTF_RESOLVE; return; case PRS0_EXTERN: - PrsFunJoin(cc,tmpc,st,fsp_flags); + ParseFunJoin(cc,tmpc,st,fsp_flags); return; case PRS0__IMPORT: if (!(fsp_flags&FSF__)) @@ -269,7 +269,7 @@ U0 PrsGlblVarLst(CCmpCtrl *cc,I64 saved_mode,CHashClass *saved_tmpc, if (!(cc->flags&CCF_AOT_COMPILE)) LexExcept(cc,"import not needed at "); else { - tmpf=PrsFunJoin(cc,tmpc,st,fsp_flags); + tmpf=ParseFunJoin(cc,tmpc,st,fsp_flags); tmpf->type|=HTF_IMPORT; if (mode&255==PRS0__IMPORT) tmpf->import_name=StrNew(val); @@ -278,7 +278,7 @@ U0 PrsGlblVarLst(CCmpCtrl *cc,I64 saved_mode,CHashClass *saved_tmpc, } return; default: - PrsFun(cc,tmpc,st,fsp_flags); + ParseFun(cc,tmpc,st,fsp_flags); return; } } else { @@ -414,7 +414,7 @@ U0 PrsGlblVarLst(CCmpCtrl *cc,I64 saved_mode,CHashClass *saved_tmpc, LexPush(cc); LexPush(cc); Lex(cc); - PrsGlblInit(cc,tmpg,1); + ParseGlblInit(cc,tmpg,1); LexPopNoRestore(cc); tmpg->size=tmpg->dim.total_cnt*tmpc->size; if (tmphg) @@ -429,7 +429,7 @@ U0 PrsGlblVarLst(CCmpCtrl *cc,I64 saved_mode,CHashClass *saved_tmpc, } LexPush(cc); Lex(cc); - PrsGlblInit(cc,tmpg,2); + ParseGlblInit(cc,tmpg,2); if (cc->flags&CCF_AOT_COMPILE) for (k=0;ksize;k++) AOTStoreCodeU8At(cc,tmpg->data_addr_rip+k,tmpg->data_addr[k]); @@ -456,34 +456,34 @@ U0 PrsGlblVarLst(CCmpCtrl *cc,I64 saved_mode,CHashClass *saved_tmpc, } } -U0 PrsIf(CCmpCtrl *cc,I64 try_cnt,CCodeMisc *lb_break) +U0 ParseIf(CCmpCtrl *cc,I64 try_cnt,CCodeMisc *lb_break) { CCodeMisc *lb,*lb1; I64 k; if (cc->token!='(') LexExcept(cc,"Expecting '(' at "); Lex(cc); - if (!PrsExpression(cc,NULL,FALSE)) + if (!ParseExpression(cc,NULL,FALSE)) throw('Compiler'); if (cc->token!=')') LexExcept(cc,"Missing ')' at "); Lex(cc); lb=COCMiscNew(cc,CMT_LABEL); ICAdd(cc,IC_BR_ZERO,lb,0); - PrsStmt(cc,try_cnt,lb_break); - k=PrsKeyWord(cc); + ParseStatement(cc,try_cnt,lb_break); + k=ParseKeyWord(cc); if (k==KW_ELSE) { Lex(cc); lb1=COCMiscNew(cc,CMT_LABEL); ICAdd(cc,IC_JMP,lb1,0); ICAdd(cc,IC_LABEL,lb,0); - PrsStmt(cc,try_cnt,lb_break); + ParseStatement(cc,try_cnt,lb_break); ICAdd(cc,IC_LABEL,lb1,0); } else ICAdd(cc,IC_LABEL,lb,0); } -U0 PrsWhile(CCmpCtrl *cc,I64 try_cnt) +U0 ParseWhile(CCmpCtrl *cc,I64 try_cnt) { CCodeMisc *lb,*lb_done; if (cc->token!='(') @@ -491,31 +491,31 @@ U0 PrsWhile(CCmpCtrl *cc,I64 try_cnt) Lex(cc); lb=COCMiscNew(cc,CMT_LABEL); ICAdd(cc,IC_LABEL,lb,0); - if (!PrsExpression(cc,NULL,FALSE)) + if (!ParseExpression(cc,NULL,FALSE)) throw('Compiler'); if (cc->token!=')') LexExcept(cc,"Missing ')' at "); Lex(cc); lb_done=COCMiscNew(cc,CMT_LABEL); ICAdd(cc,IC_BR_ZERO,lb_done,0); - PrsStmt(cc,try_cnt,lb_done); + ParseStatement(cc,try_cnt,lb_done); ICAdd(cc,IC_JMP,lb,0); ICAdd(cc,IC_LABEL,lb_done,0); } -U0 PrsDoWhile(CCmpCtrl *cc,I64 try_cnt) +U0 ParseDoWhile(CCmpCtrl *cc,I64 try_cnt) { CCodeMisc *lb,*lb_done; lb=COCMiscNew(cc,CMT_LABEL); lb_done=COCMiscNew(cc,CMT_LABEL); ICAdd(cc,IC_LABEL,lb,0); - PrsStmt(cc,try_cnt,lb_done); - if (PrsKeyWord(cc)!=KW_WHILE) + ParseStatement(cc,try_cnt,lb_done); + if (ParseKeyWord(cc)!=KW_WHILE) LexExcept(cc,"Missing 'while' at"); if (Lex(cc)!='(') LexExcept(cc,"Expecting '(' at "); Lex(cc); - if (!PrsExpression(cc,NULL,FALSE)) + if (!ParseExpression(cc,NULL,FALSE)) throw('Compiler'); if (cc->token!=')') LexExcept(cc,"Missing ')' at "); @@ -526,7 +526,7 @@ U0 PrsDoWhile(CCmpCtrl *cc,I64 try_cnt) Lex(cc); } -U0 PrsFor(CCmpCtrl *cc,I64 try_cnt) +U0 ParseFor(CCmpCtrl *cc,I64 try_cnt) { CCodeCtrl *tmpcbh; CCodeMisc *lb,*lb_done; @@ -534,11 +534,11 @@ U0 PrsFor(CCmpCtrl *cc,I64 try_cnt) if (cc->token!='(') LexExcept(cc,"Expecting '(' at "); Lex(cc); - PrsStmt(cc,try_cnt); + ParseStatement(cc,try_cnt); lb=COCMiscNew(cc,CMT_LABEL); ICAdd(cc,IC_LABEL,lb,0); - if (!PrsExpression(cc,NULL,FALSE)) + if (!ParseExpression(cc,NULL,FALSE)) throw('Compiler'); lb_done=COCMiscNew(cc,CMT_LABEL); ICAdd(cc,IC_BR_ZERO,lb_done,0); @@ -549,7 +549,7 @@ U0 PrsFor(CCmpCtrl *cc,I64 try_cnt) COCPush(cc); COCInit(cc); if (cc->token!=')') - PrsStmt(cc,try_cnt,NULL,0); + ParseStatement(cc,try_cnt,NULL,0); COCPush(cc); tmpcbh=COCPopNoFree(cc); COCPop(cc); @@ -557,7 +557,7 @@ U0 PrsFor(CCmpCtrl *cc,I64 try_cnt) LexExcept(cc,"Missing ')' at "); Lex(cc); - PrsStmt(cc,try_cnt,lb_done); + ParseStatement(cc,try_cnt,lb_done); COCAppend(cc,tmpcbh); ICAdd(cc,IC_JMP,lb,0); ICAdd(cc,IC_LABEL,lb_done,0); @@ -575,7 +575,7 @@ class CSwitchCase { CSubSwitch *ss; }; -U0 PrsSwitch(CCmpCtrl *cc,I64 try_cnt) +U0 ParseSwitch(CCmpCtrl *cc,I64 try_cnt) { CSwitchCase *header=NULL,*tmps,*tmps1; //Leaks on except CSubSwitch head,*tmpss; //Leaks on except @@ -600,7 +600,7 @@ U0 PrsSwitch(CCmpCtrl *cc,I64 try_cnt) mc_jt=COCMiscNew(cc,CMT_JMP_TABLE); mc_jt->begin=COCMiscNew(cc,CMT_LABEL); mc_jt->begin->use_cnt++; - if (!PrsExpression(cc,NULL,FALSE)) + if (!ParseExpression(cc,NULL,FALSE)) throw('Compiler'); tmpi_sub=ICAdd(cc,IC_IMM_I64,0,cmp.internal_types[RT_I64]); ICAdd(cc,IC_SUB,0,cmp.internal_types[RT_I64]); @@ -621,7 +621,7 @@ U0 PrsSwitch(CCmpCtrl *cc,I64 try_cnt) while (TRUE) { while (cc->token && cc->token!='}') { sw_cont: - switch (PrsKeyWord(cc)) { + switch (ParseKeyWord(cc)) { case KW_END: goto sw_sub_end; case KW_START: @@ -639,7 +639,7 @@ sw_cont: tmpss->lb_start=COCMiscNew(cc,CMT_LABEL); tmpi_start=ICAdd(cc,IC_LABEL,tmpss->lb_start,0); while (cc->token && cc->token!='}') { - switch (PrsKeyWord(cc)) { + switch (ParseKeyWord(cc)) { case KW_END: OptFree(tmpi_jmp); goto sw_sub_end; @@ -656,7 +656,7 @@ sw_cont: } goto sw_cont; default: - PrsStmt(cc,try_cnt); + ParseStatement(cc,try_cnt); } } break; @@ -739,7 +739,7 @@ sw_cont: dft_found=TRUE; break; default: - PrsStmt(cc,try_cnt,head.last->lb_break); + ParseStatement(cc,try_cnt,head.last->lb_break); } } sw_sub_end: @@ -753,7 +753,7 @@ sw_sub_end: } else { QueueRem(tmpss); Free(tmpss); - if (PrsKeyWord(cc)!=KW_END) + if (ParseKeyWord(cc)!=KW_END) LexExcept(cc,"Missing 'end' at "); if (Lex(cc)==':') Lex(cc); @@ -788,7 +788,7 @@ sw_sub_end: mc_jt->range=range; } -U0 PrsNoWarn(CCmpCtrl *cc) +U0 ParseNoWarn(CCmpCtrl *cc) { CMemberLst *tmpm; while (cc->token==TK_IDENT) { @@ -802,7 +802,7 @@ U0 PrsNoWarn(CCmpCtrl *cc) } } -U0 PrsStreamBlk(CCmpCtrl *cc) +U0 ParseStreamBlk(CCmpCtrl *cc) { CLexHashTableContext *htc=MAlloc(sizeof(CLexHashTableContext)); CStreamBlk *tmpe=MAlloc(sizeof(CStreamBlk)); @@ -839,7 +839,7 @@ U0 PrsStreamBlk(CCmpCtrl *cc) Lex(cc); //Skip '}' } -U0 PrsTryBlk(CCmpCtrl *cc,I64 try_cnt) +U0 ParseTryBlk(CCmpCtrl *cc,I64 try_cnt) { CCodeMisc *lb_catch,*lb_done,*lb_untry; CHashClass *tmpc=cmp.internal_types[RT_PTR]; @@ -874,7 +874,7 @@ U0 PrsTryBlk(CCmpCtrl *cc,I64 try_cnt) ICAdd(cc,IC_CALL_END,0,tmpc); ICAdd(cc,IC_END_EXP,0,0,ICF_RES_NOT_USED); - PrsStmt(cc,try_cnt+1); + ParseStatement(cc,try_cnt+1); ICAdd(cc,IC_LABEL,lb_untry,0); ICAdd(cc,IC_CALL_START,0,0); @@ -891,17 +891,17 @@ U0 PrsTryBlk(CCmpCtrl *cc,I64 try_cnt) ICAdd(cc,IC_JMP,lb_done,0); - if (PrsKeyWord(cc)!=KW_CATCH) + if (ParseKeyWord(cc)!=KW_CATCH) LexExcept(cc,"Missing 'catch' at"); Lex(cc); ICAdd(cc,IC_LABEL,lb_catch,0); - PrsStmt(cc,try_cnt+1); + ParseStatement(cc,try_cnt+1); ICAdd(cc,IC_RET,0,tmpc); ICAdd(cc,IC_LABEL,lb_done,0); } -Bool PrsStmt(CCmpCtrl *cc,I64 try_cnt=0, +Bool ParseStatement(CCmpCtrl *cc,I64 try_cnt=0, CCodeMisc *lb_break=NULL,I64 cmp_flags=CMPF_PRS_SEMICOLON) { I64 i,fsp_flags=0; @@ -912,7 +912,7 @@ Bool PrsStmt(CCmpCtrl *cc,I64 try_cnt=0, CAOT *tmpaot; if (cmp_flags&CMPF_ONE_ASM_INS) { if (cc->flags&CCF_AOT_COMPILE || cc->aot_depth) - PrsAsmBlk(cc,CMPF_ONE_ASM_INS); + ParseAsmBlk(cc,CMPF_ONE_ASM_INS); else if (tmpaot=CmpJoin(cc,CMPF_ASM_BLK|CMPF_ONE_ASM_INS)) CmpFixUpJITAsm(cc,tmpaot); fsp_flags=FSF_ASM; @@ -923,7 +923,7 @@ Bool PrsStmt(CCmpCtrl *cc,I64 try_cnt=0, if (cc->token=='{') { Lex(cc); while (cc->token!='}' && cc->token!=TK_EOF) - PrsStmt(cc,try_cnt,lb_break); + ParseStatement(cc,try_cnt,lb_break); if (cc->lex_include_stk==cc->fun_lex_file) cc->max_line=cc->lex_include_stk->line_num; if (Lex(cc)!=',') goto sm_done; @@ -949,7 +949,7 @@ Bool PrsStmt(CCmpCtrl *cc,I64 try_cnt=0, } else { if (cc->flags&CCF_AOT_COMPILE || cc->aot_depth) { Lex(cc); - PrsAsmBlk(cc,0); + ParseAsmBlk(cc,0); if (cc->flags&CCF_AOT_COMPILE && cc->aot_depth==1) Lex(cc); //Skip '}' of asm{} } else { @@ -964,26 +964,26 @@ Bool PrsStmt(CCmpCtrl *cc,I64 try_cnt=0, Lex(cc); case KW_LOCK: cc->lock_cnt++; - PrsStmt(cc,try_cnt); + ParseStatement(cc,try_cnt); cc->lock_cnt--; break; case KW_TRY: - PrsTryBlk(cc,try_cnt); + ParseTryBlk(cc,try_cnt); break; case KW_IF: - PrsIf(cc,try_cnt,lb_break); + ParseIf(cc,try_cnt,lb_break); break; case KW_FOR: - PrsFor(cc,try_cnt); + ParseFor(cc,try_cnt); break; case KW_WHILE: - PrsWhile(cc,try_cnt); + ParseWhile(cc,try_cnt); break; case KW_DO: - PrsDoWhile(cc,try_cnt); + ParseDoWhile(cc,try_cnt); break; case KW_SWITCH: - PrsSwitch(cc,try_cnt); + ParseSwitch(cc,try_cnt); break; end: end: @@ -1007,7 +1007,7 @@ Bool PrsStmt(CCmpCtrl *cc,I64 try_cnt=0, !(tmpex->type & (HTT_CLASS|HTT_INTERNAL_TYPE))) LexExcept(cc,"Expecting type at "); Lex(cc); - PrsGlblVarLst(cc,PRS0__EXTERN|PRS1_NULL,tmpex,i,fsp_flags); + ParseGlblVarLst(cc,PRS0__EXTERN|PRS1_NULL,tmpex,i,fsp_flags); break; case KW__IMPORT: sm_underscore_import: @@ -1021,7 +1021,7 @@ sm_underscore_import: !(tmpex->type & (HTT_CLASS|HTT_INTERNAL_TYPE))) LexExcept(cc,"Expecting type at "); Lex(cc); - PrsGlblVarLst(cc,PRS0__IMPORT|PRS1_NULL,tmpex, + ParseGlblVarLst(cc,PRS0__IMPORT|PRS1_NULL,tmpex, import_name,fsp_flags); Free(import_name); break; @@ -1029,10 +1029,10 @@ sm_underscore_import: if (cc->token!=TK_IDENT) LexExcept(cc,"Expecting type at "); tmpex=cc->hash_entry; - i=PrsKeyWord(cc); + i=ParseKeyWord(cc); if (i==KW_CLASS||i==KW_UNION) { Lex(cc); - PrsClass(cc,i,fsp_flags,TRUE); + ParseClass(cc,i,fsp_flags,TRUE); fsp_flags&=FSF_ASM; goto sm_semicolon; } @@ -1042,7 +1042,7 @@ sm_underscore_import: if (Bt(&cc->opts,OPTf_EXTERNS_TO_IMPORTS)) goto sm_import; Lex(cc); - PrsGlblVarLst(cc,PRS0_EXTERN|PRS1_NULL,tmpex,0,fsp_flags); + ParseGlblVarLst(cc,PRS0_EXTERN|PRS1_NULL,tmpex,0,fsp_flags); break; case KW_IMPORT: if (cc->token!=TK_IDENT || !(tmpex=cc->hash_entry) || @@ -1050,7 +1050,7 @@ sm_underscore_import: LexExcept(cc,"Expecting type at "); sm_import: Lex(cc); - PrsGlblVarLst(cc,PRS0_IMPORT|PRS1_NULL,tmpex,0,fsp_flags); + ParseGlblVarLst(cc,PRS0_IMPORT|PRS1_NULL,tmpex,0,fsp_flags); break; case KW__INTERN: i=LexExpressionI64(cc); @@ -1058,7 +1058,7 @@ sm_import: !(tmpex->type & (HTT_CLASS|HTT_INTERNAL_TYPE))) LexExcept(cc,"Expecting type at "); Lex(cc); - PrsGlblVarLst(cc,PRS0__INTERN|PRS1_NULL,tmpex,i,fsp_flags); + ParseGlblVarLst(cc,PRS0__INTERN|PRS1_NULL,tmpex,i,fsp_flags); break; end: fsp_flags&=FSF_ASM; @@ -1110,7 +1110,7 @@ sm_import: if (Lex(cc)!=';') { if (!cc->htc.fun->return_class->size) LexWarn(cc,"Function should NOT return val "); - if (!PrsExpression(cc,NULL,FALSE)) + if (!ParseExpression(cc,NULL,FALSE)) throw('Compiler'); ICAdd(cc,IC_RETURN_VAL,0,cc->htc.fun->return_class); cc->flags|=CCF_HAS_RETURN; @@ -1138,14 +1138,14 @@ sm_import: goto sm_semicolon; case KW_NO_WARN: Lex(cc); - PrsNoWarn(cc); + ParseNoWarn(cc); goto sm_semicolon; case KW_UNION: case KW_CLASS: Lex(cc); - tmpex=PrsClass(cc,i,fsp_flags,FALSE); + tmpex=ParseClass(cc,i,fsp_flags,FALSE); if (!cc->htc.fun && cc->token!=';') { - PrsGlblVarLst(cc,PRS0_NULL|PRS1_NULL,tmpex,0,fsp_flags); + ParseGlblVarLst(cc,PRS0_NULL|PRS1_NULL,tmpex,0,fsp_flags); fsp_flags&=FSF_ASM; break; } else { @@ -1158,13 +1158,13 @@ sm_not_keyword_afterall: if (tmpex->type & (HTT_CLASS|HTT_INTERNAL_TYPE)) { if (cc->htc.fun) { if (fsp_flags&FSF_STATIC) - PrsVarLst(cc,cc->htc.fun,PRS0_NULL|PRS1_STATIC_LOCAL_VAR); + ParseVarLst(cc,cc->htc.fun,PRS0_NULL|PRS1_STATIC_LOCAL_VAR); else - PrsVarLst(cc,cc->htc.fun,PRS0_NULL|PRS1_LOCAL_VAR); + ParseVarLst(cc,cc->htc.fun,PRS0_NULL|PRS1_LOCAL_VAR); if (cc->token=='}') goto sm_done; } else { Lex(cc); - PrsGlblVarLst(cc,PRS0_NULL|PRS1_NULL,tmpex,0,fsp_flags); + ParseGlblVarLst(cc,PRS0_NULL|PRS1_NULL,tmpex,0,fsp_flags); } } else { if (tmpex->type & (HTT_OPCODE|HTT_ASM_KEYWORD)) { @@ -1199,11 +1199,11 @@ sm_not_keyword_afterall: if (cc->token!=',') goto sm_done; } } else if (cc->token==TK_STR||cc->token==TK_CHAR_CONST) { - PrsFunCall(cc,NULL,FALSE,NULL); + ParseFunCall(cc,NULL,FALSE,NULL); goto sm_semicolon; } else if (cc->token!=TK_EOF) {//Non-cur_str symbol, num or something sm_prs_exp: - if (!PrsExpression(cc,NULL,TRUE)) + if (!ParseExpression(cc,NULL,TRUE)) throw('Compiler'); sm_semicolon: if (cmp_flags&CMPF_PRS_SEMICOLON) { diff --git a/src/Compiler/PrsVar.HC b/src/Compiler/ParseVar.HC similarity index 91% rename from src/Compiler/PrsVar.HC rename to src/Compiler/ParseVar.HC index 5aa5056d..ae4a21e0 100755 --- a/src/Compiler/PrsVar.HC +++ b/src/Compiler/ParseVar.HC @@ -1,4 +1,4 @@ -U0 PrsVarInit(CCmpCtrl *cc,U8 **_dst,CHashClass *tmpc,CArrayDim *tmpad, +U0 ParseVarInit(CCmpCtrl *cc,U8 **_dst,CHashClass *tmpc,CArrayDim *tmpad, U8 *data_addr_rip,U8 **_base,Bool data_heap,I64 pass) { U8 *dst=*_dst,*machine_code; @@ -18,7 +18,7 @@ U0 PrsVarInit(CCmpCtrl *cc,U8 **_dst,CHashClass *tmpc,CArrayDim *tmpad, LexPush(cc); Lex(cc); while (tmpm) { - PrsVarInit2(cc,&dst,tmpm->member_class,&tmpm->dim, + ParseVarInit2(cc,&dst,tmpm->member_class,&tmpm->dim, data_addr_rip,_base,data_heap,pass); if (cc->token==',') Lex(cc); @@ -68,7 +68,7 @@ U0 PrsVarInit(CCmpCtrl *cc,U8 **_dst,CHashClass *tmpc,CArrayDim *tmpad, ICAdd(cc,IC_ABS_ADDR,data_addr_rip,tmpc+1); ICAdd(cc,IC_IMM_I64,dst-*_base,tmpc+1); ICAdd(cc,IC_ADD,0,tmpc+1); - if (!PrsExpression(cc,NULL,TRUE)) + if (!ParseExpression(cc,NULL,TRUE)) throw('Compiler'); tmpi=cc->coc.coc_head.last; if (tmpi->ic_code==IC_END_EXP) { @@ -120,7 +120,7 @@ class CVI2 U0 base; }; -U0 PrsVarInit2(CCmpCtrl *cc,U8 **_dst,CHashClass *tmpc, +U0 ParseVarInit2(CCmpCtrl *cc,U8 **_dst,CHashClass *tmpc, CArrayDim *tmpad,U8 *data_addr_rip,U8 **_base,Bool data_heap,I64 pass) { I64 i,j,cnt; @@ -162,7 +162,7 @@ U0 PrsVarInit2(CCmpCtrl *cc,U8 **_dst,CHashClass *tmpc, while (cc->token!='}') { tmpvi=MAlloc(offset(CVI2.base)+tmpad1->total_cnt*tmpc->size); _b=&tmpvi->base; - PrsVarInit2(cc,&_b,tmpc,tmpad1,data_addr_rip,_base,data_heap,pass); + ParseVarInit2(cc,&_b,tmpc,tmpad1,data_addr_rip,_base,data_heap,pass); QueueInsert(tmpvi,head.last); if (cc->token==',') Lex(cc); @@ -189,7 +189,7 @@ U0 PrsVarInit2(CCmpCtrl *cc,U8 **_dst,CHashClass *tmpc, *_dst=_b; } else { for (i=0;icnt;i++) { - PrsVarInit2(cc,_dst,tmpc,tmpad1,data_addr_rip,_base,data_heap,pass); + ParseVarInit2(cc,_dst,tmpc,tmpad1,data_addr_rip,_base,data_heap,pass); if (tmpad1->cnt>1 && cc->token==',') Lex(cc); } @@ -198,21 +198,21 @@ U0 PrsVarInit2(CCmpCtrl *cc,U8 **_dst,CHashClass *tmpc, } } } else { - PrsVarInit(cc,_dst,tmpc,tmpad1,data_addr_rip,_base,data_heap,pass); + ParseVarInit(cc,_dst,tmpc,tmpad1,data_addr_rip,_base,data_heap,pass); LexPush(cc); } } -U0 PrsGlblInit(CCmpCtrl *cc,CHashGlblVar *tmpg,I64 pass) +U0 ParseGlblInit(CCmpCtrl *cc,CHashGlblVar *tmpg,I64 pass) { U8 *dst=tmpg->data_addr; - PrsVarInit2(cc,&dst,tmpg->var_class,&tmpg->dim, + ParseVarInit2(cc,&dst,tmpg->var_class,&tmpg->dim, tmpg->data_addr_rip,&tmpg->data_addr, Bt(&cc->opts,OPTf_GLBLS_ON_DATA_HEAP)|| Bt(&cc->flags,CCf_AOT_COMPILE),pass); } -U0 PrsStaticInit(CCmpCtrl *cc,CMemberLst *tmpm,I64 pass) +U0 ParseStaticInit(CCmpCtrl *cc,CMemberLst *tmpm,I64 pass) { U8 *machine_code,*dst=tmpm->static_data; CHashClass *tmpc=tmpm->member_class; @@ -223,7 +223,7 @@ U0 PrsStaticInit(CCmpCtrl *cc,CMemberLst *tmpm,I64 pass) COCPush(cc); COCInit(cc); } - PrsVarInit2(cc,&dst,tmpc,&tmpm->dim,tmpm->static_data_rip, + ParseVarInit2(cc,&dst,tmpc,&tmpm->dim,tmpm->static_data_rip, &tmpm->static_data,Bt(&cc->flags,CCf_AOT_COMPILE),pass); if (cc->flags&CCF_AOT_COMPILE && pass==2) { if (cc->coc.coc_head.next!=&cc->coc.coc_head) { @@ -244,7 +244,7 @@ U0 PrsStaticInit(CCmpCtrl *cc,CMemberLst *tmpm,I64 pass) } } -U0 PrsArrayDims(CCmpCtrl *cc,I64 mode,CArrayDim *dim) +U0 ParseArrayDims(CCmpCtrl *cc,I64 mode,CArrayDim *dim) {//dim->next!=0 for array CArrayDim *tmpad,*tmpad1; I64 j; @@ -282,7 +282,7 @@ U0 PrsArrayDims(CCmpCtrl *cc,I64 mode,CArrayDim *dim) } } -CHashClass *PrsType(CCmpCtrl *cc,CHashClass **_tmpc1, +CHashClass *ParseType(CCmpCtrl *cc,CHashClass **_tmpc1, I64 *_mode,CMemberLst *tmpm,U8 **_ident,CHashFun **_fun_ptr, CHashExport **_tmpex,CArrayDim *tmpad,I64 fsp_flags) { @@ -307,10 +307,10 @@ CHashClass *PrsType(CCmpCtrl *cc,CHashClass **_tmpc1, LexExcept(cc,"Too many *'s at "); } - k=PrsKeyWord(cc); + k=ParseKeyWord(cc); if (k==KW_UNION || k==KW_CLASS) { Lex(cc); - tmpc2=PrsClass(cc,k,fsp_flags,mode&255==PRS0_EXTERN); + tmpc2=ParseClass(cc,k,fsp_flags,mode&255==PRS0_EXTERN); tmpc2->fwd_class=tmpc1; tmpc1=tmpc2; if (_tmpc1) *_tmpc1=tmpc1; @@ -352,10 +352,10 @@ CHashClass *PrsType(CCmpCtrl *cc,CHashClass **_tmpc1, LexExcept(cc,"Missing ')' at "); if (Lex(cc)!='(') LexExcept(cc,"Expecting '(' at "); - fun_ptr=PrsFunJoin(cc,tmpc1,NULL,fsp_flags)+ptr_stars_cnt; + fun_ptr=ParseFunJoin(cc,tmpc1,NULL,fsp_flags)+ptr_stars_cnt; tmpc1=cmp.internal_types[RT_PTR]+ptr_stars_cnt; } - PrsArrayDims(cc,mode,tmpad); + ParseArrayDims(cc,mode,tmpad); tmpc2=OptClassFwd(tmpc1); if (tmpc2->ptr_stars_cnt) { @@ -370,7 +370,7 @@ CHashClass *PrsType(CCmpCtrl *cc,CHashClass **_tmpc1, return tmpc1; } -U0 PrsDotDotDot(CCmpCtrl *cc,CHashFun *tmpf,I64 _reg) +U0 ParseDotDotDot(CCmpCtrl *cc,CHashFun *tmpf,I64 _reg) { CMemberLst *tmpm; CArrayDim *tmpad; @@ -405,7 +405,7 @@ U0 PrsDotDotDot(CCmpCtrl *cc,CHashFun *tmpf,I64 _reg) Lex(cc); } -U0 PrsVarLst(CCmpCtrl *cc,CHashClass *tmpc,I64 mode,I64 union_base=0) +U0 ParseVarLst(CCmpCtrl *cc,CHashClass *tmpc,I64 mode,I64 union_base=0) { I64 i,k,old_flags=cc->flags,old_flags2,type,_reg; CHashClass *tmpc1,*tmpc2; @@ -448,7 +448,7 @@ U0 PrsVarLst(CCmpCtrl *cc,CHashClass *tmpc,I64 mode,I64 union_base=0) } _reg=REG_UNDEF; pvl_restart1: - switch (PrsKeyWord(cc)) { + switch (ParseKeyWord(cc)) { case KW_REG: _reg=REG_ALLOC; if (Lex(cc)==TK_IDENT) { @@ -466,7 +466,7 @@ pvl_restart1: } if (cc->token==TK_ELLIPSIS && mode.u8[1]==PRS1B_FUN_ARG) { - PrsDotDotDot(cc,tmpc,_reg); + ParseDotDotDot(cc,tmpc,_reg); goto pvl_done; } if (cc->token==TK_IDENT) @@ -475,10 +475,10 @@ pvl_restart1: tmph=NULL; if (!tmph) LexExcept(cc,"Expecting type at "); - k=PrsKeyWord(cc); + k=ParseKeyWord(cc); if (k==KW_UNION) { Lex(cc); - PrsVarLst(cc,tmpc,mode|PRSF_UNION,tmpc->size); + ParseVarLst(cc,tmpc,mode|PRSF_UNION,tmpc->size); } else { if (!(tmph->type & (HTT_CLASS|HTT_INTERNAL_TYPE))) LexExcept(cc,"Expecting type at "); @@ -495,7 +495,7 @@ pvl_restart2: } if (mode.u8[1]==PRS1B_FUN_ARG || mode.u8[1]==PRS1B_LOCAL_VAR) { pvl_restart3: - switch (PrsKeyWord(cc)) { + switch (ParseKeyWord(cc)) { case KW_REG: tmpm->reg=REG_ALLOC; LexPopNoRestore(cc); @@ -518,7 +518,7 @@ pvl_restart3: goto pvl_restart3; } } - tmpm->member_class=PrsType(cc,&tmpc1,&mode,tmpm,&tmpm->str, + tmpm->member_class=ParseType(cc,&tmpc1,&mode,tmpm,&tmpm->str, &tmpm->fun_ptr,NULL,&tmpm->dim,0); if (tmpm->fun_ptr) tmpm->flags|=MLF_FUN; @@ -560,7 +560,7 @@ pvl_restart3: LexPush(cc); LexPush(cc); Lex(cc); //skip = - PrsStaticInit(cc,tmpm,1); + ParseStaticInit(cc,tmpm,1); LexPopNoRestore(cc); i=tmpc2->size*tmpm->dim.total_cnt; k=(i+7)&~7; @@ -575,7 +575,7 @@ pvl_restart3: } LexPush(cc); Lex(cc); //skip = - PrsStaticInit(cc,tmpm,2); + ParseStaticInit(cc,tmpm,2); LexPopNoRestore(cc); if (cc->flags&CCF_AOT_COMPILE) for (k=0;kuse_cnt=0; cc->flags|=CCF_DONT_MAKE_RES; @@ -628,7 +628,7 @@ pvl_restart3: tmpm->size=8; if (cc->token=='=') { Lex(cc); - if (PrsKeyWord(cc)==KW_LASTCLASS) { + if (ParseKeyWord(cc)==KW_LASTCLASS) { tmpm->flags|=MLF_LASTCLASS; Lex(cc); } else { diff --git a/src/Demo/Lectures/MiniCompiler.HC b/src/Demo/Lectures/MiniCompiler.HC index 68e1dcd5..b4116cbb 100755 --- a/src/Demo/Lectures/MiniCompiler.HC +++ b/src/Demo/Lectures/MiniCompiler.HC @@ -2,7 +2,7 @@ $TR-C,"Main Compiler"$ $ID,2$The mini compiler is like the main compiler, except the main compiler's lexical analyser removes comments and does preprocessing.$LK,"Lex",A="MN:Lex"$(),$LK,"Echo",A="MN:Echo"$(ON). -The main compiler generates $LK,"Intermediate Code",A="FF:::/Compiler/CompilerA.HH,IC_END"$ at the parser stage.See $LK,"PrsExpression",A="MN:PrsExpression"$(), $LK,"PrsStmt",A="MN:PrsStmt"$(). +The main compiler generates $LK,"Intermediate Code",A="FF:::/Compiler/CompilerA.HH,IC_END"$ at the parser stage.See $LK,"ParseExpression",A="MN:ParseExpression"$(), $LK,"ParseStatement",A="MN:ParseStatement"$(). The main compiler optimizes See $LK,"Intermediate Code Attributes",A="MN:intermediate_code_table"$, $LK,"Combining Consts",A="FF:::/Compiler/OptPass012.HC,case IC_MUL"$, $LK,"Choosing Reg Vars",A="FF:::/Compiler/OptPass3.HC,cmp.num_reg_vars"$.Use $LK,"PassTrace",A="MN:PassTrace"$() to see the optimization stages. @@ -89,8 +89,8 @@ I64 Lex(U8 **_src,I64 *num) extern I64 Parse(U8 **_src,U8 **_dst); -U0 PrsTerm(U8 **_src,U8 **_dst,I64 prec) -{//See $LK,"PrsExpression",A="MN:PrsExpression"$(). +U0 ParseTerm(U8 **_src,U8 **_dst,I64 prec) +{//See $LK,"ParseExpression",A="MN:ParseExpression"$(). I64 i; U8 *src2; U8 *dst2; @@ -111,7 +111,7 @@ U0 PrsTerm(U8 **_src,U8 **_dst,I64 prec) } I64 Parse(U8 **_src,U8 **_dst) -{//See $LK,"PrsExpression",A="MN:PrsExpression"$(). +{//See $LK,"ParseExpression",A="MN:ParseExpression"$(). //See $LK,"Opcode Fmts",A="FF:::/Compiler/OpCodes.DD,IDIV"$ for details on asm insts. I64 i; U8 *dst=*_dst; @@ -130,7 +130,7 @@ I64 Parse(U8 **_src,U8 **_dst) *_dst=dst; return PREC_TERM; case TK_LEFT: - PrsTerm(_src,_dst,PREC_PAREN); + ParseTerm(_src,_dst,PREC_PAREN); if (Parse(_src,_dst)!=PREC_PAREN) throw; return PREC_TERM; @@ -139,7 +139,7 @@ I64 Parse(U8 **_src,U8 **_dst) case TK_OP: switch (i) { case OP_MUL: - PrsTerm(_src,&dst,PREC_MUL); + ParseTerm(_src,&dst,PREC_MUL); *dst++=0x5A; //POP RDX *dst++=0x58; //POP RAX @@ -152,7 +152,7 @@ I64 Parse(U8 **_src,U8 **_dst) *_dst=dst; return PREC_MUL; case OP_DIV: - PrsTerm(_src,&dst,PREC_MUL); + ParseTerm(_src,&dst,PREC_MUL); *dst++=0x5B; //POP RBX *dst++=0x58; //POP RAX @@ -167,7 +167,7 @@ I64 Parse(U8 **_src,U8 **_dst) *_dst=dst; return PREC_MUL; case OP_ADD: - PrsTerm(_src,&dst,PREC_ADD); + ParseTerm(_src,&dst,PREC_ADD); *dst++=0x5A; //POP RDX *dst++=0x58; //POP RAX @@ -179,7 +179,7 @@ I64 Parse(U8 **_src,U8 **_dst) *_dst=dst; return PREC_ADD; case OP_SUB: - PrsTerm(_src,&dst,PREC_ADD); + ParseTerm(_src,&dst,PREC_ADD); *dst++=0x5A; //POP RDX *dst++=0x58; //POP RAX @@ -211,7 +211,7 @@ U0 Main() src2=src; dst=code; try { - PrsTerm(&src2,&dst,PREC_PAREN); + ParseTerm(&src2,&dst,PREC_PAREN); if (Parse(&src2,&dst)!=PREC_EOF) throw; "$$RED$$This code is not efficient, but the compiler is simple.$$FG$$\n"; diff --git a/src/Demo/ToHtmlToTXTDemo/DemoInPage.DD b/src/Demo/ToHtmlToTXTDemo/DemoInPage.DD index ca2e1241..5dc3097c 100755 --- a/src/Demo/ToHtmlToTXTDemo/DemoInPage.DD +++ b/src/Demo/ToHtmlToTXTDemo/DemoInPage.DD @@ -4,8 +4,8 @@ $FG,4$$TX,"ZenithOS File Downloads (100% Public Domain)",HTML="http://www.temple ZenithOS is a free, public domain, open source, x86_64, non-preemptive multi-tasking, multi-cored, ring-0-only, single-address-map (identity-mapped), non-networked, PC operating system. Paging is, basically, not used. -The CIA obsfucates to foil India, China, Russia and Korea. They make things more complicated than necessary. ZenithOS is more simple than necessary. It is obnoxiously simple. If you look at this $TX,"\"Hello World\" joke",HTML="http://www.ariel.com.au/jokes/The_Evolution_of_a_Programmer.html"$, you can see why I capped the line count of ZenithOS at 100,000. +The CIA obsfucates to foil India, China, Russia and Korea. They make things more complicated than necessary. ZenithOS is more simple than necessary. It is obnoxiously simple. If you look at this $TX,"\"Hello World\" joke",HTML="http://www.ariel.com.au/jokes/The_Evolution_of_a_Programmer.html"$, you can see why I capped the line count of TempleOS at 100,000. -God said ZenithOS must be perfect, so backward compatibility is not promised. +God said TempleOS must be perfect, so backward compatibility is not promised. -I, Terry Davis, wrote all $TX,"80,847",D="DD_TEMPLEOS_LOC"$ lines of ZenithOS over the last $TX,"13.9",D="DD_TEMPLEOS_AGE"$ years, including the 64-bit compiler. I have been a professional operating system developer since 1990 when I worked on Ticketmaster's VAX OS. +I, Terry Davis, wrote all $TX,"80,849",D="DD_TEMPLEOS_LOC"$ lines of TempleOS over the last $TX,"16.5",D="DD_TEMPLEOS_AGE"$ years, including the 64-bit compiler. I have been a professional operating system developer since 1990 when I worked on Ticketmaster's VAX OS. diff --git a/src/Demo/WebLogDemo/WebLogRep.HC b/src/Demo/WebLogDemo/WebLogRep.HC index 4456999c..76d9bd40 100755 --- a/src/Demo/WebLogDemo/WebLogRep.HC +++ b/src/Demo/WebLogDemo/WebLogRep.HC @@ -33,7 +33,7 @@ U0 LogStructDel(LogStruct *tmplg) Free(tmplg); } -U0 PrsSingleLogFile(LogStruct *head,U8 *name,CDate *_dstart,CDate *_dend) +U0 ParseSingleLogFile(LogStruct *head,U8 *name,CDate *_dstart,CDate *_dend) { CDoc *doc=DocRead(name, DOCF_PLAIN_TEXT_TABS|DOCF_DBL_DOLLARS|DOCF_NO_CURSOR); @@ -128,13 +128,13 @@ U0 PrsSingleLogFile(LogStruct *head,U8 *name,CDate *_dstart,CDate *_dend) DocDel(doc); } -LogStruct *PrsLogFiles(U8 *files_find_mask,CDate *_dstart,CDate *_dend) +LogStruct *ParseLogFiles(U8 *files_find_mask,CDate *_dstart,CDate *_dend) { LogStruct *head=CAlloc(sizeof(LogStruct)); CDirEntry *tmpde=FilesFind(files_find_mask),*tmpde1=tmpde; QueueInit(head); while (tmpde) { - PrsSingleLogFile(head,tmpde->full_name,_dstart,_dend); + ParseSingleLogFile(head,tmpde->full_name,_dstart,_dend); tmpde=tmpde->next; } DirTreeDel(tmpde1); @@ -500,7 +500,7 @@ U0 WebLogRep(U8 *mask,U8 *output_filename) DocMax; - head=PrsLogFiles(mask,&dstart,&dend); + head=ParseLogFiles(mask,&dstart,&dend); if (dstart>dend) PrintErr("No Data.\n"); else { diff --git a/src/Doc/DolDocOverview.DD b/src/Doc/DolDocOverview.DD index aa372b4a..c80c14aa 100755 --- a/src/Doc/DolDocOverview.DD +++ b/src/Doc/DolDocOverview.DD @@ -15,7 +15,7 @@ The format of DolDoc cmds is a two character code, +/-flags, a comma and args se See $LK,"::/Doc/Widget.DD"$, $LK,"::/Demo/DolDoc/DemoDoc.DD"$, and $LK,"::/Demo/ToHtmlToTXTDemo/ToHtml.HC"$. -<$LK,"TwoLetterCmd",A="FF:::/Zenith/DolDoc/DocInit.HC,ST_DOC_CMDS"$> See $LK,"Type Defines",A="MN:DOCT_TEXT"$ and $LK,"PrsDollarCmd",A="MN:PrsDollarCmd"$(). +<$LK,"TwoLetterCmd",A="FF:::/Zenith/DolDoc/DocInit.HC,ST_DOC_CMDS"$> See $LK,"Type Defines",A="MN:DOCT_TEXT"$ and $LK,"ParseDollarCmd",A="MN:ParseDollarCmd"$(). $TR,"TX Text"$ $ID,2$Normally, text is not bracketed with '$FG,2$$$$FG$', but if you wish to specify flag attr, such as centering text, you can bracket them with '$FG,2$$$$FG$' and enter flags such as "$FG,2$+CX$FG$". You can't edit them normally if they are bracketed by '$FG,2$$$$FG$' unless you toggle to plain text mode with $FG,2$$FG$. $ID,-2$$TR,"CR Hard New Line"$ diff --git a/src/Doc/Glossary.DD b/src/Doc/Glossary.DD index bf72492f..d2e5596a 100755 --- a/src/Doc/Glossary.DD +++ b/src/Doc/Glossary.DD @@ -109,7 +109,7 @@ $FG,2$Prev$FG$ Previous $FG,2$Pri$FG$ Primary $FG,2$Prod$FG$ Product, Production $FG,2$Prof$FG$ Profile, Profiler -$FG,2$Prs$FG$ Parse, Parser +$FG,2$Parse$FG$ Parse, Parser $FG,2$Prt$FG$ Partition $FG,2$FunSeg$FG$ Program Section $FG,2$Pt$FG$ Point @@ -139,7 +139,7 @@ $FG,2$Srv$FG$ Servant $FG,2$Stat$FG$ Status, Statistic $FG,2$Std$FG$ Standard $FG,2$Stk$FG$ Stack -$FG,2$Stmt$FG$ Statement +$FG,2$Statement$FG$ Statement $FG,2$Str$FG$ String $FG,2$Sym$FG$ Symbol $FG,2$Sync$FG$ Synchronization diff --git a/src/Kernel.BIN.C b/src/Kernel.BIN.C index 38ab7b21..6ee36e36 100755 Binary files a/src/Kernel.BIN.C and b/src/Kernel.BIN.C differ diff --git a/src/Kernel/KGlbls.HC b/src/Kernel/KGlbls.HC index c080c303..73789f55 100755 --- a/src/Kernel/KGlbls.HC +++ b/src/Kernel/KGlbls.HC @@ -1,5 +1,5 @@ //Compiler initializes glbls in AOT bin modules to zero. -//$LK,"Globals Set to Zero Here",A="FF:::/Compiler/PrsStmt.HC,Init AOT glbl to zero"$. +//$LK,"Globals Set to Zero Here",A="FF:::/Compiler/ParseStatement.HC,Init AOT glbl to zero"$. CJob sys_macro_head; CTask *sys_macro_task; @@ -13,7 +13,7 @@ U8 *rev_bits_table, //Table with U8 bits revd *set_bits_table; //Table with count of set bits in a U8 CDate local_time_offset; F64 *pow10_I64, - sys_os_version=0.10; + sys_os_version=0.10; CAutoCompleteDictGlbls acd; CAutoCompleteGlbls ac; diff --git a/src/Kernel/KTask.HC b/src/Kernel/KTask.HC index 4007f09d..0326d893 100755 --- a/src/Kernel/KTask.HC +++ b/src/Kernel/KTask.HC @@ -336,7 +336,7 @@ I64 ExeCmdLine(CCmpCtrl *cc) MemCpy(ptr2,ptr,STR_LEN-1); } cc->flags&=~CCF_HAS_MISC_DATA; - machine_code=LexStmt2Bin(cc,&type); + machine_code=LexStatement2Bin(cc,&type); if (machine_code!=INVALID_PTR) { if (!(cc->flags&CCF_JUST_LOAD)) { t0=tS; diff --git a/src/Kernel/KernelA.HH b/src/Kernel/KernelA.HH index 7c5f322f..9e1d2eae 100755 --- a/src/Kernel/KernelA.HH +++ b/src/Kernel/KernelA.HH @@ -836,7 +836,7 @@ public class CHashDefineStr:CHashSrcSym #define Cf_INTERNAL_TYPE 1 public class CHashClass:CHashSrcSym -{//See $LK,"PrsClassNew",A="MN:PrsClassNew"$(). base_class of $LK,"CHashFun",A="MN:CHashFun"$ +{//See $LK,"ParseClassNew",A="MN:ParseClassNew"$(). base_class of $LK,"CHashFun",A="MN:CHashFun"$ I64 size,neg_offset; U32 member_cnt; U8 ptr_stars_cnt,raw_type; @@ -859,7 +859,7 @@ public class CHashClass:CHashSrcSym #define Ff_RET1 15 public class CHashFun:CHashClass -{//See $LK,"PrsFunNew",A="MN:PrsFunNew"$(). +{//See $LK,"ParseFunNew",A="MN:ParseFunNew"$(). CHashClass *return_class; U32 arg_cnt,pad, used_reg_mask,clobbered_reg_mask; @@ -1821,7 +1821,7 @@ I64 class CAbsCntsI64 }; class CAsmUndefHash -{//Only place created is $LK,"Exp Parser",A="FF:::/Compiler/PrsExp.HC,sizeof(CAsmUndefHash)"$ when an undef is found in an ASM exp. +{//Only place created is $LK,"Exp Parser",A="FF:::/Compiler/ParseExp.HC,sizeof(CAsmUndefHash)"$ when an undef is found in an ASM exp. CAsmUndefHash *next; CHashExport *hash; }; diff --git a/src/Tmp/MyDistro.iso b/src/Tmp/MyDistro.iso index 967ec4a3..4c5b6c39 100755 Binary files a/src/Tmp/MyDistro.iso and b/src/Tmp/MyDistro.iso differ diff --git a/src/Zenith/DolDoc/DocCodeTools.HC b/src/Zenith/DolDoc/DocCodeTools.HC index 2988edce..a3878f70 100755 --- a/src/Zenith/DolDoc/DocCodeTools.HC +++ b/src/Zenith/DolDoc/DocCodeTools.HC @@ -70,7 +70,7 @@ I64 EdRILex(CRILex *rx) do { Lex(rx->cc1); Lex(rx->cc2); - i=PrsKeyWord(rx->cc2); + i=ParseKeyWord(rx->cc2); if (rx->cc1->token=='\n' && rx->cc2->token==';' || rx->cc2->token=='{' || rx->cc2->token=='}' || rx->cc2->token==':' || rx->cc2->token==')' && !rx->exp_depth || i==KW_ELSE || i==KW_CATCH || i==KW_DO) @@ -117,7 +117,7 @@ U0 EdRIExp(CRILex *rx) EdRILex(rx); } -U0 EdRIStmt(CRILex *rx,Bool indent) +U0 EdRIStatement(CRILex *rx,Bool indent) { I64 i; Bool cont; @@ -125,55 +125,55 @@ U0 EdRIStmt(CRILex *rx,Bool indent) rx->depth++; EdRILex(rx); while (rx->cc1->token && rx->cc1->token!='}') - EdRIStmt(rx,FALSE); + EdRIStatement(rx,FALSE); if (--rx->depth<0) rx->depth=0; EdRILex(rx); } else { if (indent) rx->depth++; do { cont=FALSE; - switch (PrsKeyWord(rx->cc1)) { + switch (ParseKeyWord(rx->cc1)) { case KW_IF: EdRILex(rx); EdRIExp(rx); - EdRIStmt(rx,TRUE); - if (PrsKeyWord(rx->cc1)==KW_ELSE) { + EdRIStatement(rx,TRUE); + if (ParseKeyWord(rx->cc1)==KW_ELSE) { EdRILex(rx); - if (PrsKeyWord(rx->cc1)==KW_IF && rx->cc2->token!='\n') - EdRIStmt(rx,FALSE); + if (ParseKeyWord(rx->cc1)==KW_IF && rx->cc2->token!='\n') + EdRIStatement(rx,FALSE); else - EdRIStmt(rx,TRUE); + EdRIStatement(rx,TRUE); } break; case KW_TRY: EdRILex(rx); - EdRIStmt(rx,TRUE); - if (PrsKeyWord(rx->cc1)==KW_CATCH) { + EdRIStatement(rx,TRUE); + if (ParseKeyWord(rx->cc1)==KW_CATCH) { EdRILex(rx); - EdRIStmt(rx,TRUE); + EdRIStatement(rx,TRUE); } break; case KW_LOCK: EdRILex(rx); - EdRIStmt(rx,TRUE); + EdRIStatement(rx,TRUE); break; case KW_FOR: case KW_WHILE: EdRILex(rx); EdRIExp(rx); - EdRIStmt(rx,TRUE); + EdRIStatement(rx,TRUE); break; case KW_ASM: case KW_CLASS: case KW_UNION: if (EdRILex(rx)==TK_IDENT) EdRILex(rx); - EdRIStmt(rx,TRUE); + EdRIStatement(rx,TRUE); break; case KW_DO: EdRILex(rx); - EdRIStmt(rx,TRUE); - if (PrsKeyWord(rx->cc1)==KW_WHILE) { + EdRIStatement(rx,TRUE); + if (ParseKeyWord(rx->cc1)==KW_WHILE) { EdRILex(rx); EdRIExp(rx); } @@ -188,7 +188,7 @@ U0 EdRIStmt(CRILex *rx,Bool indent) EdRILex(rx); i=0; while (rx->cc1->token && rx->cc1->token!='}') { - switch (PrsKeyWord(rx->cc1)) { + switch (ParseKeyWord(rx->cc1)) { case KW_START: rx->depth+=i; i=0; while (EdRILex(rx) && rx->cc1->token!=':'); @@ -209,7 +209,7 @@ U0 EdRIStmt(CRILex *rx,Bool indent) break; default: if (rx->cc1->token) - EdRIStmt(rx,TRUE); + EdRIStatement(rx,TRUE); } } if (--rx->depth<0) rx->depth=0; @@ -259,7 +259,7 @@ CQueueVectU8 *EdRICode(CDoc *doc) rx->indent=QueueVectU8New(doc->cur_entry->y); Lex(rx->cc1); - EdRIStmt(rx,FALSE); + EdRIStatement(rx,FALSE); CmpCtrlDel(rx->cc1); CmpCtrlDel(rx->cc2); diff --git a/src/Zenith/DolDoc/DocInit.HC b/src/Zenith/DolDoc/DocInit.HC index b5cfbe85..697b8a1d 100755 --- a/src/Zenith/DolDoc/DocInit.HC +++ b/src/Zenith/DolDoc/DocInit.HC @@ -35,7 +35,7 @@ U0 DocInit() if (tmph=HashFind(cc->cur_str,doldoc.hash,DHT_DOC_CMD)) { i=tmph->user_data0; Lex(cc); - PrsDocFlags(cc,&doldoc.dft_de_flags[i],&doldoc.dft_type_flags[i]); + ParseDocFlags(cc,&doldoc.dft_de_flags[i],&doldoc.dft_type_flags[i]); } if (cc->token==';') Lex(cc); diff --git a/src/Zenith/DolDoc/DocPlain.HC b/src/Zenith/DolDoc/DocPlain.HC index 6e1287fb..f9721129 100755 --- a/src/Zenith/DolDoc/DocPlain.HC +++ b/src/Zenith/DolDoc/DocPlain.HC @@ -1,6 +1,6 @@ #help_index "DolDoc" -I64 PrsDocFlagSingle(CCmpCtrl *cc,I64 *_de_flags,U32 *_type,Bool turn_on) +I64 ParseDocFlagSingle(CCmpCtrl *cc,I64 *_de_flags,U32 *_type,Bool turn_on) { I64 res=-1; CHashGeneric *tmph; @@ -23,7 +23,7 @@ I64 PrsDocFlagSingle(CCmpCtrl *cc,I64 *_de_flags,U32 *_type,Bool turn_on) return res; } -I64 PrsDocFlags(CCmpCtrl *cc,I64 *_de_flags,U32 *_type) +I64 ParseDocFlags(CCmpCtrl *cc,I64 *_de_flags,U32 *_type) { I64 res=-1; Bool turn_on; @@ -35,7 +35,7 @@ I64 PrsDocFlags(CCmpCtrl *cc,I64 *_de_flags,U32 *_type) else break; Lex(cc); - res=PrsDocFlagSingle(cc,_de_flags,_type,turn_on); + res=ParseDocFlagSingle(cc,_de_flags,_type,turn_on); } return res; } @@ -214,7 +214,7 @@ U8 *Doc2PlainText(CDoc *doc,CDocEntry *doc_e) return buf2; } -CDocEntry *PrsDollarCmd(CDoc *doc,U8 *st) +CDocEntry *ParseDollarCmd(CDoc *doc,U8 *st) {//Uses $LK-UL,"Lex",A="MN:Lex"$() to parse a string and make Doc entries. I64 i,j,de_flags,processed_flags,attr=DOC_DFT; U8 *ptr,*st2; @@ -241,7 +241,7 @@ CDocEntry *PrsDollarCmd(CDoc *doc,U8 *st) doc_e->type|=doldoc.dft_type_flags[i]; doc_e->raw_type=RT_I64; doc_e->len=DOCE_LEN_DFT; - j=PrsDocFlags(cc,&doc_e->de_flags,&doc_e->type); + j=ParseDocFlags(cc,&doc_e->de_flags,&doc_e->type); cc->htc.hash_table_lst=old_hash_table_lst; switch [i] { case DOCT_CHECK_BOX: @@ -296,7 +296,7 @@ CDocEntry *PrsDollarCmd(CDoc *doc,U8 *st) while (cc->token==',') Lex(cc); cc->htc.hash_table_lst=old_hash_table_lst; - j=PrsDocFlagSingle(cc,&doc_e->de_flags,&doc_e->type,TRUE); + j=ParseDocFlagSingle(cc,&doc_e->de_flags,&doc_e->type,TRUE); if (!(de_flags=~processed_flags & doc_e->de_flags & DOCEG_HAS_ARG)) break; if (cc->token=='=') diff --git a/src/Zenith/DolDoc/DocPutS.HC b/src/Zenith/DolDoc/DocPutS.HC index c2c68a7c..1e5fbed3 100755 --- a/src/Zenith/DolDoc/DocPutS.HC +++ b/src/Zenith/DolDoc/DocPutS.HC @@ -117,7 +117,7 @@ CDocEntry *DocPutS(CDoc *doc,U8 *st) *ptr4++=ch; } *ptr4=0; - if (doc_e=PrsDollarCmd(doc,st2)) { + if (doc_e=ParseDollarCmd(doc,st2)) { res=doc_e; DocInsEntry(doc,doc_e); } diff --git a/src/Zenith/Gr/MakeGr.HC b/src/Zenith/Gr/MakeGr.HC index 94a5f846..745dc141 100755 --- a/src/Zenith/Gr/MakeGr.HC +++ b/src/Zenith/Gr/MakeGr.HC @@ -10,11 +10,11 @@ Cd(__DIR__);; #include "GrDC" #include "GrInitB" #include "GrMath" -#include "GrScreen" +#include "GrScreen" #include "GrBitMap" #include "GrPrimatives" #include "GrComposites" -#include "ScrnCast" +#include "ScreenCast" #define SPE_ABORT (-1) #define SPE_EXIT 0