|
| #define | __IR_BI__ |
| |
| #define | irGetOption(op) /* ((ir.options and op) <> 0) */ |
| |
| #define | irSetOption(op) /* ir.options or= op */ |
| |
| #define | irGetOptionValue(opt) /* ir.vtbl.getOptionValue( opt ) */ |
| |
| #define | irAllocVreg(dtype, stype) /* ir.vtbl.allocVreg( dtype, stype ) */ |
| |
| #define | irSetVregDataType(v, dtype, stype) /* ir.vtbl.setVregDataType( v, dtype, stype ) */ |
| |
| #define | irAllocVrImm(dtype, stype, value) /* ir.vtbl.allocVrImm( dtype, stype, value ) */ |
| |
| #define | irAllocVrImmF(dtype, stype, value) /* ir.vtbl.allocVrImmF( dtype, stype, value ) */ |
| |
| #define | irAllocVrVar(dtype, stype, sym, ofs) /* ir.vtbl.allocVrVar( dtype, stype, sym, ofs ) */ |
| |
| #define | irAllocVrIdx(dtype, stype, sym, ofs, mult, vidx) /* ir.vtbl.allocVrIdx( dtype, stype, sym, ofs, mult, vidx ) */ |
| |
| #define | irAllocVrPtr(dtype, stype, ofs, vidx) /* ir.vtbl.allocVrPtr( dtype, stype, ofs, vidx ) */ |
| |
| #define | irAllocVrOfs(dtype, stype, sym, ofs) /* ir.vtbl.allocVrOfs( dtype, stype, sym, ofs ) */ |
| |
| #define | irProcBegin(proc) /* ir.vtbl.procBegin( proc ) */ |
| |
| #define | irProcEnd(proc) /* ir.vtbl.procEnd( proc ) */ |
| |
| #define | irScopeBegin(s) /* ir.vtbl.scopeBegin( s ) */ |
| |
| #define | irScopeEnd(s) /* ir.vtbl.scopeEnd( s ) */ |
| |
| #define | irProcAllocArg(proc, s) /* ir.vtbl.procAllocArg( proc, s ) */ |
| |
| #define | irProcAllocLocal(proc, s) /* ir.vtbl.procAllocLocal( proc, s ) */ |
| |
| #define | irProcAllocStaticVars(head_sym) /* ir.vtbl.procAllocStaticVars( head_sym ) */ |
| |
| #define | irProcGetFrameRegName() /* ir.vtbl.procGetFrameRegName( ) */ |
| |
| #define | irEmitBegin() /* ir.vtbl.emitBegin( ) */ |
| |
| #define | irEmitEnd(tottime) /* ir.vtbl.emitEnd( tottime ) */ |
| |
| #define | irEmitPROCBEGIN(proc, initlabel) /* ir.vtbl.emitProcBegin( proc, initlabel ) */ |
| |
| #define | irEmitPROCEND(proc, initlabel, exitlabel) /* ir.vtbl.emitProcEnd( proc, initlabel, exitlabel ) */ |
| |
| #define | irEmitVARINIBEGIN(sym) /* ir.vtbl.emitVarIniBegin( sym ) */ |
| |
| #define | irEmitVARINIEND(sym) /* ir.vtbl.emitVarIniEnd( sym ) */ |
| |
| #define | irEmitVARINIi(sym, value) /* ir.vtbl.emitVarIniI( sym, value ) */ |
| |
| #define | irEmitVARINIf(sym, value) /* ir.vtbl.emitVarIniF( sym, value ) */ |
| |
| #define | irEmitVARINIOFS(sym, ofs) /* ir.vtbl.emitVarIniOfs( sym, ofs ) */ |
| |
| #define | irEmitVARINISTR(totlgt, litstr, litlgt) /* ir.vtbl.emitVarIniStr( totlgt, litstr, litlgt ) */ |
| |
| #define | irEmitVARINIWSTR(totlgt, litstr, litlgt) /* ir.vtbl.emitVarIniWstr( totlgt, litstr, litlgt ) */ |
| |
| #define | irEmitVARINIPAD(bytes) /* ir.vtbl.emitVarIniPad( bytes ) */ |
| |
| #define | irEmitVARINISCOPEBEGIN() /* ir.vtbl.emitVarIniScopeBegin( ) */ |
| |
| #define | irEmitVARINISCOPEEND() /* ir.vtbl.emitVarIniScopeEnd( ) */ |
| |
| #define | irEmitFBCTINFBEGIN() /* ir.vtbl.emitFbctinfBegin( ) */ |
| |
| #define | irEmitFBCTINFSTRING(s) /* ir.vtbl.emitFbctinfString( s ) */ |
| |
| #define | irEmitFBCTINFEND() /* ir.vtbl.emitFbctinfEnd( ) */ |
| |
| #define | irEmitCONVERT(v1, v2) /* ir.vtbl.emitConvert( v1, v2 ) */ |
| |
| #define | irEmitLABEL(label) /* ir.vtbl.emitLabel( label ) */ |
| |
| #define | irEmitRETURN(bytestopop) /* ir.vtbl.emitReturn( bytestopop ) */ |
| |
| #define | irEmitPUSHARG(param, vr, plen, level) /* ir.vtbl.emitPushArg( param, vr, plen, level ) */ |
| |
| #define | irEmitAsmBegin() /* ir.vtbl.emitAsmBegin( ) */ |
| |
| #define | irEmitAsmText(text) /* ir.vtbl.emitAsmText( text ) */ |
| |
| #define | irEmitAsmSymb(sym) /* ir.vtbl.emitAsmSymb( sym ) */ |
| |
| #define | irEmitAsmEnd() /* ir.vtbl.emitAsmEnd( ) */ |
| |
| #define | irEmitCOMMENT(text) /* ir.vtbl.emitComment( text ) */ |
| |
| #define | irEmitJMPTB(v1, tbsym, values, labels, labelcount, deflabel, minval, maxval) /* ir.vtbl.emitJmpTb( v1, tbsym, values, labels, labelcount, deflabel, minval, maxval ) */ |
| |
| #define | irGetDistance(vreg) /* ir.vtbl.getDistance( vreg ) */ |
| |
| #define | irLoadVR(reg, vreg, vauxparent) /* ir.vtbl.loadVR( reg, vreg, vauxparent ) */ |
| |
| #define | irStoreVR(vreg, vauxparent) /* ir.vtbl.storeVR( vreg, vauxparent ) */ |
| |
| #define | irXchgTOS(reg) /* ir.vtbl.xchgTOS( reg ) */ |
| |
| #define | irEmitBOP(op, v1, v2, vr, ex) /* ir.vtbl.emitBop( op, v1, v2, vr, ex ) */ |
| |
| #define | irEmitUOP(op, v1, vr) /* ir.vtbl.emitUop( op, v1, vr ) */ |
| |
| #define | irEmitSTORE(v1, v2) /* ir.vtbl.emitStore( v1, v2 ) */ |
| |
| #define | irEmitSPILLREGS() /* ir.vtbl.emitSpillRegs( ) */ |
| |
| #define | irEmitLOAD(v1) /* ir.vtbl.emitLoad( v1 ) */ |
| |
| #define | irEmitLOADRES(v1, vr) /* ir.vtbl.emitLoadRes( v1, vr ) */ |
| |
| #define | irEmitSTACK(op, v1) /* ir.vtbl.emitStack( op, v1 ) */ |
| |
| #define | irEmitPUSH(v1) /* ir.vtbl.emitStack( AST_OP_PUSH, v1 ) */ |
| |
| #define | irEmitPOP(v1) /* ir.vtbl.emitStack( AST_OP_POP, v1 ) */ |
| |
| #define | irEmitADDR(op, v1, vr) /* ir.vtbl.emitAddr( op, v1, vr ) */ |
| |
| #define | irEmitLABELNF(s) /* ir.vtbl.emitLabelNF( s ) */ |
| |
| #define | irEmitCALLFUNCT(proc, bytestopop, vr, level) /* ir.vtbl.emitCall( proc, bytestopop, vr, level ) */ |
| |
| #define | irEmitCALLPTR(v1, vr, bytestopop, level) /* ir.vtbl.emitCallPtr( v1, vr, bytestopop, level ) */ |
| |
| #define | irEmitSTACKALIGN(bytes) /* ir.vtbl.emitStackAlign( bytes ) */ |
| |
| #define | irEmitJUMPPTR(v1) /* ir.vtbl.emitJumpPtr( v1 ) */ |
| |
| #define | irEmitBRANCH(op, label) /* ir.vtbl.emitBranch( op, label ) */ |
| |
| #define | irEmitMEM(op, v1, v2, bytes) /* ir.vtbl.emitMem( op, v1, v2, bytes ) */ |
| |
| #define | irEmitSCOPEBEGIN(s) /* ir.vtbl.emitScopeBegin( s ) */ |
| |
| #define | irEmitSCOPEEND(s) /* ir.vtbl.emitScopeEnd( s ) */ |
| |
| #define | irEmitDBG(op, proc, ex) /* ir.vtbl.emitDBG( op, proc, ex ) */ |
| |
| #define | irEmitDECL(sym) /* ir.vtbl.emitDECL( sym ) */ |
| |
| #define | irIsREG(v) /* (v->typ = IR_VREGTYPE_REG) */ |
| |
| #define | irIsIMM(v) /* (v->typ = IR_VREGTYPE_IMM) */ |
| |
| #define | irIsVAR(v) /* (v->typ = IR_VREGTYPE_VAR) */ |
| |
| #define | irIsIDX(v) /* (v->typ = IR_VREGTYPE_IDX) */ |
| |
| #define | irIsPTR(v) /* (v->typ = IR_VREGTYPE_PTR) */ |
| |
| #define | irGetVRType(v) /* v->typ */ |
| |
| #define | irGetVRDataType(v) /* v->dtype */ |
| |
| #define | irGetVRSubType(v) /* v->subtype */ |
| |
| #define | irGetVROfs(v) /* v->ofs */ |
| |
| #define | irGetVRValueI(v) /* v->value.int */ |
| |
| #define | ISLONGINT(t) /* ((t = FB_DATATYPE_LONGINT) or (t = FB_DATATYPE_ULONGINT)) */ |
| |