FreeBASIC
0.91.0
|
#include "fb.bi"
#include "fbint.bi"
#include "reg.bi"
#include "emit.bi"
#include "flist.bi"
#include "ir.bi"
#include "hlp.bi"
Go to the source code of this file.
Data Structures | |
class | IRTAC_CTX |
Macros | |
#define | hGetVREG(vreg, dt, dc, t) |
#define | hRelinkVreg(v, t) |
Functions | |
sub | hFlushUOP (byval_as_integer op, byval_as_IRVREG_ptr v1, byval_as_IRVREG_ptr vr) |
sub | hFlushBOP (byval_as_integer op, byval_as_IRVREG_ptr v1, byval_as_IRVREG_ptr v2, byval_as_IRVREG_ptr vr) |
sub | hFlushCOMP (byval_as_integer op, byval_as_IRVREG_ptr v1, byval_as_IRVREG_ptr v2, byval_as_IRVREG_ptr vr, byval_as_FBSYMBOL_ptr label) |
sub | hFlushSTORE (byval_as_integer op, byval_as_IRVREG_ptr v1, byval_as_IRVREG_ptr v2) |
sub | hFlushLOAD (byval_as_integer op, byval_as_IRVREG_ptr v1, byval_as_IRVREG_ptr vr) |
sub | hFlushCONVERT (byval_as_integer op, byval_as_IRVREG_ptr v1, byval_as_IRVREG_ptr v2) |
sub | hFlushCALL (byval_as_integer op, byval_as_FBSYMBOL_ptr proc, byval_as_integer bytestopop, byval_as_IRVREG_ptr v1, byval_as_IRVREG_ptr vr) |
sub | hFlushBRANCH (byval_as_integer op, byval_as_FBSYMBOL_ptr label) |
sub | hFlushSTACK (byval_as_integer op, byval_as_IRVREG_ptr v1, byval_as_integer ex) |
sub | hFlushADDR (byval_as_integer op, byval_as_IRVREG_ptr v1, byval_as_IRVREG_ptr vr) |
sub | hFlushMEM (byval_as_integer op, byval_as_IRVREG_ptr v1, byval_as_IRVREG_ptr v2, byval_as_integer bytes, byval_as_any_ptr extra) |
sub | hFlushDBG (byval_as_integer op, byval_as_FBSYMBOL_ptr proc, byval_as_integer ex) |
sub | hFlushLIT (byval_as_integer op, byval_as_zstring_ptr text) |
sub | hFreeIDX (byval_as_IRVREG_ptr vreg, byval_as_integer force=FALSE) |
sub | hFreeREG (byval_as_IRVREG_ptr vreg, byval_as_integer force=FALSE) |
sub | hFreePreservedRegs () |
sub | hDumpFreeIntRegs () |
sub | hDump (byval_as_integer op, byval_as_IRVREG_ptr v1, byval_as_IRVREG_ptr v2, byval_as_IRVREG_ptr vr, byval_as_integer wrapline=FALSE) |
function_as_string | tacvregDump (byval_as_IRTACVREG_ptr tacvreg) |
sub | tacDump (byval_as_IRTAC_ptr tac) |
sub | _flush () |
private sub | _init () |
private sub | _end () |
private function_as_integer | _emitBegin () |
private sub | _emitEnd (byval_as_double tottime) |
private function_as_integer | _getOptionValue (byval_as_IR_OPTIONVALUE opt) |
private sub | hLoadIDX (byval_as_IRVREG_ptr vreg) |
private sub | hRelink (byval_as_IRVREG_ptr vreg, byval_as_IRTACVREG_ptr tvreg) |
private sub | _emit (byval_as_integer op, byval_as_IRVREG_ptr v1, byval_as_IRVREG_ptr v2, byval_as_IRVREG_ptr vr, byval_as_FBSYMBOL_ptr ex1=NULL, byval_as_integer ex2=0) |
private sub | _procBegin (byval_as_FBSYMBOL_ptr proc) |
private sub | _procEnd (byval_as_FBSYMBOL_ptr proc) |
private sub | _procAllocArg (byval_as_FBSYMBOL_ptr proc, byval_as_FBSYMBOL_ptr sym) |
private sub | _procAllocLocal (byval_as_FBSYMBOL_ptr proc, byval_as_FBSYMBOL_ptr sym) |
private function_as_const_zstring_ptr | _procGetFrameRegName () |
private sub | _scopeBegin (byval_as_FBSYMBOL_ptr s) |
private sub | _scopeEnd (byval_as_FBSYMBOL_ptr s) |
private sub | _procAllocStaticVars (byval_as_FBSYMBOL_ptr head_sym) |
private sub | _emitLabel (byval_as_FBSYMBOL_ptr label) |
private sub | _emitReturn (byval_as_integer bytestopop) |
private sub | _emitProcBegin (byval_as_FBSYMBOL_ptr proc, byval_as_FBSYMBOL_ptr initlabel) |
private sub | _emitProcEnd (byval_as_FBSYMBOL_ptr proc, byval_as_FBSYMBOL_ptr initlabel, byval_as_FBSYMBOL_ptr exitlabel) |
private sub | _emitScopeBegin (byval_as_FBSYMBOL_ptr s) |
private sub | _emitScopeEnd (byval_as_FBSYMBOL_ptr s) |
private sub | _emitBop (byval_as_integer op, byval_as_IRVREG_ptr v1, byval_as_IRVREG_ptr v2, byval_as_IRVREG_ptr vr, byval_as_FBSYMBOL_ptr ex) |
private sub | _emitUop (byval_as_integer op, byval_as_IRVREG_ptr v1, byval_as_IRVREG_ptr vr) |
private sub | _emitConvert (byval_as_IRVREG_ptr v1, byval_as_IRVREG_ptr v2) |
private sub | _emitStore (byval_as_IRVREG_ptr v1, byval_as_IRVREG_ptr v2) |
private sub | _emitSpillRegs () |
private sub | _emitLoad (byval_as_IRVREG_ptr v1) |
private sub | _emitLoadRes (byval_as_IRVREG_ptr v1, byval_as_IRVREG_ptr vr) |
private sub | _emitStack (byval_as_integer op, byval_as_IRVREG_ptr v1) |
private sub | _emitPushArg (byval_as_FBSYMBOL_ptr param, byval_as_IRVREG_ptr vr, byval_as_longint udtlen, byval_as_integer level) |
private sub | _emitAddr (byval_as_integer op, byval_as_IRVREG_ptr v1, byval_as_IRVREG_ptr vr) |
private sub | _emitLabelNF (byval_as_FBSYMBOL_ptr l) |
private sub | _emitCall (byval_as_FBSYMBOL_ptr proc, byval_as_integer bytestopop, byval_as_IRVREG_ptr vr, byval_as_integer level) |
private sub | _emitCallPtr (byval_as_IRVREG_ptr v1, byval_as_IRVREG_ptr vr, byval_as_integer bytestopop, byval_as_integer level) |
private sub | _emitStackAlign (byval_as_integer bytes) |
private sub | _emitJumpPtr (byval_as_IRVREG_ptr v1) |
private sub | _emitBranch (byval_as_integer op, byval_as_FBSYMBOL_ptr label) |
private sub | _emitJmpTb (byval_as_IRVREG_ptr v1, byval_as_FBSYMBOL_ptr tbsym, byval_as_ulongint_ptr values, byval_as_FBSYMBOL_ptr_ptr labels, byval_as_integer labelcount, byval_as_FBSYMBOL_ptr deflabel, byval_as_ulongint minval, byval_as_ulongint maxval) |
private sub | _emitMem (byval_as_integer op, byval_as_IRVREG_ptr v1, byval_as_IRVREG_ptr v2, byval_as_longint bytes) |
private sub | _emitDECL (byval_as_FBSYMBOL_ptr sym) |
private sub | _emitDBG (byval_as_integer op, byval_as_FBSYMBOL_ptr proc, byval_as_integer ex) |
private sub | _emitComment (byval_as_zstring_ptr text) |
private sub | _emitAsmBegin () |
private sub | _emitAsmText (byval_as_zstring_ptr text) |
private sub | _emitAsmSymb (byval_as_FBSYMBOL_ptr sym) |
private sub | _emitAsmEnd () |
private sub | _emitVarIniBegin (byval_as_FBSYMBOL_ptr sym) |
private sub | _emitVarIniEnd (byval_as_FBSYMBOL_ptr sym) |
private sub | _emitVarIniI (byval_as_FBSYMBOL_ptr sym, byval_as_longint value) |
private sub | _emitVarIniF (byval_as_FBSYMBOL_ptr sym, byval_as_double value) |
private sub | _emitVarIniOfs (byval_as_FBSYMBOL_ptr sym, byval_as_longint ofs) |
private sub | _emitVarIniStr (byval_as_longint totlgt, byval_as_zstring_ptr litstr, byval_as_longint litlgt) |
private sub | _emitVarIniWstr (byval_as_longint totlgt, byval_as_wstring_ptr litstr, byval_as_longint litlgt) |
private sub | _emitVarIniPad (byval_as_longint bytes) |
private sub | _emitVarIniScopeBegin () |
private sub | _emitVarIniScopeEnd () |
private sub | _emitFbctinfBegin () |
private sub | _emitFbctinfString (byval_as_zstring_ptr s) |
private sub | _emitFbctinfEnd () |
private function_as_IRVREG_ptr | hNewVR (byval_as_integer dtype, byval_as_FBSYMBOL_ptr subtype, byval_as_integer vtype) |
private function_as_IRVREG_ptr | _allocVreg (byval_as_integer dtype, byval_as_FBSYMBOL_ptr subtype) |
private function_as_IRVREG_ptr | _allocVrImm (byval_as_integer dtype, byval_as_FBSYMBOL_ptr subtype, byval_as_longint value) |
private function_as_IRVREG_ptr | _allocVrImmF (byval_as_integer dtype, byval_as_FBSYMBOL_ptr subtype, byval_as_double value) |
private function_as_IRVREG_ptr | _allocVrVar (byval_as_integer dtype, byval_as_FBSYMBOL_ptr subtype, byval_as_FBSYMBOL_ptr symbol, byval_as_longint ofs) |
private function_as_IRVREG_ptr | _allocVrIdx (byval_as_integer dtype, byval_as_FBSYMBOL_ptr subtype, byval_as_FBSYMBOL_ptr symbol, byval_as_longint ofs, byval_as_integer mult, byval_as_IRVREG_ptr vidx) |
private function_as_IRVREG_ptr | _allocVrPtr (byval_as_integer dtype, byval_as_FBSYMBOL_ptr subtype, byval_as_longint ofs, byval_as_IRVREG_ptr vidx) |
private function_as_IRVREG_ptr | _allocVrOfs (byval_as_integer dtype, byval_as_FBSYMBOL_ptr subtype, byval_as_FBSYMBOL_ptr symbol, byval_as_longint ofs) |
private sub | _setVregDataType (byval_as_IRVREG_ptr vreg, byval_as_integer dtype, byval_as_FBSYMBOL_ptr subtype) |
private sub | hRename (byval_as_IRVREG_ptr vold, byval_as_IRVREG_ptr vnew) |
private sub | hReuse (byval_as_IRTAC_ptr t) |
private function_as_integer | hPreserveReg (byval_as_IRVREG_ptr vr) |
private sub | hPreserveRegs (byval_as_IRVREG_ptr ptrvreg=NULL) |
private sub | hSpillRegs () |
private function_as_uinteger | _GetDistance (byval_as_IRVREG_ptr vreg) |
private sub | _loadVR (byval_as_integer reg, byval_as_IRVREG_ptr vreg, byval_as_IRVREG_ptr vauxparent) |
private sub | _storeVR (byval_as_IRVREG_ptr vreg, byval_as_IRVREG_ptr vauxparent) |
private sub | _xchgTOS (byval_as_integer reg) |
Variables | |
IRTAC_CTX | ctx |
REGCLASS_ptr | regTB [toEMIT_REGCLASSES+1] |
IR_VTBL | irtac_vtbl = |
#define hGetVREG | ( | vreg, | |
dt, | |||
dc, | |||
t | |||
) |
Definition at line 238 of file ir-tac.bas.
#define hRelinkVreg | ( | v, | |
t | |||
) |
Definition at line 270 of file ir-tac.bas.
private function_as_IRVREG_ptr _allocVreg | ( | byval_as_integer | dtype, |
byval_as_FBSYMBOL_ptr | subtype | ||
) |
private function_as_IRVREG_ptr _allocVrIdx | ( | byval_as_integer | dtype, |
byval_as_FBSYMBOL_ptr | subtype, | ||
byval_as_FBSYMBOL_ptr | symbol, | ||
byval_as_longint | ofs, | ||
byval_as_integer | mult, | ||
byval_as_IRVREG_ptr | vidx | ||
) |
private function_as_IRVREG_ptr _allocVrImm | ( | byval_as_integer | dtype, |
byval_as_FBSYMBOL_ptr | subtype, | ||
byval_as_longint | value | ||
) |
private function_as_IRVREG_ptr _allocVrImmF | ( | byval_as_integer | dtype, |
byval_as_FBSYMBOL_ptr | subtype, | ||
byval_as_double | value | ||
) |
private function_as_IRVREG_ptr _allocVrOfs | ( | byval_as_integer | dtype, |
byval_as_FBSYMBOL_ptr | subtype, | ||
byval_as_FBSYMBOL_ptr | symbol, | ||
byval_as_longint | ofs | ||
) |
private function_as_IRVREG_ptr _allocVrPtr | ( | byval_as_integer | dtype, |
byval_as_FBSYMBOL_ptr | subtype, | ||
byval_as_longint | ofs, | ||
byval_as_IRVREG_ptr | vidx | ||
) |
private function_as_IRVREG_ptr _allocVrVar | ( | byval_as_integer | dtype, |
byval_as_FBSYMBOL_ptr | subtype, | ||
byval_as_FBSYMBOL_ptr | symbol, | ||
byval_as_longint | ofs | ||
) |
private sub _emit | ( | byval_as_integer | op, |
byval_as_IRVREG_ptr | v1, | ||
byval_as_IRVREG_ptr | v2, | ||
byval_as_IRVREG_ptr | vr, | ||
byval_as_FBSYMBOL_ptr | ex1 = NULL , |
||
byval_as_integer | ex2 = 0 |
||
) |
Definition at line 298 of file ir-tac.bas.
private sub _emitAddr | ( | byval_as_integer | op, |
byval_as_IRVREG_ptr | v1, | ||
byval_as_IRVREG_ptr | vr | ||
) |
private sub _emitAsmBegin | ( | ) |
Definition at line 714 of file ir-tac.bas.
private sub _emitAsmEnd | ( | ) |
private sub _emitAsmSymb | ( | byval_as_FBSYMBOL_ptr | sym) |
private sub _emitAsmText | ( | byval_as_zstring_ptr | text) |
Definition at line 718 of file ir-tac.bas.
private function_as_integer _emitBegin | ( | ) |
Definition at line 183 of file ir-tac.bas.
private sub _emitBop | ( | byval_as_integer | op, |
byval_as_IRVREG_ptr | v1, | ||
byval_as_IRVREG_ptr | v2, | ||
byval_as_IRVREG_ptr | vr, | ||
byval_as_FBSYMBOL_ptr | ex | ||
) |
private sub _emitBranch | ( | byval_as_integer | op, |
byval_as_FBSYMBOL_ptr | label | ||
) |
private sub _emitCall | ( | byval_as_FBSYMBOL_ptr | proc, |
byval_as_integer | bytestopop, | ||
byval_as_IRVREG_ptr | vr, | ||
byval_as_integer | level | ||
) |
private sub _emitCallPtr | ( | byval_as_IRVREG_ptr | v1, |
byval_as_IRVREG_ptr | vr, | ||
byval_as_integer | bytestopop, | ||
byval_as_integer | level | ||
) |
private sub _emitComment | ( | byval_as_zstring_ptr | text) |
private sub _emitConvert | ( | byval_as_IRVREG_ptr | v1, |
byval_as_IRVREG_ptr | v2 | ||
) |
private sub _emitDBG | ( | byval_as_integer | op, |
byval_as_FBSYMBOL_ptr | proc, | ||
byval_as_integer | ex | ||
) |
private sub _emitDECL | ( | byval_as_FBSYMBOL_ptr | sym) |
Definition at line 694 of file ir-tac.bas.
private sub _emitEnd | ( | byval_as_double | tottime) |
Definition at line 192 of file ir-tac.bas.
private sub _emitFbctinfBegin | ( | ) |
private sub _emitFbctinfEnd | ( | ) |
private sub _emitFbctinfString | ( | byval_as_zstring_ptr | s) |
private sub _emitJmpTb | ( | byval_as_IRVREG_ptr | v1, |
byval_as_FBSYMBOL_ptr | tbsym, | ||
byval_as_ulongint_ptr | values, | ||
byval_as_FBSYMBOL_ptr_ptr | labels, | ||
byval_as_integer | labelcount, | ||
byval_as_FBSYMBOL_ptr | deflabel, | ||
byval_as_ulongint | minval, | ||
byval_as_ulongint | maxval | ||
) |
private sub _emitJumpPtr | ( | byval_as_IRVREG_ptr | v1) |
private sub _emitLabel | ( | byval_as_FBSYMBOL_ptr | label) |
private sub _emitLabelNF | ( | byval_as_FBSYMBOL_ptr | l) |
private sub _emitLoad | ( | byval_as_IRVREG_ptr | v1) |
private sub _emitLoadRes | ( | byval_as_IRVREG_ptr | v1, |
byval_as_IRVREG_ptr | vr | ||
) |
private sub _emitMem | ( | byval_as_integer | op, |
byval_as_IRVREG_ptr | v1, | ||
byval_as_IRVREG_ptr | v2, | ||
byval_as_longint | bytes | ||
) |
private sub _emitProcBegin | ( | byval_as_FBSYMBOL_ptr | proc, |
byval_as_FBSYMBOL_ptr | initlabel | ||
) |
private sub _emitProcEnd | ( | byval_as_FBSYMBOL_ptr | proc, |
byval_as_FBSYMBOL_ptr | initlabel, | ||
byval_as_FBSYMBOL_ptr | exitlabel | ||
) |
private sub _emitPushArg | ( | byval_as_FBSYMBOL_ptr | param, |
byval_as_IRVREG_ptr | vr, | ||
byval_as_longint | udtlen, | ||
byval_as_integer | level | ||
) |
private sub _emitReturn | ( | byval_as_integer | bytestopop) |
private sub _emitScopeBegin | ( | byval_as_FBSYMBOL_ptr | s) |
private sub _emitScopeEnd | ( | byval_as_FBSYMBOL_ptr | s) |
private sub _emitSpillRegs | ( | ) |
private sub _emitStack | ( | byval_as_integer | op, |
byval_as_IRVREG_ptr | v1 | ||
) |
Definition at line 572 of file ir-tac.bas.
private sub _emitStackAlign | ( | byval_as_integer | bytes) |
private sub _emitStore | ( | byval_as_IRVREG_ptr | v1, |
byval_as_IRVREG_ptr | v2 | ||
) |
private sub _emitUop | ( | byval_as_integer | op, |
byval_as_IRVREG_ptr | v1, | ||
byval_as_IRVREG_ptr | vr | ||
) |
private sub _emitVarIniBegin | ( | byval_as_FBSYMBOL_ptr | sym) |
private sub _emitVarIniEnd | ( | byval_as_FBSYMBOL_ptr | sym) |
Definition at line 740 of file ir-tac.bas.
private sub _emitVarIniF | ( | byval_as_FBSYMBOL_ptr | sym, |
byval_as_double | value | ||
) |
private sub _emitVarIniI | ( | byval_as_FBSYMBOL_ptr | sym, |
byval_as_longint | value | ||
) |
private sub _emitVarIniOfs | ( | byval_as_FBSYMBOL_ptr | sym, |
byval_as_longint | ofs | ||
) |
private sub _emitVarIniPad | ( | byval_as_longint | bytes) |
private sub _emitVarIniScopeBegin | ( | ) |
Definition at line 834 of file ir-tac.bas.
private sub _emitVarIniScopeEnd | ( | ) |
Definition at line 838 of file ir-tac.bas.
private sub _emitVarIniStr | ( | byval_as_longint | totlgt, |
byval_as_zstring_ptr | litstr, | ||
byval_as_longint | litlgt | ||
) |
private sub _emitVarIniWstr | ( | byval_as_longint | totlgt, |
byval_as_wstring_ptr | litstr, | ||
byval_as_longint | litlgt | ||
) |
private sub _end | ( | void | ) |
private sub _flush | ( | void | ) |
Definition at line 1312 of file ir-tac.bas.
private function_as_uinteger _GetDistance | ( | byval_as_IRVREG_ptr | vreg) |
private function_as_integer _getOptionValue | ( | byval_as_IR_OPTIONVALUE | opt) |
Definition at line 202 of file ir-tac.bas.
private sub _init | ( | ) |
private sub _loadVR | ( | byval_as_integer | reg, |
byval_as_IRVREG_ptr | vreg, | ||
byval_as_IRVREG_ptr | vauxparent | ||
) |
private sub _procAllocArg | ( | byval_as_FBSYMBOL_ptr | proc, |
byval_as_FBSYMBOL_ptr | sym | ||
) |
Definition at line 353 of file ir-tac.bas.
private sub _procAllocLocal | ( | byval_as_FBSYMBOL_ptr | proc, |
byval_as_FBSYMBOL_ptr | sym | ||
) |
Definition at line 363 of file ir-tac.bas.
private sub _procAllocStaticVars | ( | byval_as_FBSYMBOL_ptr | head_sym) |
Definition at line 401 of file ir-tac.bas.
private sub _procBegin | ( | byval_as_FBSYMBOL_ptr | proc) |
Definition at line 334 of file ir-tac.bas.
private sub _procEnd | ( | byval_as_FBSYMBOL_ptr | proc) |
Definition at line 344 of file ir-tac.bas.
private function_as_const_zstring_ptr _procGetFrameRegName | ( | ) |
Definition at line 374 of file ir-tac.bas.
private sub _scopeBegin | ( | byval_as_FBSYMBOL_ptr | s) |
Definition at line 383 of file ir-tac.bas.
private sub _scopeEnd | ( | byval_as_FBSYMBOL_ptr | s) |
Definition at line 393 of file ir-tac.bas.
private sub _setVregDataType | ( | byval_as_IRVREG_ptr | vreg, |
byval_as_integer | dtype, | ||
byval_as_FBSYMBOL_ptr | subtype | ||
) |
Definition at line 1070 of file ir-tac.bas.
private sub _storeVR | ( | byval_as_IRVREG_ptr | vreg, |
byval_as_IRVREG_ptr | vauxparent | ||
) |
private sub _xchgTOS | ( | byval_as_integer | reg) |
private sub hDump | ( | byval_as_integer | op, |
byval_as_IRVREG_ptr | v1, | ||
byval_as_IRVREG_ptr | v2, | ||
byval_as_IRVREG_ptr | vr, | ||
byval_as_integer | wrapline = FALSE |
||
) |
private sub hDumpFreeIntRegs | ( | ) |
private sub hFlushADDR | ( | byval_as_integer | op, |
byval_as_IRVREG_ptr | v1, | ||
byval_as_IRVREG_ptr | vr | ||
) |
Definition at line 2317 of file ir-tac.bas.
private sub hFlushBOP | ( | byval_as_integer | op, |
byval_as_IRVREG_ptr | v1, | ||
byval_as_IRVREG_ptr | v2, | ||
byval_as_IRVREG_ptr | vr | ||
) |
Definition at line 1853 of file ir-tac.bas.
private sub hFlushBRANCH | ( | byval_as_integer | op, |
byval_as_FBSYMBOL_ptr | label | ||
) |
Definition at line 1404 of file ir-tac.bas.
private sub hFlushCALL | ( | byval_as_integer | op, |
byval_as_FBSYMBOL_ptr | proc, | ||
byval_as_integer | bytestopop, | ||
byval_as_IRVREG_ptr | v1, | ||
byval_as_IRVREG_ptr | vr | ||
) |
Definition at line 1616 of file ir-tac.bas.
private sub hFlushCOMP | ( | byval_as_integer | op, |
byval_as_IRVREG_ptr | v1, | ||
byval_as_IRVREG_ptr | v2, | ||
byval_as_IRVREG_ptr | vr, | ||
byval_as_FBSYMBOL_ptr | label | ||
) |
Definition at line 1967 of file ir-tac.bas.
private sub hFlushCONVERT | ( | byval_as_integer | op, |
byval_as_IRVREG_ptr | v1, | ||
byval_as_IRVREG_ptr | v2 | ||
) |
Definition at line 2220 of file ir-tac.bas.
private sub hFlushDBG | ( | byval_as_integer | op, |
byval_as_FBSYMBOL_ptr | proc, | ||
byval_as_integer | ex | ||
) |
Definition at line 2393 of file ir-tac.bas.
private sub hFlushLIT | ( | byval_as_integer | op, |
byval_as_zstring_ptr | text | ||
) |
Definition at line 2415 of file ir-tac.bas.
private sub hFlushLOAD | ( | byval_as_integer | op, |
byval_as_IRVREG_ptr | v1, | ||
byval_as_IRVREG_ptr | vr | ||
) |
Definition at line 2145 of file ir-tac.bas.
private sub hFlushMEM | ( | byval_as_integer | op, |
byval_as_IRVREG_ptr | v1, | ||
byval_as_IRVREG_ptr | v2, | ||
byval_as_integer | bytes, | ||
byval_as_any_ptr | extra | ||
) |
Definition at line 2358 of file ir-tac.bas.
private sub hFlushSTACK | ( | byval_as_integer | op, |
byval_as_IRVREG_ptr | v1, | ||
byval_as_integer | ex | ||
) |
Definition at line 1684 of file ir-tac.bas.
private sub hFlushSTORE | ( | byval_as_integer | op, |
byval_as_IRVREG_ptr | v1, | ||
byval_as_IRVREG_ptr | v2 | ||
) |
Definition at line 2099 of file ir-tac.bas.
private sub hFlushUOP | ( | byval_as_integer | op, |
byval_as_IRVREG_ptr | v1, | ||
byval_as_IRVREG_ptr | vr | ||
) |
Definition at line 1732 of file ir-tac.bas.
private sub hFreeIDX | ( | byval_as_IRVREG_ptr | vreg, |
byval_as_integer | force = FALSE |
||
) |
Definition at line 2430 of file ir-tac.bas.
private sub hFreePreservedRegs | ( | ) |
private sub hFreeREG | ( | byval_as_IRVREG_ptr | vreg, |
byval_as_integer | force = FALSE |
||
) |
Definition at line 2453 of file ir-tac.bas.
private sub hLoadIDX | ( | byval_as_IRVREG_ptr | vreg) |
private function_as_IRVREG_ptr hNewVR | ( | byval_as_integer | dtype, |
byval_as_FBSYMBOL_ptr | subtype, | ||
byval_as_integer | vtype | ||
) |
private function_as_integer hPreserveReg | ( | byval_as_IRVREG_ptr | vr) |
Definition at line 1456 of file ir-tac.bas.
private sub hPreserveRegs | ( | byval_as_IRVREG_ptr | ptrvreg = NULL ) |
Definition at line 1554 of file ir-tac.bas.
private sub hRelink | ( | byval_as_IRVREG_ptr | vreg, |
byval_as_IRTACVREG_ptr | tvreg | ||
) |
Definition at line 259 of file ir-tac.bas.
private sub hRename | ( | byval_as_IRVREG_ptr | vold, |
byval_as_IRVREG_ptr | vnew | ||
) |
private sub hReuse | ( | byval_as_IRTAC_ptr | t) |
Definition at line 1229 of file ir-tac.bas.
private sub hSpillRegs | ( | ) |
sub tacDump | ( | byval_as_IRTAC_ptr | tac) |
function_as_string tacvregDump | ( | byval_as_IRTACVREG_ptr | tacvreg) |
Definition at line 1166 of file ir-tac.bas.
IRTAC_CTX ctx |
Definition at line 153 of file ir-tac.bas.
IR_VTBL irtac_vtbl = |
Definition at line 2646 of file ir-tac.bas.
REGCLASS_ptr regTB[toEMIT_REGCLASSES+1] |
Definition at line 155 of file ir-tac.bas.