avrora.sim.dbbc
Class DBBC
java.lang.Object
avrora.sim.dbbc.DBBC
- public class DBBC
- extends java.lang.Object
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
globalMap
protected static java.util.HashMap globalMap
options
public final Options options
printer
protected final Verbose.Printer printer
MINIMUM_BLOCK_SIZE
public final Option.Long MINIMUM_BLOCK_SIZE
USE_REGISTER_ARRAY
public final Option.Bool USE_REGISTER_ARRAY
CACHE_REGISTERS
public final Option.Bool CACHE_REGISTERS
ALLOW_REGISTER_UPDATES
public final Option.Bool ALLOW_REGISTER_UPDATES
DEAD_CODE_ELIMINATION
public final Option.Bool DEAD_CODE_ELIMINATION
CONSTANT_PROPAGATION
public final Option.Bool CONSTANT_PROPAGATION
TEMP_COALLESCING
public final Option.Bool TEMP_COALLESCING
INTRA_BLOCK_PROBING
public final Option.Bool INTRA_BLOCK_PROBING
REUSE_CACHE
public final Option.Bool REUSE_CACHE
CACHE_DIRECTORY
public final Option.Str CACHE_DIRECTORY
program
protected final Program program
cfg
protected final ControlFlowGraph cfg
loader
protected final DBBC.DBBCClassLoader loader
tmpDir
protected final java.lang.String tmpDir
codeBlockMap
protected final java.util.HashMap codeBlockMap
compiledCodeMap
protected final java.util.HashMap compiledCodeMap
DBBC
public DBBC(Program p,
Options o)
getProgram
public Program getProgram()
invalidateBlock
public void invalidateBlock(int addr)
- The
invalidateBlock()
method invalidates any compiled copies of the block that contains
the specified program address. This might be called as the result of a write to program memory (flash
update) or insertion of a probe into the middle of a basic block.
- Parameters:
addr
- the byte address for which the enclosing block should be invalidated
getCompiledBlock
public DBBC.CompiledBlock getCompiledBlock(int addr)
throws java.lang.Exception
- The
getCompiledBlock()
method instructs the DBBC to compile the basic block that begins at
the specified byte address.
- Parameters:
addr
- the byte address of the beginning of the basic block to compile
- Returns:
- a reference to the compiled block of code when complete
- Throws:
java.lang.Exception
getCodeBlock
public DBBC.CodeBlock getCodeBlock(int addr)
generateClassForCode
protected java.io.File generateClassForCode(int addr,
java.util.List stmts,
int wcet)
throws java.lang.Exception
- Throws:
java.lang.Exception
getCompiledBlock
public DBBC.CompiledBlock getCompiledBlock(DBBC.CodeBlock b)
throws java.lang.Exception
- Throws:
java.lang.Exception
compileGeneratedCode
protected java.io.File compileGeneratedCode(java.io.File f)
throws java.lang.Exception
- Throws:
java.lang.Exception
add
protected static void add(java.lang.String s)
javaName
protected java.lang.String javaName(java.lang.String cname)
className
protected java.lang.String className(java.lang.String cname)