logo

class

compiler::CodeAsm

sys::Obj
  compiler::CompilerSupport
    compiler::CodeAsm

CodeAsm is used to assemble the fcode instructions of an Expr or Block.

Slots

block

Void block(Block block)

code

Buf code

errCount

Int errCount

errTable

Buf errTable

expr

Void expr(Expr expr)

finishCode

Buf finishCode()

Finish writing out the exception handling table

finishErrTable

Buf finishErrTable()

Finish writing out the exception handling table

finishLines

Buf finishLines()

Finish writing out the line number table

fpod

FPod fpod

lastLine

Int lastLine

leavesToReturn

Int[] leavesToReturn

lineCount

Int lineCount

lines

Buf lines

location

Location location

loopStack

Loop[] loopStack

make

new make(Compiler compiler, Location location, FPod fpod)

op

Void op(FOp op, Int arg := def)

Append a opcode with option two byte argument.

protectedRegions

ProtectedRegion[] protectedRegions

returnLocal

MethodVar returnLocal

stmt

Void stmt(Stmt stmt)