FreeBASIC  0.91.0
emit.bi File Reference
#include "flist.bi"
#include "reg.bi"
#include "ast.bi"
#include "ir.bi"
Include dependency graph for emit.bi:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

class  EMIT_BOPNODE
 
class  EMIT_UOPNODE
 
class  EMIT_RELNODE
 
class  EMIT_STKNODE
 
class  EMIT_BRCNODE
 
class  EMIT_SOPNODE
 
class  EMIT_LITNODE
 
class  EMIT_JTBNODE
 
class  EMIT_MEMNODE
 
class  EMIT_DBGNODE
 
class  EMIT_NODE
 
class  EMIT_VTBL
 
class  EMITCTX
 

Macros

#define __EMIT_BI__
 
#define emitGetOptionValue(opt)   /* emit.vtbl.getOptionValue( opt ) */
 
#define emitIsKeyword(text)   /* emit.vtbl.isKeyword( text ) */
 
#define emitOpen()   /* emit.vtbl.open( ) */
 
#define emitClose(tottime)   /* emit.vtbl.close( tottime ) */
 
#define emitProcBegin(proc)   /* emit.vtbl.procBegin( proc ) */
 
#define emitProcEnd(proc)   /* emit.vtbl.procEnd( proc ) */
 
#define emitProcHeader(proc, initlabel)   /* emit.vtbl.procHeader( proc, initlabel ) */
 
#define emitProcFooter(proc, bytestopop, initlabel, exitlabel)   /* emit.vtbl.procFooter( proc, bytestopop, initlabel, exitlabel ) */
 
#define emitProcAllocArg(proc, s)   /* emit.vtbl.procAllocArg( proc, s ) */
 
#define emitProcAllocLocal(proc, s)   /* emit.vtbl.procAllocLocal( proc, s ) */
 
#define emitProcGetFrameRegName()   /* emit.vtbl.procGetFrameRegName( ) */
 
#define emitScopeBegin(s)   /* emit.vtbl.scopeBegin( s ) */
 
#define emitScopeEnd(s)   /* emit.vtbl.scopeEnd( s ) */
 
#define emitProcAllocStaticVars(head_sym)   /* emit.vtbl.procAllocStaticVars( head_sym ) */
 
#define emitIsRegPreserved(dclass, reg)   /* emit.vtbl.isRegPreserved( dclass, reg ) */
 
#define emitGetFreePreservedReg(dclass, dtype)   /* emit.vtbl.getFreePreservedReg( dclass, dtype ) */
 
#define emitGetResultReg(dtype, dclass, reg, reg2)   /* emit.vtbl.getResultReg( dtype, dclass, reg, reg2 ) */
 
#define emitSection(sec, priority)   /* emit.vtbl.setSection( sec, priority ) */
 
#define EMIT_REGSETUSED(c, r)   /* emit.regUsedTB(c) or= (1 shl r) */
 
#define EMIT_REGISUSED(c, r)   /* ((emit.regUsedTB(c) and (1 shl r)) <> 0) */
 
#define EMIT_REGCLEARALL(c)   /* emit.regUsedTB(c) = 0 */
 
#define EMIT_REGTRASHALL(c)   /* emit.regUsedTB(c) = -1 */
 

Typedefs

typedef sub EMIT_BOPCB (byval_as_IRVREG_ptr dvreg, byval_as_IRVREG_ptr svreg)
 
typedef sub EMIT_UOPCB (byval_as_IRVREG_ptr dvreg)
 
typedef sub EMIT_RELCB (byval_as_IRVREG_ptr rvreg, byval_as_FBSYMBOL_ptr label, byval_as_IRVREG_ptr dvreg, byval_as_IRVREG_ptr svreg)
 
typedef sub EMIT_STKCB (byval_as_IRVREG_ptr vreg, byval_as_integer extra)
 
typedef sub EMIT_BRCCB (byval_as_IRVREG_ptr vreg, byval_as_FBSYMBOL_ptr sym, byval_as_integer extra)
 
typedef sub EMIT_SOPCB (byval_as_FBSYMBOL_ptr sym)
 
typedef sub EMIT_LITCB (byval_as_zstring_ptr text)
 
typedef sub EMIT_JTBCB (byval_as_FBSYMBOL_ptr tbsym, byval_as_ulongint_ptr values1, byval_as_FBSYMBOL_ptr_ptr labels1, byval_as_integer labelcount, byval_as_FBSYMBOL_ptr deflabel, byval_as_ulongint minval, byval_as_ulongint maxval)
 
typedef sub EMIT_MEMCB (byval_as_IRVREG_ptr dvreg, byval_as_IRVREG_ptr svreg, byval_as_integer bytes, byval_as_integer extra)
 
typedef sub EMIT_DBGCB (byval_as_FBSYMBOL_ptr sym, byval_as_integer lnum, byval_as_integer pos)
 

Enumerations

enum  EMIT_NODEOP {
  EMIT_OP_NOP, EMIT_OP_LOADI2I, EMIT_OP_LOADF2I, EMIT_OP_LOADL2I,
  EMIT_OP_LOADI2F, EMIT_OP_LOADF2F, EMIT_OP_LOADL2F, EMIT_OP_LOADI2L,
  EMIT_OP_LOADF2L, EMIT_OP_LOADL2L, EMIT_OP_STORI2I, EMIT_OP_STORF2I,
  EMIT_OP_STORL2I, EMIT_OP_STORI2F, EMIT_OP_STORF2F, EMIT_OP_STORL2F,
  EMIT_OP_STORI2L, EMIT_OP_STORF2L, EMIT_OP_STORL2L, EMIT_OP_MOVI,
  EMIT_OP_MOVF, EMIT_OP_MOVL, EMIT_OP_ADDI, EMIT_OP_ADDF,
  EMIT_OP_ADDL, EMIT_OP_SUBI, EMIT_OP_SUBF, EMIT_OP_SUBL,
  EMIT_OP_MULI, EMIT_OP_MULF, EMIT_OP_MULL, EMIT_OP_DIVI,
  EMIT_OP_DIVF, EMIT_OP_DIVL, EMIT_OP_MODI, EMIT_OP_MODF,
  EMIT_OP_MODL, EMIT_OP_SHLI, EMIT_OP_SHLL, EMIT_OP_SHRI,
  EMIT_OP_SHRL, EMIT_OP_ANDI, EMIT_OP_ANDL, EMIT_OP_ORI,
  EMIT_OP_ORL, EMIT_OP_XORI, EMIT_OP_XORL, EMIT_OP_EQVI,
  EMIT_OP_EQVL, EMIT_OP_IMPI, EMIT_OP_IMPL, EMIT_OP_ATN2,
  EMIT_OP_POW, EMIT_OP_ADDROF, EMIT_OP_DEREF, EMIT_OP_CGTI,
  EMIT_OP_CGTF, EMIT_OP_CGTL, EMIT_OP_CLTI, EMIT_OP_CLTF,
  EMIT_OP_CLTL, EMIT_OP_CEQI, EMIT_OP_CEQF, EMIT_OP_CEQL,
  EMIT_OP_CNEI, EMIT_OP_CNEF, EMIT_OP_CNEL, EMIT_OP_CGEI,
  EMIT_OP_CGEF, EMIT_OP_CGEL, EMIT_OP_CLEI, EMIT_OP_CLEF,
  EMIT_OP_CLEL, EMIT_OP_NEGI, EMIT_OP_NEGF, EMIT_OP_NEGL,
  EMIT_OP_NOTI, EMIT_OP_NOTL, EMIT_OP_HADDF, EMIT_OP_ABSI,
  EMIT_OP_ABSF, EMIT_OP_ABSL, EMIT_OP_SGNI, EMIT_OP_SGNF,
  EMIT_OP_SGNL, EMIT_OP_FIX, EMIT_OP_FRAC, EMIT_OP_CONVFD2FS,
  EMIT_OP_SWZREP, EMIT_OP_SIN, EMIT_OP_ASIN, EMIT_OP_COS,
  EMIT_OP_ACOS, EMIT_OP_TAN, EMIT_OP_ATAN, EMIT_OP_SQRT,
  EMIT_OP_RSQRT, EMIT_OP_RCP, EMIT_OP_LOG, EMIT_OP_EXP,
  EMIT_OP_FLOOR, EMIT_OP_XCHGTOS, EMIT_OP_STACKALIGN, EMIT_OP_PUSHI,
  EMIT_OP_PUSHF, EMIT_OP_PUSHL, EMIT_OP_POPI, EMIT_OP_POPF,
  EMIT_OP_POPL, EMIT_OP_PUSHUDT, EMIT_OP_CALL, EMIT_OP_CALLPTR,
  EMIT_OP_BRANCH, EMIT_OP_JUMP, EMIT_OP_JUMPPTR, EMIT_OP_RET,
  EMIT_OP_LABEL, EMIT_OP_PUBLIC, EMIT_OP_LIT, EMIT_OP_JMPTB,
  EMIT_OP_MEMMOVE, EMIT_OP_MEMSWAP, EMIT_OP_MEMCLEAR, EMIT_OP_STKCLEAR,
  EMIT_OP_LINEINI, EMIT_OP_LINEEND, EMIT_OP_SCOPEINI, EMIT_OP_SCOPEEND,
  EMIT_MAXOPS
}
 
enum  EMIT_NODECLASS_ENUM {
  EMIT_NODECLASS_NOP, EMIT_NODECLASS_BOP, EMIT_NODECLASS_UOP, EMIT_NODECLASS_REL,
  EMIT_NODECLASS_STK, EMIT_NODECLASS_BRC, EMIT_NODECLASS_LIT, EMIT_NODECLASS_JTB,
  EMIT_NODECLASS_SOP, EMIT_NODECLASS_MEM, EMIT_NODECLASS_DBG
}
 

Functions

function_as_integer emitInit ()
 
sub emitEnd ()
 
function_as_string emitDumpRegName (byval_as_integer dtype, byval_as_integer reg)
 
function_as_REGCLASS_ptr emitGetRegClass (byval_as_integer dclass)
 
sub emitCOMMENT (byval_as_zstring_ptr text)
 
sub emitASM (byval_as_zstring_ptr text)
 
function_as_EMIT_NODE_ptr emitJMPTB (byval_as_FBSYMBOL_ptr tbsym, byval_as_ulongint_ptr values1, byval_as_FBSYMBOL_ptr_ptr labels1, byval_as_integer labelcount, byval_as_FBSYMBOL_ptr deflabel, byval_as_ulongint minval, byval_as_ulongint maxval)
 
function_as_EMIT_NODE_ptr emitCALL (byval_as_FBSYMBOL_ptr label, byval_as_integer bytestopop)
 
function_as_EMIT_NODE_ptr emitCALLPTR (byval_as_IRVREG_ptr svreg, byval_as_integer bytestopop)
 
function_as_EMIT_NODE_ptr emitJUMP (byval_as_FBSYMBOL_ptr label)
 
function_as_EMIT_NODE_ptr emitJUMPPTR (byval_as_IRVREG_ptr svreg)
 
function_as_EMIT_NODE_ptr emitLABEL (byval_as_FBSYMBOL_ptr label)
 
function_as_EMIT_NODE_ptr emitRET (byval_as_integer bytestopop)
 
function_as_EMIT_NODE_ptr emitPUBLIC (byval_as_FBSYMBOL_ptr label)
 
function_as_EMIT_NODE_ptr emitBRANCH (byval_as_integer op, byval_as_FBSYMBOL_ptr label)
 
function_as_EMIT_NODE_ptr emitXchgTOS (byval_as_IRVREG_ptr svreg)
 
function_as_EMIT_NODE_ptr emitMOV (byval_as_IRVREG_ptr dvreg, byval_as_IRVREG_ptr svreg)
 
function_as_EMIT_NODE_ptr emitSTORE (byval_as_IRVREG_ptr dvreg, byval_as_IRVREG_ptr svreg)
 
function_as_EMIT_NODE_ptr emitLOAD (byval_as_IRVREG_ptr dvreg, byval_as_IRVREG_ptr svreg)
 
function_as_EMIT_NODE_ptr emitADD (byval_as_IRVREG_ptr dvreg, byval_as_IRVREG_ptr svreg)
 
function_as_EMIT_NODE_ptr emitSUB (byval_as_IRVREG_ptr dvreg, byval_as_IRVREG_ptr svreg)
 
function_as_EMIT_NODE_ptr emitMUL (byval_as_IRVREG_ptr dvreg, byval_as_IRVREG_ptr svreg)
 
function_as_EMIT_NODE_ptr emitDIV (byval_as_IRVREG_ptr dvreg, byval_as_IRVREG_ptr svreg)
 
function_as_EMIT_NODE_ptr emitINTDIV (byval_as_IRVREG_ptr dvreg, byval_as_IRVREG_ptr svreg)
 
function_as_EMIT_NODE_ptr emitMOD (byval_as_IRVREG_ptr dvreg, byval_as_IRVREG_ptr svreg)
 
function_as_EMIT_NODE_ptr emitSHL (byval_as_IRVREG_ptr dvreg, byval_as_IRVREG_ptr svreg)
 
function_as_EMIT_NODE_ptr emitSHR (byval_as_IRVREG_ptr dvreg, byval_as_IRVREG_ptr svreg)
 
function_as_EMIT_NODE_ptr emitAND (byval_as_IRVREG_ptr dvreg, byval_as_IRVREG_ptr svreg)
 
function_as_EMIT_NODE_ptr emitOR (byval_as_IRVREG_ptr dvreg, byval_as_IRVREG_ptr svreg)
 
function_as_EMIT_NODE_ptr emitXOR (byval_as_IRVREG_ptr dvreg, byval_as_IRVREG_ptr svreg)
 
function_as_EMIT_NODE_ptr emitEQV (byval_as_IRVREG_ptr dvreg, byval_as_IRVREG_ptr svreg)
 
function_as_EMIT_NODE_ptr emitIMP (byval_as_IRVREG_ptr dvreg, byval_as_IRVREG_ptr svreg)
 
function_as_EMIT_NODE_ptr emitADDROF (byval_as_IRVREG_ptr dvreg, byval_as_IRVREG_ptr svreg)
 
function_as_EMIT_NODE_ptr emitDEREF (byval_as_IRVREG_ptr dvreg, byval_as_IRVREG_ptr svreg)
 
function_as_EMIT_NODE_ptr emitGT (byval_as_IRVREG_ptr rvreg, byval_as_FBSYMBOL_ptr label, byval_as_IRVREG_ptr dvreg, byval_as_IRVREG_ptr svreg)
 
function_as_EMIT_NODE_ptr emitLT (byval_as_IRVREG_ptr rvreg, byval_as_FBSYMBOL_ptr label, byval_as_IRVREG_ptr dvreg, byval_as_IRVREG_ptr svreg)
 
function_as_EMIT_NODE_ptr emitEQ (byval_as_IRVREG_ptr rvreg, byval_as_FBSYMBOL_ptr label, byval_as_IRVREG_ptr dvreg, byval_as_IRVREG_ptr svreg)
 
function_as_EMIT_NODE_ptr emitNE (byval_as_IRVREG_ptr rvreg, byval_as_FBSYMBOL_ptr label, byval_as_IRVREG_ptr dvreg, byval_as_IRVREG_ptr svreg)
 
function_as_EMIT_NODE_ptr emitLE (byval_as_IRVREG_ptr rvreg, byval_as_FBSYMBOL_ptr label, byval_as_IRVREG_ptr dvreg, byval_as_IRVREG_ptr svreg)
 
function_as_EMIT_NODE_ptr emitGE (byval_as_IRVREG_ptr rvreg, byval_as_FBSYMBOL_ptr label, byval_as_IRVREG_ptr dvreg, byval_as_IRVREG_ptr svreg)
 
function_as_EMIT_NODE_ptr emitATN2 (byval_as_IRVREG_ptr dvreg, byval_as_IRVREG_ptr svreg)
 
function_as_EMIT_NODE_ptr emitPOW (byval_as_IRVREG_ptr dvreg, byval_as_IRVREG_ptr svreg)
 
function_as_EMIT_NODE_ptr emitNEG (byval_as_IRVREG_ptr dvreg)
 
function_as_EMIT_NODE_ptr emitNOT (byval_as_IRVREG_ptr dvreg)
 
function_as_EMIT_NODE_ptr emitABS (byval_as_IRVREG_ptr dvreg)
 
function_as_EMIT_NODE_ptr emitHADD (byval_as_IRVREG_ptr dvreg)
 
function_as_EMIT_NODE_ptr emitSGN (byval_as_IRVREG_ptr dvreg)
 
function_as_EMIT_NODE_ptr emitFIX (byval_as_IRVREG_ptr dvreg)
 
function_as_EMIT_NODE_ptr emitFRAC (byval_as_IRVREG_ptr dvreg)
 
function_as_EMIT_NODE_ptr emitCONVFD2FS (byval_as_IRVREG_ptr dvreg)
 
function_as_EMIT_NODE_ptr emitSWZREP (byval_as_IRVREG_ptr dvreg)
 
function_as_EMIT_NODE_ptr emitSIN (byval_as_IRVREG_ptr dvreg)
 
function_as_EMIT_NODE_ptr emitASIN (byval_as_IRVREG_ptr dvreg)
 
function_as_EMIT_NODE_ptr emitCOS (byval_as_IRVREG_ptr dvreg)
 
function_as_EMIT_NODE_ptr emitACOS (byval_as_IRVREG_ptr dvreg)
 
function_as_EMIT_NODE_ptr emitTAN (byval_as_IRVREG_ptr dvreg)
 
function_as_EMIT_NODE_ptr emitATAN (byval_as_IRVREG_ptr dvreg)
 
function_as_EMIT_NODE_ptr emitSQRT (byval_as_IRVREG_ptr dvreg)
 
function_as_EMIT_NODE_ptr emitRSQRT (byval_as_IRVREG_ptr dvreg)
 
function_as_EMIT_NODE_ptr emitRCP (byval_as_IRVREG_ptr dvreg)
 
function_as_EMIT_NODE_ptr emitLOG (byval_as_IRVREG_ptr dvreg)
 
function_as_EMIT_NODE_ptr emitEXP (byval_as_IRVREG_ptr dvreg)
 
function_as_EMIT_NODE_ptr emitFLOOR (byval_as_IRVREG_ptr dvreg)
 
function_as_EMIT_NODE_ptr emitSTACKALIGN (byval_as_integer bytes)
 
function_as_EMIT_NODE_ptr emitPUSH (byval_as_IRVREG_ptr svreg)
 
function_as_EMIT_NODE_ptr emitPUSHUDT (byval_as_IRVREG_ptr svreg, byval_as_integer sdsize)
 
function_as_EMIT_NODE_ptr emitPOP (byval_as_IRVREG_ptr svreg)
 
function_as_EMIT_NODE_ptr emitMEMMOVE (byval_as_IRVREG_ptr dvreg, byval_as_IRVREG_ptr svreg, byval_as_integer bytes)
 
function_as_EMIT_NODE_ptr emitMEMSWAP (byval_as_IRVREG_ptr dvreg, byval_as_IRVREG_ptr svreg, byval_as_integer bytes)
 
function_as_EMIT_NODE_ptr emitMEMCLEAR (byval_as_IRVREG_ptr dvreg, byval_as_IRVREG_ptr bytes_vreg)
 
function_as_EMIT_NODE_ptr emitSTKCLEAR (byval_as_integer bytes, byval_as_integer baseofs)
 
function_as_EMIT_NODE_ptr emitDBGLineBegin (byval_as_FBSYMBOL_ptr proc, byval_as_integer ex)
 
function_as_EMIT_NODE_ptr emitDBGLineEnd (byval_as_FBSYMBOL_ptr proc, byval_as_integer ex)
 
function_as_EMIT_NODE_ptr emitDBGScopeBegin (byval_as_FBSYMBOL_ptr sym)
 
function_as_EMIT_NODE_ptr emitDBGScopeEnd (byval_as_FBSYMBOL_ptr sym)
 
sub emitVARINIBEGIN (byval_as_FBSYMBOL_ptr sym)
 
sub emitVARINIi (byval_as_integer dtype, byval_as_integer value)
 
sub emitVARINIf (byval_as_integer dtype, byval_as_double value)
 
sub emitVARINI64 (byval_as_integer dtype, byval_as_longint value)
 
sub emitVARINIOFS (byval_as_zstring_ptr sname, byval_as_integer ofs)
 
sub emitVARINISTR (byval_as_const_zstring_ptr s)
 
sub emitVARINIWSTR (byval_as_zstring_ptr s)
 
sub emitVARINIPAD (byval_as_integer bytes)
 
sub emitFBCTINFBEGIN ()
 
sub emitFBCTINFSTRING (byval_as_zstring_ptr s)
 
sub emitFBCTINFEND ()
 
sub emitWriteStr (byval_as_const_zstring_ptr s, byval_as_integer addtab=FALSE)
 
sub emitWriteObjinfo (byval_as_TLIST_ptr liblist, byval_as_TLIST_ptr libpathlist)
 
sub emitReset ()
 
sub emitFlush ()
 

Variables

const VAR EMIT_INITNODES = 2048
 
const VAR EMIT_INITVREGNODES = EMIT_INITNODES*3
 
const VAR EMIT_REGCLASSES = 2
 
EMITCTX emit
 
any_ptr emit_opfTB [toEMIT_MAXOPS+1]
 

Macro Definition Documentation

#define __EMIT_BI__

Definition at line 2 of file emit.bi.

#define EMIT_REGCLEARALL (   c)    /* emit.regUsedTB(c) = 0 */

Definition at line 1793 of file emit.bi.

#define EMIT_REGISUSED (   c,
 
)    /* ((emit.regUsedTB(c) and (1 shl r)) <> 0) */

Definition at line 1792 of file emit.bi.

#define EMIT_REGSETUSED (   c,
 
)    /* emit.regUsedTB(c) or= (1 shl r) */

Definition at line 1791 of file emit.bi.

#define EMIT_REGTRASHALL (   c)    /* emit.regUsedTB(c) = -1 */

Definition at line 1794 of file emit.bi.

#define emitClose (   tottime)    /* emit.vtbl.close( tottime ) */

Definition at line 1760 of file emit.bi.

#define emitGetFreePreservedReg (   dclass,
  dtype 
)    /* emit.vtbl.getFreePreservedReg( dclass, dtype ) */

Definition at line 1784 of file emit.bi.

#define emitGetOptionValue (   opt)    /* emit.vtbl.getOptionValue( opt ) */

Definition at line 1754 of file emit.bi.

#define emitGetResultReg (   dtype,
  dclass,
  reg,
  reg2 
)    /* emit.vtbl.getResultReg( dtype, dclass, reg, reg2 ) */

Definition at line 1786 of file emit.bi.

#define emitIsKeyword (   text)    /* emit.vtbl.isKeyword( text ) */

Definition at line 1756 of file emit.bi.

#define emitIsRegPreserved (   dclass,
  reg 
)    /* emit.vtbl.isRegPreserved( dclass, reg ) */

Definition at line 1782 of file emit.bi.

#define emitOpen ( )    /* emit.vtbl.open( ) */

Definition at line 1758 of file emit.bi.

#define emitProcAllocArg (   proc,
 
)    /* emit.vtbl.procAllocArg( proc, s ) */

Definition at line 1770 of file emit.bi.

#define emitProcAllocLocal (   proc,
 
)    /* emit.vtbl.procAllocLocal( proc, s ) */

Definition at line 1772 of file emit.bi.

#define emitProcAllocStaticVars (   head_sym)    /* emit.vtbl.procAllocStaticVars( head_sym ) */

Definition at line 1780 of file emit.bi.

#define emitProcBegin (   proc)    /* emit.vtbl.procBegin( proc ) */

Definition at line 1762 of file emit.bi.

#define emitProcEnd (   proc)    /* emit.vtbl.procEnd( proc ) */

Definition at line 1764 of file emit.bi.

#define emitProcFooter (   proc,
  bytestopop,
  initlabel,
  exitlabel 
)    /* emit.vtbl.procFooter( proc, bytestopop, initlabel, exitlabel ) */

Definition at line 1768 of file emit.bi.

#define emitProcGetFrameRegName ( )    /* emit.vtbl.procGetFrameRegName( ) */

Definition at line 1774 of file emit.bi.

#define emitProcHeader (   proc,
  initlabel 
)    /* emit.vtbl.procHeader( proc, initlabel ) */

Definition at line 1766 of file emit.bi.

#define emitScopeBegin (   s)    /* emit.vtbl.scopeBegin( s ) */

Definition at line 1776 of file emit.bi.

#define emitScopeEnd (   s)    /* emit.vtbl.scopeEnd( s ) */

Definition at line 1778 of file emit.bi.

#define emitSection (   sec,
  priority 
)    /* emit.vtbl.setSection( sec, priority ) */

Definition at line 1788 of file emit.bi.

Typedef Documentation

typedef sub EMIT_BOPCB(byval_as_IRVREG_ptr dvreg, byval_as_IRVREG_ptr svreg)

Definition at line 1123 of file emit.bi.

typedef sub EMIT_BRCCB(byval_as_IRVREG_ptr vreg, byval_as_FBSYMBOL_ptr sym, byval_as_integer extra)

Definition at line 1136 of file emit.bi.

typedef sub EMIT_DBGCB(byval_as_FBSYMBOL_ptr sym, byval_as_integer lnum, byval_as_integer pos)

Definition at line 1160 of file emit.bi.

typedef sub EMIT_JTBCB(byval_as_FBSYMBOL_ptr tbsym, byval_as_ulongint_ptr values1, byval_as_FBSYMBOL_ptr_ptr labels1, byval_as_integer labelcount, byval_as_FBSYMBOL_ptr deflabel, byval_as_ulongint minval, byval_as_ulongint maxval)

Definition at line 1145 of file emit.bi.

typedef sub EMIT_LITCB(byval_as_zstring_ptr text)

Definition at line 1142 of file emit.bi.

typedef sub EMIT_MEMCB(byval_as_IRVREG_ptr dvreg, byval_as_IRVREG_ptr svreg, byval_as_integer bytes, byval_as_integer extra)

Definition at line 1155 of file emit.bi.

typedef sub EMIT_RELCB(byval_as_IRVREG_ptr rvreg, byval_as_FBSYMBOL_ptr label, byval_as_IRVREG_ptr dvreg, byval_as_IRVREG_ptr svreg)

Definition at line 1128 of file emit.bi.

typedef sub EMIT_SOPCB(byval_as_FBSYMBOL_ptr sym)

Definition at line 1140 of file emit.bi.

typedef sub EMIT_STKCB(byval_as_IRVREG_ptr vreg, byval_as_integer extra)

Definition at line 1133 of file emit.bi.

typedef sub EMIT_UOPCB(byval_as_IRVREG_ptr dvreg)

Definition at line 1126 of file emit.bi.

Enumeration Type Documentation

Enumerator
EMIT_NODECLASS_NOP 
EMIT_NODECLASS_BOP 
EMIT_NODECLASS_UOP 
EMIT_NODECLASS_REL 
EMIT_NODECLASS_STK 
EMIT_NODECLASS_BRC 
EMIT_NODECLASS_LIT 
EMIT_NODECLASS_JTB 
EMIT_NODECLASS_SOP 
EMIT_NODECLASS_MEM 
EMIT_NODECLASS_DBG 

Definition at line 1019 of file emit.bi.

Enumerator
EMIT_OP_NOP 
EMIT_OP_LOADI2I 
EMIT_OP_LOADF2I 
EMIT_OP_LOADL2I 
EMIT_OP_LOADI2F 
EMIT_OP_LOADF2F 
EMIT_OP_LOADL2F 
EMIT_OP_LOADI2L 
EMIT_OP_LOADF2L 
EMIT_OP_LOADL2L 
EMIT_OP_STORI2I 
EMIT_OP_STORF2I 
EMIT_OP_STORL2I 
EMIT_OP_STORI2F 
EMIT_OP_STORF2F 
EMIT_OP_STORL2F 
EMIT_OP_STORI2L 
EMIT_OP_STORF2L 
EMIT_OP_STORL2L 
EMIT_OP_MOVI 
EMIT_OP_MOVF 
EMIT_OP_MOVL 
EMIT_OP_ADDI 
EMIT_OP_ADDF 
EMIT_OP_ADDL 
EMIT_OP_SUBI 
EMIT_OP_SUBF 
EMIT_OP_SUBL 
EMIT_OP_MULI 
EMIT_OP_MULF 
EMIT_OP_MULL 
EMIT_OP_DIVI 
EMIT_OP_DIVF 
EMIT_OP_DIVL 
EMIT_OP_MODI 
EMIT_OP_MODF 
EMIT_OP_MODL 
EMIT_OP_SHLI 
EMIT_OP_SHLL 
EMIT_OP_SHRI 
EMIT_OP_SHRL 
EMIT_OP_ANDI 
EMIT_OP_ANDL 
EMIT_OP_ORI 
EMIT_OP_ORL 
EMIT_OP_XORI 
EMIT_OP_XORL 
EMIT_OP_EQVI 
EMIT_OP_EQVL 
EMIT_OP_IMPI 
EMIT_OP_IMPL 
EMIT_OP_ATN2 
EMIT_OP_POW 
EMIT_OP_ADDROF 
EMIT_OP_DEREF 
EMIT_OP_CGTI 
EMIT_OP_CGTF 
EMIT_OP_CGTL 
EMIT_OP_CLTI 
EMIT_OP_CLTF 
EMIT_OP_CLTL 
EMIT_OP_CEQI 
EMIT_OP_CEQF 
EMIT_OP_CEQL 
EMIT_OP_CNEI 
EMIT_OP_CNEF 
EMIT_OP_CNEL 
EMIT_OP_CGEI 
EMIT_OP_CGEF 
EMIT_OP_CGEL 
EMIT_OP_CLEI 
EMIT_OP_CLEF 
EMIT_OP_CLEL 
EMIT_OP_NEGI 
EMIT_OP_NEGF 
EMIT_OP_NEGL 
EMIT_OP_NOTI 
EMIT_OP_NOTL 
EMIT_OP_HADDF 
EMIT_OP_ABSI 
EMIT_OP_ABSF 
EMIT_OP_ABSL 
EMIT_OP_SGNI 
EMIT_OP_SGNF 
EMIT_OP_SGNL 
EMIT_OP_FIX 
EMIT_OP_FRAC 
EMIT_OP_CONVFD2FS 
EMIT_OP_SWZREP 
EMIT_OP_SIN 
EMIT_OP_ASIN 
EMIT_OP_COS 
EMIT_OP_ACOS 
EMIT_OP_TAN 
EMIT_OP_ATAN 
EMIT_OP_SQRT 
EMIT_OP_RSQRT 
EMIT_OP_RCP 
EMIT_OP_LOG 
EMIT_OP_EXP 
EMIT_OP_FLOOR 
EMIT_OP_XCHGTOS 
EMIT_OP_STACKALIGN 
EMIT_OP_PUSHI 
EMIT_OP_PUSHF 
EMIT_OP_PUSHL 
EMIT_OP_POPI 
EMIT_OP_POPF 
EMIT_OP_POPL 
EMIT_OP_PUSHUDT 
EMIT_OP_CALL 
EMIT_OP_CALLPTR 
EMIT_OP_BRANCH 
EMIT_OP_JUMP 
EMIT_OP_JUMPPTR 
EMIT_OP_RET 
EMIT_OP_LABEL 
EMIT_OP_PUBLIC 
EMIT_OP_LIT 
EMIT_OP_JMPTB 
EMIT_OP_MEMMOVE 
EMIT_OP_MEMSWAP 
EMIT_OP_MEMCLEAR 
EMIT_OP_STKCLEAR 
EMIT_OP_LINEINI 
EMIT_OP_LINEEND 
EMIT_OP_SCOPEINI 
EMIT_OP_SCOPEEND 
EMIT_MAXOPS 

Definition at line 917 of file emit.bi.

Function Documentation

function_as_EMIT_NODE_ptr emitABS ( byval_as_IRVREG_ptr  dvreg)

Definition at line 1101 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitACOS ( byval_as_IRVREG_ptr  dvreg)

Definition at line 1197 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitADD ( byval_as_IRVREG_ptr  dvreg,
byval_as_IRVREG_ptr  svreg 
)

Definition at line 625 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitADDROF ( byval_as_IRVREG_ptr  dvreg,
byval_as_IRVREG_ptr  svreg 
)

Definition at line 872 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitAND ( byval_as_IRVREG_ptr  dvreg,
byval_as_IRVREG_ptr  svreg 
)

Definition at line 760 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitASIN ( byval_as_IRVREG_ptr  dvreg)

Definition at line 1177 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

sub emitASM ( byval_as_zstring_ptr  text)

Definition at line 1379 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitATAN ( byval_as_IRVREG_ptr  dvreg)

Definition at line 1217 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitATN2 ( byval_as_IRVREG_ptr  dvreg,
byval_as_IRVREG_ptr  svreg 
)

Definition at line 850 of file emit.bas.

Here is the call graph for this function:

function_as_EMIT_NODE_ptr emitBRANCH ( byval_as_integer  op,
byval_as_FBSYMBOL_ptr  label 
)

Definition at line 1450 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitCALL ( byval_as_FBSYMBOL_ptr  label,
byval_as_integer  bytestopop 
)

Definition at line 1428 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitCALLPTR ( byval_as_IRVREG_ptr  svreg,
byval_as_integer  bytestopop 
)

Definition at line 1439 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

sub emitCOMMENT ( byval_as_zstring_ptr  text)

Definition at line 1375 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitCONVFD2FS ( byval_as_IRVREG_ptr  dvreg)

Definition at line 1161 of file emit.bas.

Here is the call graph for this function:

function_as_EMIT_NODE_ptr emitCOS ( byval_as_IRVREG_ptr  dvreg)

Definition at line 1187 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitDBGLineBegin ( byval_as_FBSYMBOL_ptr  proc,
byval_as_integer  ex 
)

Definition at line 1565 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitDBGLineEnd ( byval_as_FBSYMBOL_ptr  proc,
byval_as_integer  ex 
)

Definition at line 1576 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitDBGScopeBegin ( byval_as_FBSYMBOL_ptr  sym)

Definition at line 1587 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitDBGScopeEnd ( byval_as_FBSYMBOL_ptr  sym)

Definition at line 1597 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitDEREF ( byval_as_IRVREG_ptr  dvreg,
byval_as_IRVREG_ptr  svreg 
)

Definition at line 883 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitDIV ( byval_as_IRVREG_ptr  dvreg,
byval_as_IRVREG_ptr  svreg 
)

Definition at line 691 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_string emitDumpRegName ( byval_as_integer  dtype,
byval_as_integer  reg 
)

Definition at line 170 of file emit_x86.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

sub emitEnd ( )

Definition at line 37 of file emit.bas.

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitEQ ( byval_as_IRVREG_ptr  rvreg,
byval_as_FBSYMBOL_ptr  label,
byval_as_IRVREG_ptr  dvreg,
byval_as_IRVREG_ptr  svreg 
)

Definition at line 946 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitEQV ( byval_as_IRVREG_ptr  dvreg,
byval_as_IRVREG_ptr  svreg 
)

Definition at line 814 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitEXP ( byval_as_IRVREG_ptr  dvreg)

Definition at line 1267 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

sub emitFBCTINFBEGIN ( )

Definition at line 6311 of file emit_x86.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

sub emitFBCTINFEND ( )

Definition at line 6322 of file emit_x86.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

sub emitFBCTINFSTRING ( byval_as_zstring_ptr  s)

Definition at line 6315 of file emit_x86.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitFIX ( byval_as_IRVREG_ptr  dvreg)

Definition at line 1143 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitFLOOR ( byval_as_IRVREG_ptr  dvreg)

Definition at line 1277 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

sub emitFlush ( )

Definition at line 146 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitFRAC ( byval_as_IRVREG_ptr  dvreg)

Definition at line 1153 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitGE ( byval_as_IRVREG_ptr  rvreg,
byval_as_FBSYMBOL_ptr  label,
byval_as_IRVREG_ptr  dvreg,
byval_as_IRVREG_ptr  svreg 
)

Definition at line 994 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_REGCLASS_ptr emitGetRegClass ( byval_as_integer  dclass)

Definition at line 218 of file emit.bas.

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitGT ( byval_as_IRVREG_ptr  rvreg,
byval_as_FBSYMBOL_ptr  label,
byval_as_IRVREG_ptr  dvreg,
byval_as_IRVREG_ptr  svreg 
)

Definition at line 898 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitHADD ( byval_as_IRVREG_ptr  dvreg)

Definition at line 1084 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitIMP ( byval_as_IRVREG_ptr  dvreg,
byval_as_IRVREG_ptr  svreg 
)

Definition at line 832 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_integer emitInit ( )

Definition at line 21 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitINTDIV ( byval_as_IRVREG_ptr  dvreg,
byval_as_IRVREG_ptr  svreg 
)

Definition at line 702 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitJMPTB ( byval_as_FBSYMBOL_ptr  tbsym,
byval_as_ulongint_ptr  values1,
byval_as_FBSYMBOL_ptr_ptr  labels1,
byval_as_integer  labelcount,
byval_as_FBSYMBOL_ptr  deflabel,
byval_as_ulongint  minval,
byval_as_ulongint  maxval 
)

Definition at line 1389 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitJUMP ( byval_as_FBSYMBOL_ptr  label)

Definition at line 1461 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitJUMPPTR ( byval_as_IRVREG_ptr  svreg)

Definition at line 1471 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitLABEL ( byval_as_FBSYMBOL_ptr  label)

Definition at line 1490 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitLE ( byval_as_IRVREG_ptr  rvreg,
byval_as_FBSYMBOL_ptr  label,
byval_as_IRVREG_ptr  dvreg,
byval_as_IRVREG_ptr  svreg 
)

Definition at line 1018 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitLOAD ( byval_as_IRVREG_ptr  dvreg,
byval_as_IRVREG_ptr  svreg 
)

Definition at line 481 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitLOG ( byval_as_IRVREG_ptr  dvreg)

Definition at line 1257 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitLT ( byval_as_IRVREG_ptr  rvreg,
byval_as_FBSYMBOL_ptr  label,
byval_as_IRVREG_ptr  dvreg,
byval_as_IRVREG_ptr  svreg 
)

Definition at line 922 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitMEMCLEAR ( byval_as_IRVREG_ptr  dvreg,
byval_as_IRVREG_ptr  bytes_vreg 
)

Definition at line 1539 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitMEMMOVE ( byval_as_IRVREG_ptr  dvreg,
byval_as_IRVREG_ptr  svreg,
byval_as_integer  bytes 
)

Definition at line 1515 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitMEMSWAP ( byval_as_IRVREG_ptr  dvreg,
byval_as_IRVREG_ptr  svreg,
byval_as_integer  bytes 
)

Definition at line 1527 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitMOD ( byval_as_IRVREG_ptr  dvreg,
byval_as_IRVREG_ptr  svreg 
)

Definition at line 713 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitMOV ( byval_as_IRVREG_ptr  dvreg,
byval_as_IRVREG_ptr  svreg 
)

Definition at line 603 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitMUL ( byval_as_IRVREG_ptr  dvreg,
byval_as_IRVREG_ptr  svreg 
)

Definition at line 669 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitNE ( byval_as_IRVREG_ptr  rvreg,
byval_as_FBSYMBOL_ptr  label,
byval_as_IRVREG_ptr  dvreg,
byval_as_IRVREG_ptr  svreg 
)

Definition at line 970 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitNEG ( byval_as_IRVREG_ptr  dvreg)

Definition at line 1046 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitNOT ( byval_as_IRVREG_ptr  dvreg)

Definition at line 1067 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitOR ( byval_as_IRVREG_ptr  dvreg,
byval_as_IRVREG_ptr  svreg 
)

Definition at line 778 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitPOP ( byval_as_IRVREG_ptr  svreg)

Definition at line 1341 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitPOW ( byval_as_IRVREG_ptr  dvreg,
byval_as_IRVREG_ptr  svreg 
)

Definition at line 861 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitPUBLIC ( byval_as_FBSYMBOL_ptr  label)

Definition at line 1500 of file emit.bas.

Here is the call graph for this function:

function_as_EMIT_NODE_ptr emitPUSH ( byval_as_IRVREG_ptr  svreg)

Definition at line 1320 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitPUSHUDT ( byval_as_IRVREG_ptr  svreg,
byval_as_integer  sdsize 
)

Definition at line 1362 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitRCP ( byval_as_IRVREG_ptr  dvreg)

Definition at line 1247 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

sub emitReset ( )

Definition at line 71 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitRET ( byval_as_integer  bytestopop)

Definition at line 1479 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitRSQRT ( byval_as_IRVREG_ptr  dvreg)

Definition at line 1237 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitSGN ( byval_as_IRVREG_ptr  dvreg)

Definition at line 1122 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitSHL ( byval_as_IRVREG_ptr  dvreg,
byval_as_IRVREG_ptr  svreg 
)

Definition at line 724 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitSHR ( byval_as_IRVREG_ptr  dvreg,
byval_as_IRVREG_ptr  svreg 
)

Definition at line 742 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitSIN ( byval_as_IRVREG_ptr  dvreg)

Definition at line 1167 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitSQRT ( byval_as_IRVREG_ptr  dvreg)

Definition at line 1227 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitSTACKALIGN ( byval_as_integer  bytes)

Definition at line 1309 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitSTKCLEAR ( byval_as_integer  bytes,
byval_as_integer  baseofs 
)

Definition at line 1550 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitSTORE ( byval_as_IRVREG_ptr  dvreg,
byval_as_IRVREG_ptr  svreg 
)

Definition at line 540 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitSUB ( byval_as_IRVREG_ptr  dvreg,
byval_as_IRVREG_ptr  svreg 
)

Definition at line 647 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitSWZREP ( byval_as_IRVREG_ptr  dvreg)

Definition at line 1297 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitTAN ( byval_as_IRVREG_ptr  dvreg)

Definition at line 1207 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

sub emitVARINI64 ( byval_as_integer  dtype,
byval_as_longint  value 
)

Definition at line 6272 of file emit_x86.bas.

Here is the call graph for this function:

sub emitVARINIBEGIN ( byval_as_FBSYMBOL_ptr  sym)

Definition at line 6241 of file emit_x86.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

sub emitVARINIf ( byval_as_integer  dtype,
byval_as_double  value 
)

Definition at line 6267 of file emit_x86.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

sub emitVARINIi ( byval_as_integer  dtype,
byval_as_integer  value 
)

Definition at line 6263 of file emit_x86.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

sub emitVARINIOFS ( byval_as_zstring_ptr  sname,
byval_as_integer  ofs 
)

Definition at line 6276 of file emit_x86.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

sub emitVARINIPAD ( byval_as_integer  bytes)

Definition at line 6307 of file emit_x86.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

sub emitVARINISTR ( byval_as_const_zstring_ptr  s)

Definition at line 6288 of file emit_x86.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

sub emitVARINIWSTR ( byval_as_zstring_ptr  s)

Definition at line 6296 of file emit_x86.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

sub emitWriteObjinfo ( byval_as_TLIST_ptr  liblist,
byval_as_TLIST_ptr  libpathlist 
)
sub emitWriteStr ( byval_as_const_zstring_ptr  s,
byval_as_integer  addtab = FALSE 
)

Definition at line 48 of file emit.bas.

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitXchgTOS ( byval_as_IRVREG_ptr  svreg)

Definition at line 1287 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

function_as_EMIT_NODE_ptr emitXOR ( byval_as_IRVREG_ptr  dvreg,
byval_as_IRVREG_ptr  svreg 
)

Definition at line 796 of file emit.bas.

Here is the call graph for this function:

Here is the caller graph for this function:

Variable Documentation

EMITCTX emit

Definition at line 19 of file emit.bas.

const VAR EMIT_INITNODES = 2048

Definition at line 910 of file emit.bi.

const VAR EMIT_INITVREGNODES = EMIT_INITNODES*3

Definition at line 911 of file emit.bi.

any_ptr emit_opfTB[toEMIT_MAXOPS+1]
const VAR EMIT_REGCLASSES = 2

Definition at line 914 of file emit.bi.