Index

Jump to:   -   \   #  
A   B   C   D   E   F   G   H   I   L   M   N   O   P   R   S   T   U   V   W  
Index EntrySection

-
-disasm.i output fileVM disassembler
-gen.i output fileVM code generation
-h, command-line optionInvoking Vmgen
–help, command-line optionInvoking Vmgen
-labels.i output fileVM instruction table
-peephole.i output filePeephole optimization
-profile.i output fileVM profiler
-v, command-line optionInvoking Vmgen
–version, command-line optionInvoking Vmgen
-vm.i output fileVM engine

\
\CInput File Grammar
\EEval escapes

#
# can only be on the input side errorError messages
#lineInput File Grammar

A
accessing stack (pointer)C Code restrictions
advantages of interpretersWhy interpreters?
advantages of vmgenWhy interpreters?
assumptions about C codeC Code restrictions

B
basic block, VM levelC Code Macros
basic type of a stackSimple instructions
BB_BOUNDARY in profilingVM profiler
branch instruction, VMFront end and VM interpreter

C
C code restrictionsC Code restrictions
C escapeInput File Grammar
casts exampleExample overview
casts in type cast macrosVM engine
Changes from old versionsChanges
code generation, VMVM code generation
conditional compilation of Vmgen outputInput File Grammar

D
default stack of a type prefixSimple instructions
defining a stackSimple instructions
defining superinstructionsSuperinstructions
disasm.cVM disassembler
disassembler, VM codeVM disassembler
Dispatch of VM instructionsDispatch

E
effect, stackSimple instructions
efficiency features overviewIntroduction
eliminating stack storesStore Optimization
engineVM engine
engine.cVM engine
error messagesError messages
escape to ForthEval escapes
eval escapeEval escapes
example filesExample overview
example of a Vmgen-based interpreterExample
example overviewExample overview
executing VM codeVM engine
explicit stack accessExplicit stack access

F
FDL, GNU Free Documentation LicenseGNU Free Documentation License
format, input fileInput File Format
free-format, notInput File Grammar
front-endFront end and VM interpreter
functionality features overviewIntroduction
future ideasThe future

G
garbage collectionData handling
generated code, usageUsing the generated code
grammar, input fileInput File Grammar

H
hintsHints

I
IMM_ARGVM engine
immediate argument, VM instructionFront end and VM interpreter
immediate argumentsData handling
immediate arguments, VM code generationVM code generation
include-skipped-instsSuperinstructions
input file formatInput File Format
input file grammarInput File Grammar
instruction pointer definitionVM engine
instruction pointer, accessC Code restrictions
instruction streamData handling
instruction streamSimple instructions
instruction stream, basic typeVM engine
instruction tableVM instruction table
instruction, simple VMSimple instructions
instruction, VMFront end and VM interpreter
interpreters, advantagesWhy interpreters?
Invoking VmgenInvoking Vmgen
IP, IPTOS in disassmblerVM disassembler

L
labels for threaded codeVM instruction table

M
macros recognized by VmgenC Code Macros
main interpreter loopDispatch
modularization of interpretersFront end and VM interpreter

N
newlines, significance in syntaxInput File Grammar

O
opcode definitionVM instruction table
opcode, VM instructionFront end and VM interpreter
optimization, stack storesStore Optimization

P
peephole optimizationPeephole optimization
peephole.cPeephole optimization
prefix for this combination must be defined earlier errorError messages
prefix, stackSimple instructions
prefix, typeSimple instructions
prefixes of superinstructionsSuperinstructions
profile.cVM profiler
profiling exampleUsing profiling to create superinstructions
profiling for selecting superinstructionsVM profiler

R
reference countingData handling
register machineData handling
Register VMRegister Machines
register, VMFront end and VM interpreter
restrictions on C codeC Code restrictions

S
seq2rule.awkVM profiler
simple VM instructionSimple instructions
size, stack itemsData handling
speed for JVMIntroduction
speed of interpretersWhy interpreters?
stack access, explicitExplicit stack access
stack basic typeSimple instructions
stack cachingVM engine
stack caching, restriction on C codeC Code restrictions
stack definitionSimple instructions
stack effectSimple instructions
stack growth directionStack growth direction
stack item sizeData handling
stack machineData handling
Stack pointer accessExplicit stack access
stack pointer definitionVM engine
stack pointer, accessC Code restrictions
stack prefixSimple instructions
stack stores, optimizationStore Optimization
stack-access-transformStack growth direction
stat.awkVM profiler
store optimizationStore Optimization
SUPER_END in profilingVM profiler
superinstructions and profilingVM profiler
superinstructions and tracingVM engine
superinstructions exampleUsing profiling to create superinstructions
Superinstructions for register VMsRegister Machines
superinstructions, definingSuperinstructions
superinstructions, generatingPeephole optimization
superinstructions, restrictions on componentsC Code restrictions
switch dispatchDispatch
sync line syntax errorError messages
sync linesInput File Grammar
syntax error, wrong char errorError messages

T
TAIL;, changesChanges
threaded codeDispatch
too many stacks errorError messages
top of stack cachingVM engine
TOSVM engine
tracing of register VMsRegister Machines
tracing VM codeVM engine
type cast macroVM engine
type casting between floats and integersVM engine
type of a stack, basicSimple instructions
type prefixSimple instructions

U
unions exampleExample overview
unions in type cast macrosVM engine
unknown prefix errorError messages
unknown primitive errorError messages
Using vmgen-erated codeUsing the generated code

V
virtual machineFront end and VM interpreter
VMFront end and VM interpreter
VM branch instructionFront end and VM interpreter
VM code generationVM code generation
VM disassemblerVM disassembler
VM instructionFront end and VM interpreter
VM instruction executionVM engine
VM profilerVM profiler
VM registerFront end and VM interpreter
vm_A2B, changesChanges
VM_IS_INST in profilingVM profiler
vm_prim, definitionVM instruction table
vm_prim, useVM code generation
vm_twoA2B, changesChanges
vmgen-exExample overview
vmgen-ex2Example overview

W
wrapper filesExample overview