Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

ast: Merge some of the small modules into ast-node-misc.bas

  • Loading branch information...
commit 5920ce3ba02d8c2c0acbba50d9f65a453be288fc 1 parent bfeb128
@dkl dkl authored
View
40 compiler/ast-node-field.bas
@@ -1,40 +0,0 @@
-'' AST field nodes - used only temporarily in expression trees, to be able to
-'' check for bitfield assignment/access and opimizations. FIELDs are pruned
-'' during astOptimizeTree().
-''
-'' l = field access; r = NULL
-''
-'' chng: sep/2004 written [v1ctor]
-
-
-#include once "fb.bi"
-#include once "fbint.bi"
-#include once "ir.bi"
-#include once "ast.bi"
-
-'':::::
-function astNewFIELD _
- ( _
- byval p as ASTNODE ptr, _
- byval sym as FBSYMBOL ptr, _
- byval dtype as integer, _
- byval subtype as FBSYMBOL ptr = NULL _
- ) as ASTNODE ptr
-
- dim as ASTNODE ptr n = any
-
- if( dtype = FB_DATATYPE_BITFIELD ) then
- '' final type is always an unsigned int
- dtype = typeJoin( dtype, FB_DATATYPE_UINT )
- subtype = NULL
- end if
-
- '' alloc new node
- n = astNewNode( AST_NODECLASS_FIELD, dtype, subtype )
-
- n->sym = sym
- n->l = p
-
- function = n
-
-end function
View
65 compiler/ast-node-link.bas
@@ -1,65 +0,0 @@
-'' AST linking nodes
-'' l = curr node; r = next link
-''
-'' chng: sep/2004 written [v1ctor]
-
-
-#include once "fb.bi"
-#include once "fbint.bi"
-#include once "ir.bi"
-#include once "ast.bi"
-
-'':::::
-function astNewLINK _
- ( _
- byval l as ASTNODE ptr, _
- byval r as ASTNODE ptr, _
- byval ret_left as integer _
- ) as ASTNODE ptr
-
- dim as ASTNODE ptr n = any
-
- if( l = NULL ) then
- return r
- elseif( r = NULL ) then
- return l
- end if
-
- ''
- if( ret_left ) then
- n = astNewNode( AST_NODECLASS_LINK, astGetFullType( l ), l->subtype )
- else
- n = astNewNode( AST_NODECLASS_LINK, astGetFullType( r ), r->subtype )
- end if
-
- ''
- n->link.ret_left = ret_left
- n->l = l
- n->r = r
-
- function = n
-
-end function
-
-'':::::
-function astLoadLINK _
- ( _
- byval n as ASTNODE ptr _
- ) as IRVREG ptr
-
- dim as IRVREG ptr vrl = any, vrr = any
-
- vrl = astLoad( n->l )
- astDelNode( n->l )
-
- vrr = astLoad( n->r )
- astDelNode( n->r )
-
- if( n->link.ret_left ) then
- function = vrl
- else
- function = vrr
- end if
-
-end function
-
View
59 compiler/ast-node-load.bas
@@ -1,59 +0,0 @@
-'' AST loading nodes
-'' l = expression to load to a register; r = NULL
-''
-'' chng: sep/2004 written [v1ctor]
-
-
-#include once "fb.bi"
-#include once "fbint.bi"
-#include once "ir.bi"
-#include once "ast.bi"
-
-'':::::
-function astNewLOAD _
- ( _
- byval l as ASTNODE ptr, _
- byval dtype as integer, _
- byval isresult as integer _
- ) as ASTNODE ptr
-
- '' alloc new node
- dim as ASTNODE ptr n = astNewNode( AST_NODECLASS_LOAD, dtype )
-
- n->l = l
- n->lod.isres = isresult
-
- function = n
-end function
-
-'':::::
-function astLoadLOAD _
- ( _
- byval n as ASTNODE ptr _
- ) as IRVREG ptr
-
- dim as ASTNODE ptr l = any
- dim as IRVREG ptr v1 = any, vr = any
-
- l = n->l
- if( l = NULL ) then
- return NULL
- end if
-
- v1 = astLoad( l )
-
- if( ast.doemit ) then
- if( n->lod.isres ) then
- vr = irAllocVREG( irGetVRDataType( v1 ), irGetVRSubType( v1 ) )
- irEmitLOADRES( v1, vr )
- else
- irEmitLOAD( v1 )
- end if
- end if
-
- astDelNode( l )
-
- function = v1
-
-end function
-
View
269 compiler/ast-node-misc.bas
@@ -11,20 +11,15 @@
#include once "ast.bi"
#include once "emit.bi"
-'':::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
-'' labels (l = NULL; r = NULL)
-'':::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
-
-'':::::
+'' Labels (l = NULL; r = NULL)
function astNewLABEL _
( _
byval sym as FBSYMBOL ptr, _
byval doflush as integer _
) as ASTNODE ptr
- dim as ASTNODE ptr n = any
+ dim as ASTNODE ptr n = any
- '' alloc new node
n = astNewNode( AST_NODECLASS_LABEL, FB_DATATYPE_INVALID )
n->sym = sym
@@ -39,15 +34,9 @@ function astNewLABEL _
end if
function = n
-
end function
-'':::::
-function astLoadLABEL _
- ( _
- byval n as ASTNODE ptr _
- ) as IRVREG ptr
-
+function astLoadLABEL( byval n as ASTNODE ptr ) as IRVREG ptr
if( ast.doemit ) then
if( n->lbl.flush ) then
irEmitLABEL( n->sym )
@@ -57,37 +46,21 @@ function astLoadLABEL _
end if
function = NULL
-
end function
-'':::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
-'' lit (l = NULL; r = NULL)
-'':::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
-
-'':::::
-function astNewLIT _
- ( _
- byval text as zstring ptr _
- ) as ASTNODE ptr
-
- dim as ASTNODE ptr n = any
+'' Literals (l = NULL; r = NULL)
+function astNewLIT( byval text as zstring ptr ) as ASTNODE ptr
+ dim as ASTNODE ptr n = any
- '' alloc new node
n = astNewNode( AST_NODECLASS_LIT, FB_DATATYPE_INVALID )
n->lit.text = ZstrAllocate( len( *text ) )
*n->lit.text = *text
function = n
-
end function
-'':::::
-function astLoadLIT _
- ( _
- byval n as ASTNODE ptr _
- ) as IRVREG ptr
-
+function astLoadLIT( byval n as ASTNODE ptr ) as IRVREG ptr
if( ast.doemit ) then
irEmitCOMMENT( n->lit.text )
end if
@@ -95,36 +68,20 @@ function astLoadLIT _
ZstrFree( n->lit.text )
function = NULL
-
end function
-'':::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
'' ASM (l = NULL; r = NULL)
-'':::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
+function astNewASM( byval listhead as FB_ASMTOK_ ptr ) as ASTNODE ptr
+ dim as ASTNODE ptr n = any
-'':::::
-function astNewASM _
- ( _
- byval listhead as FB_ASMTOK_ ptr _
- ) as ASTNODE ptr
-
- dim as ASTNODE ptr n = any
-
- '' alloc new node
n = astNewNode( AST_NODECLASS_ASM, FB_DATATYPE_INVALID )
n->asm.head = listhead
function = n
-
end function
-'':::::
-function astLoadASM _
- ( _
- byval n as ASTNODE ptr _
- ) as IRVREG ptr
-
+function astLoadASM( byval n as ASTNODE ptr ) as IRVREG ptr
dim as FB_ASMTOK ptr node = any, nxt = any
dim as string asmline
@@ -162,112 +119,224 @@ function astLoadASM _
end if
function = NULL
-
end function
-'':::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
-'' DBG (l = NULL; r = NULL)
-'':::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
-
-'':::::
+'' Debug (l = NULL; r = NULL)
function astNewDBG _
( _
byval op as integer, _
byval ex as integer _
) as ASTNODE ptr
- dim as ASTNODE ptr n = any
+ dim as ASTNODE ptr n = any
if( env.clopt.debug = FALSE ) then
return NULL
end if
- '' alloc new node
n = astNewNode( AST_NODECLASS_DBG, FB_DATATYPE_INVALID )
n->dbg.op = op
n->dbg.ex = ex
function = n
-
end function
-'':::::
-function astLoadDBG _
- ( _
- byval n as ASTNODE ptr _
- ) as IRVREG ptr
-
+function astLoadDBG( byval n as ASTNODE ptr ) as IRVREG ptr
if( ast.doemit ) then
irEmitDBG( n->dbg.op, astGetProc( )->sym, n->dbg.ex )
end if
function = NULL
-
end function
-'':::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
'' No Operation (l = NULL; r = NULL)
-'':::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
+function astNewNOP( ) as ASTNODE ptr
+ dim as ASTNODE ptr n = any
-'':::::
-function astNewNOP _
+ n = astNewNode( AST_NODECLASS_NOP, FB_DATATYPE_INVALID )
+
+ function = n
+end function
+
+function astLoadNOP( byval n as ASTNODE ptr ) as IRVREG ptr
+ '' do nothing
+ function = NULL
+end function
+
+'' Non-Indexed Array (l = expr; r = NULL)
+function astNewNIDXARRAY( byval expr as ASTNODE ptr ) as ASTNODE ptr
+ dim as ASTNODE ptr n = any
+
+ n = astNewNode( AST_NODECLASS_NIDXARRAY, FB_DATATYPE_INVALID )
+
+ n->l = expr
+
+ function = n
+end function
+
+function astLoadNIDXARRAY( byval n as ASTNODE ptr ) as IRVREG ptr
+ astDelTree( n->l )
+ function = NULL
+end function
+
+'' Links (l = statement 1; r = statement 2)
+function astNewLINK _
( _
- _
+ byval l as ASTNODE ptr, _
+ byval r as ASTNODE ptr, _
+ byval ret_left as integer _
) as ASTNODE ptr
- dim as ASTNODE ptr n = any
+ dim as ASTNODE ptr n = any
- '' alloc new node
- n = astNewNode( AST_NODECLASS_NOP, FB_DATATYPE_INVALID )
+ if( l = NULL ) then
+ return r
+ end if
+
+ if( r = NULL ) then
+ return l
+ end if
+
+ if( ret_left ) then
+ n = astNewNode( AST_NODECLASS_LINK, astGetFullType( l ), l->subtype )
+ else
+ n = astNewNode( AST_NODECLASS_LINK, astGetFullType( r ), r->subtype )
+ end if
+
+ n->link.ret_left = ret_left
+ n->l = l
+ n->r = r
function = n
+end function
+
+function astLoadLINK( byval n as ASTNODE ptr ) as IRVREG ptr
+ dim as IRVREG ptr vrl = any, vrr = any
+ vrl = astLoad( n->l )
+ astDelNode( n->l )
+
+ vrr = astLoad( n->r )
+ astDelNode( n->r )
+
+ if( n->link.ret_left ) then
+ function = vrl
+ else
+ function = vrr
+ end if
end function
-'':::::
-function astLoadNOP _
+'' Explicit loads (l = expression to load to a register; r = NULL)
+function astNewLOAD _
( _
- byval n as ASTNODE ptr _
- ) as IRVREG ptr
+ byval l as ASTNODE ptr, _
+ byval dtype as integer, _
+ byval isresult as integer _
+ ) as ASTNODE ptr
- '' do nothing
+ '' alloc new node
+ dim as ASTNODE ptr n = astNewNode( AST_NODECLASS_LOAD, dtype )
- function = NULL
+ n->l = l
+ n->lod.isres = isresult
+ function = n
end function
-'':::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
-'' Non-Indexed Array (l = expr; r = NULL)
-'':::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
+function astLoadLOAD( byval n as ASTNODE ptr ) as IRVREG ptr
+ dim as ASTNODE ptr l = any
+ dim as IRVREG ptr v1 = any, vr = any
-'':::::
-function astNewNIDXARRAY _
+ l = n->l
+ if( l = NULL ) then
+ return NULL
+ end if
+
+ v1 = astLoad( l )
+
+ if( ast.doemit ) then
+ if( n->lod.isres ) then
+ vr = irAllocVREG( irGetVRDataType( v1 ), irGetVRSubType( v1 ) )
+ irEmitLOADRES( v1, vr )
+ else
+ irEmitLOAD( v1 )
+ end if
+ end if
+
+ astDelNode( l )
+
+ function = v1
+end function
+
+'' Field accesses - used only temporarily in expression trees, to be able to
+'' check for bitfield assignment/access and opimizations. FIELDs are pruned
+'' during astOptimizeTree().
+'' l = field access; r = NULL
+function astNewFIELD _
( _
- byval expr as ASTNODE ptr _
+ byval p as ASTNODE ptr, _
+ byval sym as FBSYMBOL ptr, _
+ byval dtype as integer, _
+ byval subtype as FBSYMBOL ptr _
) as ASTNODE ptr
- dim as ASTNODE ptr n = any
+ dim as ASTNODE ptr n = any
- '' alloc new node
- n = astNewNode( AST_NODECLASS_NIDXARRAY, FB_DATATYPE_INVALID )
+ if( dtype = FB_DATATYPE_BITFIELD ) then
+ '' final type is always an unsigned int
+ dtype = typeJoin( dtype, FB_DATATYPE_UINT )
+ subtype = NULL
+ end if
- n->l = expr
+ n = astNewNode( AST_NODECLASS_FIELD, dtype, subtype )
- function = n
+ n->sym = sym
+ n->l = p
+ function = n
end function
-'':::::
-function astLoadNIDXARRAY _
+'' Stack operations (l = expression; r = NULL)
+
+function astNewSTACK _
( _
- byval n as ASTNODE ptr _
- ) as IRVREG ptr
+ byval op as integer, _
+ byval l as ASTNODE ptr _
+ ) as ASTNODE ptr
- astDelTree( n->l )
+ dim as ASTNODE ptr n = any
- function = NULL
+ if( l = NULL ) then
+ return NULL
+ end if
+
+ n = astNewNode( AST_NODECLASS_STACK, astGetFullType( l ), NULL )
+
+ n->stack.op = op
+ n->l = l
+
+ function = n
+end function
+
+function astLoadSTACK( byval n as ASTNODE ptr ) as IRVREG ptr
+ dim as ASTNODE ptr l = any
+ dim as IRVREG ptr vr = any
+
+ l = n->l
+ if( l = NULL ) then
+ return NULL
+ end if
+
+ vr = astLoad( l )
+
+ if( ast.doemit ) then
+ irEmitSTACK( n->stack.op, vr )
+ end if
+
+ astDelNode( l )
+ function = vr
end function
'':::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
View
60 compiler/ast-node-stack.bas
@@ -1,60 +0,0 @@
-'' AST stack nodes
-'' l = expression; r = NULL
-''
-'' chng: sep/2004 written [v1ctor]
-
-
-#include once "fb.bi"
-#include once "fbint.bi"
-#include once "ir.bi"
-#include once "ast.bi"
-
-'':::::
-function astNewSTACK _
- ( _
- byval op as integer, _
- byval l as ASTNODE ptr _
- ) as ASTNODE ptr
-
- dim as ASTNODE ptr n = any
-
- if( l = NULL ) then
- return NULL
- end if
-
- '' alloc new node
- n = astNewNode( AST_NODECLASS_STACK, astGetFullType( l ), NULL )
-
- n->stack.op = op
- n->l = l
-
- function = n
-
-end function
-
-'':::::
-function astLoadSTACK _
- ( _
- byval n as ASTNODE ptr _
- ) as IRVREG ptr
-
- dim as ASTNODE ptr l = any
- dim as IRVREG ptr vr = any
-
- l = n->l
- if( l = NULL ) then
- return NULL
- end if
-
- vr = astLoad( l )
-
- if( ast.doemit ) then
- irEmitSTACK( n->stack.op, vr )
- end if
-
- astDelNode( l )
-
- function = vr
-
-end function
-
View
212 compiler/ast.bas
@@ -15,198 +15,6 @@
#include once "ir.bi"
#include once "ast.bi"
-declare sub astProcListInit _
- ( _
- )
-
-declare sub astProcListEnd _
- ( _
- )
-
-declare sub astCallInit _
- ( _
- )
-
-declare sub astCallEnd _
- ( _
- )
-
-declare sub astMiscInit _
- ( _
- )
-
-declare sub astMiscEnd _
- ( _
- )
-
-declare sub astDataStmtInit _
- ( _
- )
-
-declare function astLoadNOP _
- ( _
- byval n as ASTNODE ptr _
- ) as IRVREG ptr
-
-declare function astLoadASSIGN _
- ( _
- byval n as ASTNODE ptr _
- ) as IRVREG ptr
-
-declare function astLoadCONV _
- ( _
- byval n as ASTNODE ptr _
- ) as IRVREG ptr
-
-declare function astLoadBOP _
- ( _
- byval n as ASTNODE ptr _
- ) as IRVREG ptr
-
-declare function astLoadUOP _
- ( _
- byval n as ASTNODE ptr _
- ) as IRVREG ptr
-
-declare function astLoadCONST _
- ( _
- byval n as ASTNODE ptr _
- ) as IRVREG ptr
-
-declare function astLoadVAR _
- ( _
- byval n as ASTNODE ptr _
- ) as IRVREG ptr
-
-declare function astLoadIDX _
- ( _
- byval n as ASTNODE ptr _
- ) as IRVREG ptr
-
-declare function astLoadDEREF _
- ( _
- byval n as ASTNODE ptr _
- ) as IRVREG ptr
-
-declare function astLoadCALL _
- ( _
- byval n as ASTNODE ptr _
- ) as IRVREG ptr
-
-declare function astLoadCALLCTOR _
- ( _
- byval n as ASTNODE ptr _
- ) as IRVREG ptr
-
-declare function astLoadADDROF _
- ( _
- byval n as ASTNODE ptr _
- ) as IRVREG ptr
-
-declare function astLoadLOAD _
- ( _
- byval n as ASTNODE ptr _
- ) as IRVREG ptr
-
-declare function astLoadBRANCH _
- ( _
- byval n as ASTNODE ptr _
- ) as IRVREG ptr
-
-/'
-declare function astLoadIIF _
- ( _
- byval n as ASTNODE ptr _
- ) as IRVREG ptr
-'/
-
-declare function astLoadOFFSET _
- ( _
- byval n as ASTNODE ptr _
- ) as IRVREG ptr
-
-declare function astLoadLINK _
- ( _
- byval n as ASTNODE ptr _
- ) as IRVREG ptr
-
-declare function astLoadSTACK _
- ( _
- byval n as ASTNODE ptr _
- ) as IRVREG ptr
-
-declare function astLoadLABEL _
- ( _
- byval n as ASTNODE ptr _
- ) as IRVREG ptr
-
-declare function astLoadLIT _
- ( _
- byval n as ASTNODE ptr _
- ) as IRVREG ptr
-
-declare function astLoadASM _
- ( _
- byval n as ASTNODE ptr _
- ) as IRVREG ptr
-
-declare function astLoadJMPTB _
- ( _
- byval n as ASTNODE ptr _
- ) as IRVREG ptr
-
-declare function astLoadDBG _
- ( _
- byval n as ASTNODE ptr _
- ) as IRVREG ptr
-
-declare function astLoadMEM _
- ( _
- byval n as ASTNODE ptr _
- ) as IRVREG ptr
-
-declare function astLoadBOUNDCHK _
- ( _
- byval n as ASTNODE ptr _
- ) as IRVREG ptr
-
-declare function astLoadPTRCHK _
- ( _
- byval n as ASTNODE ptr _
- ) as IRVREG ptr
-
-declare function astLoadSCOPEBEGIN _
- ( _
- byval n as ASTNODE ptr _
- ) as IRVREG ptr
-
-declare function astLoadSCOPEEND _
- ( _
- byval n as ASTNODE ptr _
- ) as IRVREG ptr
-
-declare function astLoadDECL _
- ( _
- byval n as ASTNODE ptr _
- ) as IRVREG ptr
-
-declare function astLoadNIDXARRAY _
- ( _
- byval n as ASTNODE ptr _
- ) as IRVREG ptr
-
-declare sub astCloneCALL _
- ( _
- byval n as ASTNODE ptr, _
- byval c as ASTNODE ptr _
- )
-
-declare sub astDelCALL _
- ( _
- byval n as ASTNODE ptr _
- )
-
-
dim shared as ASTCTX ast
type AST_LOADCALLBACK as function( byval n as ASTNODE ptr ) as IRVREG ptr
@@ -384,41 +192,25 @@ dim shared as uinteger ast_bitmaskTB( 0 to ... ) = _
33554431, 67108863, 134217727, 268435455, 536870911, 1073741823, 2147483647, 4294967295 _
}
-'':::::
-sub astInit static
-
- ''
+sub astInit( )
listInit( @ast.astTB, AST_INITNODES, len( ASTNODE ), LIST_FLAGS_NOCLEAR )
- ''
ast.doemit = TRUE
ast.typeinicnt = 0
ast.currblock = NULL
- ''
astCallInit( )
-
astProcListInit( )
-
astDataStmtInit( )
-
astMiscInit( )
-
end sub
-'':::::
-sub astEnd static
-
- ''
+sub astEnd( )
astMiscEnd( )
-
astProcListEnd( )
-
astCallEnd( )
- ''
listEnd( @ast.astTB )
-
end sub
'':::::
View
65 compiler/ast.bi
@@ -347,15 +347,15 @@ enum AST_INIOPT
end enum
-declare sub astInit _
- ( _
- _
- )
-
-declare sub astEnd _
- ( _
- _
- )
+declare sub astInit( )
+declare sub astEnd( )
+declare sub astProcListInit( )
+declare sub astProcListEnd( )
+declare sub astCallInit( )
+declare sub astCallEnd( )
+declare sub astMiscInit( )
+declare sub astMiscEnd( )
+declare sub astDataStmtInit( )
declare sub astDelNode _
( _
@@ -644,6 +644,17 @@ declare function astNewCALLCTOR _
byval instptr as ASTNODE ptr _
) as ASTNODE ptr
+declare sub astCloneCALL _
+ ( _
+ byval n as ASTNODE ptr, _
+ byval c as ASTNODE ptr _
+ )
+
+declare sub astDelCALL _
+ ( _
+ byval n as ASTNODE ptr _
+ )
+
declare function astNewARG _
( _
byval f as ASTNODE ptr, _
@@ -1215,17 +1226,43 @@ declare function astGosubAddReturn _
declare sub astGosubAddExit(byval proc as FBSYMBOL ptr)
-declare function astLoadIIF _
- ( _
- byval n as ASTNODE ptr _
- ) as IRVREG ptr
-
declare function hTruncateInt _
( _
byval dtype as integer, _
byval value as integer ptr _
) as integer
+declare function astLoadNOP( byval n as ASTNODE ptr ) as IRVREG ptr
+declare function astLoadASSIGN( byval n as ASTNODE ptr ) as IRVREG ptr
+declare function astLoadCONV( byval n as ASTNODE ptr ) as IRVREG ptr
+declare function astLoadBOP( byval n as ASTNODE ptr ) as IRVREG ptr
+declare function astLoadUOP( byval n as ASTNODE ptr ) as IRVREG ptr
+declare function astLoadCONST( byval n as ASTNODE ptr ) as IRVREG ptr
+declare function astLoadVAR( byval n as ASTNODE ptr ) as IRVREG ptr
+declare function astLoadIDX( byval n as ASTNODE ptr ) as IRVREG ptr
+declare function astLoadDEREF( byval n as ASTNODE ptr ) as IRVREG ptr
+declare function astLoadCALL( byval n as ASTNODE ptr ) as IRVREG ptr
+declare function astLoadCALLCTOR( byval n as ASTNODE ptr ) as IRVREG ptr
+declare function astLoadADDROF( byval n as ASTNODE ptr ) as IRVREG ptr
+declare function astLoadLOAD( byval n as ASTNODE ptr ) as IRVREG ptr
+declare function astLoadBRANCH( byval n as ASTNODE ptr ) as IRVREG ptr
+declare function astLoadIIF( byval n as ASTNODE ptr ) as IRVREG ptr
+declare function astLoadOFFSET( byval n as ASTNODE ptr ) as IRVREG ptr
+declare function astLoadLINK( byval n as ASTNODE ptr ) as IRVREG ptr
+declare function astLoadSTACK( byval n as ASTNODE ptr ) as IRVREG ptr
+declare function astLoadLABEL( byval n as ASTNODE ptr ) as IRVREG ptr
+declare function astLoadLIT( byval n as ASTNODE ptr ) as IRVREG ptr
+declare function astLoadASM( byval n as ASTNODE ptr ) as IRVREG ptr
+declare function astLoadJMPTB( byval n as ASTNODE ptr ) as IRVREG ptr
+declare function astLoadDBG( byval n as ASTNODE ptr ) as IRVREG ptr
+declare function astLoadMEM( byval n as ASTNODE ptr ) as IRVREG ptr
+declare function astLoadBOUNDCHK( byval n as ASTNODE ptr ) as IRVREG ptr
+declare function astLoadPTRCHK( byval n as ASTNODE ptr ) as IRVREG ptr
+declare function astLoadSCOPEBEGIN( byval n as ASTNODE ptr ) as IRVREG ptr
+declare function astLoadSCOPEEND( byval n as ASTNODE ptr ) as IRVREG ptr
+declare function astLoadDECL( byval n as ASTNODE ptr ) as IRVREG ptr
+declare function astLoadNIDXARRAY( byval n as ASTNODE ptr ) as IRVREG ptr
+
''
'' macros
''
View
6 makefile
@@ -406,9 +406,9 @@ FBC_BAS := \
ast ast-gosub ast-helper ast-misc \
ast-node-addr ast-node-arg ast-node-assign ast-node-bop ast-node-branch \
ast-node-call ast-node-check ast-node-const ast-node-conv ast-node-data \
- ast-node-decl ast-node-field ast-node-idx ast-node-iif \
- ast-node-link ast-node-load ast-node-mem ast-node-misc \
- ast-node-proc ast-node-ptr ast-node-scope ast-node-stack ast-node-typeini \
+ ast-node-decl ast-node-idx ast-node-iif \
+ ast-node-mem ast-node-misc \
+ ast-node-proc ast-node-ptr ast-node-scope ast-node-typeini \
ast-node-uop ast-node-var ast-optimize ast-vectorize \
dstr edbg_stab emit emit_SSE emit_x86 error fb fb-main \
fbc flist hash hlp hlp-str ir ir-hlc ir-tac lex lex-utf list \
Please sign in to comment.
Something went wrong with that request. Please try again.