|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object | +--coins.driver.Driver
A driver implementation using the COINS Compiler Driver API. This driver is a working sample of the COINS Compiler Driver API, and can be a modifiction basis or an inheritance base class of your own compiler driver.
フィールドの概要 | |
protected static java.lang.String |
ASSEMBLER_NAME_OPTION
An option name to specify an assembler command name. |
protected static java.lang.String |
CG_PARALLEL
Abbreviated option name to invoke SMP parallelization. |
protected static java.lang.String |
CHECK_HIR_OPTION
An option name to specify whether HIR is checked before converting HIR to LIR. |
protected static java.lang.String |
CHECK_SYMBOL_TABLE_OPTION
An option name to specify whether a Symbol Table is checked before converting HIR to LIR. |
protected static java.lang.String |
COARSE_GRAIN_PARALLEL
An option name to invoke SMP coarse grain parallelization. |
protected static char |
COINS_OPTION_DELIMITER
A delimiter sign to delimit arguments of other COINS_OPTION. |
protected static java.lang.String |
DEBUG_OPTION
Option name to specify debuggin mode. |
protected static java.lang.String |
DEFAULT_ASSEMBLER_NAME
A default assembler command name, which is used to invoke a process if not specified by a corresponding compile option. |
protected static java.lang.String |
DEFAULT_LINKER_NAME
A default linker command name, which is used to invoke a process if not specified by a corresponding compile option. |
protected static java.lang.String |
DEFAULT_LINKER_OPTIONS_PROPERTY
A default setting property name of linker options. |
protected static java.lang.String |
DEFAULT_LIR_OPTION
A default option name to specify whether version of LIR shuould be used. |
protected static int |
DEFAULT_OPTIMIZATION_LEVEL
The implied optimization level when -O option is specified without a level. |
protected static java.lang.String |
DEFAULT_PREPROCESSOR_NAME
A default preprocessor command name, which is used to invoke a process if not specified by a corresponding compile option. |
protected static java.lang.String |
DEFAULT_SETTING
A default setting file name. |
protected java.util.Properties |
defaultSettings
Site-local default settings. |
protected static java.lang.String |
DUMP_HIR_OPTION
An option name to specify dump HIR-Base at specified timings. |
protected static char |
DUMP_HIR_OPTION_DELIMITER
A delimiter sign to delimit arguments of DUMP_HIR_OPTION. |
protected static char |
FLOW_ANAL_OPTION_DELIMITER
A delimiter sign to delimit arguments of HIR_FLOW_ANAL_OPTION. |
protected static java.lang.String |
HIR_FLOW_ANAL_OPTION
An option name to invoke HIR flow analysis. |
protected static java.lang.String |
HIR_OPT_ARG_FROMC
An option argument for HIR_OPT_OPTION |
protected static java.lang.String |
HIR_OPT_OPTION
An option name to invoke HIR optimization |
protected static java.lang.String[] |
HIR_OPTIMIZATION_ARGS
Optimization arguments specified to HIR_OPT_OPTION at variaous optimization levels. |
protected static java.lang.String |
HIR_TO_C_OPTION
An option name to specify when HIR-Base to C should be invoked. |
protected static char |
HIR_TO_C_OPTION_DELIMITER
A delimiter sign to delimit arguments of HIR_TO_C_OPTION. |
protected FlowRoot |
hirFlowRoot
|
protected static java.lang.String |
LINKER_NAME_OPTION
An option name to specify a linker command name. |
protected static java.lang.String[] |
LIR_OPTIMIZATION_ARGS
Optimization arguments specified to LIR optimization at variaous optimization levels. |
protected static java.lang.String |
LIR_TO_C_OPTION
An option name to specify when LIR to C should be invoked. |
protected static char |
LIR_TO_C_OPTION_DELIMITER
A delimiter sign to delimit arguments of LIR_TO_C_OPTION. |
protected static java.lang.String |
MACRO_DATA_FLOW_OPTION
An option name to invoke SMP parallelization. |
protected static int |
MAX_OPTIMIZATION_LEVEL
The maximum optimization level specified by -O option. |
protected java.lang.String |
myName
A name in trace messages. |
protected static java.lang.String |
NEW_LIR_OPTION
An option name to specify a new version of LIR shuould be used. |
protected static java.lang.String |
OLD_LIR_OPTION
An option name to specify an old version of LIR shuould be used. |
protected static java.lang.String |
OPENMP_OPTION
An option name to invoke do-all-loop parallelization to generate C+OpenMP program. |
protected static char |
OPT_OPTION_DELIMITER
A delimiter sign to delimit arguments of HIR_OPT_OPTION. |
protected static java.lang.String |
OUT_NEW_LIR_OPTION
A suffix option to write a new LIR source as compile output. |
protected static java.lang.String |
PARALLEL_DO_ALL
An option name to invoke do-all-loop parallelization. |
protected static java.lang.String |
PREPROCESSOR_NAME_OPTION
An option name to specify a preprocessor command name. |
protected static java.lang.String |
SIMULATE_OPTION
An option name to invoke profiling simulator. |
protected static java.lang.String[] |
SSA_OPTIMIZATION_ARGS
Optimization arguments specified to SSA_OPTION at variaous optimization levels. |
protected static java.lang.String |
SSA_OPTION
An option name to specify SSA options. |
protected static java.lang.String |
STOP_AFTER_HIR_TO_C_OPTION
An option name to terminate compilation of current file after HIR-Base to C is performed. |
protected static java.lang.String |
STOP_AFTER_LIR_TO_C_OPTION
An option name to terminate compilation of current file after LIR to C is performed. |
protected static java.lang.String |
SYSTEM_INCLUDE_PATH_PROPERTY
A default setting property name of system include path options. |
protected static java.lang.String |
TARGET_ARCH_OPTION
An option name to specify target architecture. |
protected static java.lang.String |
TARGET_CONVENTION_OPTION
An option name to specify target architecture convention. |
protected static java.lang.String |
VERBOSE_FLAG
Verbose flag. |
コンストラクタの概要 | |
Driver()
|
メソッドの概要 | |
void |
assemble(java.io.File sourceFile,
Suffix suffix,
java.io.InputStream in,
java.io.File out,
IoRoot io)
Assembler. |
protected void |
basicHIROptimizations(HirRoot hirRoot,
FlowRoot hirFlowRoot,
SymRoot symRoot,
IoRoot io)
Basic HIR-level optimizations. |
protected void |
callHirBaseToC(HirRoot hirRoot,
SymRoot symRoot,
IoRoot io,
java.io.OutputStream out)
Translates HIR-Base into a C source program and writes it to an OutputStream. |
protected void |
callLirToC(Module unit,
IoRoot io,
java.lang.String dest)
Translates LIR into a C source program and writes it to an OutputStream. |
protected void |
checkHirToCStopCondition(java.lang.String timing,
java.util.List hirToCTimings,
CoinsOptions coinsOptions,
java.io.File source)
Aborts the current compile unit if the stopafterhir2c option is set and all specified C source files are generated. |
protected void |
checkLIROptionsIntegrity(java.io.File sourceFile,
boolean useOldLir,
boolean useNewLir,
boolean isLirOutput,
boolean skipHIR,
IoRoot io)
Checks integrity of specified LIR related options: -coins:oldlir and -coins:newlir cannot be specified at same time. |
protected void |
checkLirToCStopCondition(java.lang.String timing,
java.util.List lirToCTimings,
CoinsOptions coinsOptions,
java.io.File source)
Aborts the current compile unit if the stopafterlir2c option is set and all specified C source files are generated. |
void |
compile(java.io.File sourceFile,
Suffix suffix,
java.io.InputStream in,
java.io.OutputStream out,
IoRoot io)
Compiler. |
protected void |
dumpHirBase(HirRoot hirRoot,
SymRoot symRoot,
IoRoot io,
java.io.ObjectOutputStream out)
Dump HIR-Base into an ObjectOutputStream. |
protected boolean |
dumpHirBase(java.lang.String timing,
java.util.List dumpHirTimings,
HirRoot hirRoot,
SymRoot symRoot,
IoRoot io)
Dumps HIR-Base into a file name as foo-t.hir. when -coins:dumphir=t is specified and the timing parameter equals to t. |
protected boolean |
dumpHirBase(java.lang.String timing,
java.util.List dumpHirTimings,
HirRoot hirRoot,
SymRoot symRoot,
IoRoot io,
java.io.ObjectOutputStream out)
Dumps HIR-Base into an ObjectOutputStream when -coins:dumphir=t is specified and the timing parameter equals to t. |
protected void |
go(java.lang.String[] args)
Makes a compile specification from a command line. |
protected boolean |
includedInDelimitedList(java.lang.String term,
char delimiter,
java.lang.String list)
Tests whether a string includes a term as itself or one of its elements delimited by a specified delimiter. |
void |
link(java.io.File out,
IoRoot io)
Linker. |
static void |
main(java.lang.String[] args)
A main function to invoke a driver instance. |
protected java.lang.String[] |
makeCommandLine(java.lang.String name,
java.util.List options)
Constructs a command line string specifying a command name and options for it. |
protected boolean |
makeCSourceFromHirBase(java.lang.String timing,
java.util.List hirToCTimings,
HirRoot hirRoot,
SymRoot symRoot,
IoRoot io)
Translates HIR-Base into a C source program and writes it to a file name as foo-hir-t.c. when -coins:hir2c=t is specified and the timing parameter equals to t. |
protected boolean |
makeCSourceFromHirBase(java.lang.String timing,
java.util.List hirToCTimings,
HirRoot hirRoot,
SymRoot symRoot,
IoRoot io,
java.io.OutputStream out)
Translates HIR-Base into a C source program and writes it to an OutputStream when -coins:hir2c=t is specified and the timing parameter equals to t. |
protected boolean |
makeCSourceFromLir(java.lang.String timing,
java.util.List lirToCTimings,
Module unit,
IoRoot io)
Translates LIR into a C source program and writes it to a file name as foo-lir-t.c. when -coins:lir2c=t is specified and the timing parameter equals to t. |
protected boolean |
makeCSourceFromLir(java.lang.String timing,
java.util.List lirToCTimings,
Module unit,
IoRoot io,
java.lang.String dest)
Translates LIR into a C source program and writes it to an OutputStream when -coins:lir2c=t is specified and the timing parameter equals to t. |
protected FlowRoot |
makeHIRFlowAnalysis(HirRoot hirRoot,
SymRoot symRoot,
IoRoot io)
Makes an HIR-based flow analysis. |
protected void |
makeHirFromSource(java.io.File sourceFile,
HirRoot hirRoot,
Suffix suffix,
java.io.InputStream in,
IoRoot io)
HIR tree creation from source code. |
protected ImList |
makeLIRFromLIRSource(java.io.InputStream in,
IoRoot io)
Makes an LIR structure from an LIR source. |
protected ImList |
makeNewLirFromHir(HirRoot hirRoot,
IoRoot io,
java.io.File sourceFile,
java.io.OutputStream out,
boolean isLirOutput)
Makes an LIR tree from an HIR tree. |
protected boolean |
matchDumpHirTiming(java.lang.String timing,
java.util.List dumpHirTimings,
CoinsOptions coinsOptions)
Tests whether the specified timing specifier is included in the specified -coins:dumphir option argument. |
protected boolean |
matchHirToCTiming(java.lang.String timing,
java.util.List hirToCTimings,
CoinsOptions coinsOptions)
Tests whether the specified timing specifier is included in the specified -coins:hir2c option argument. |
protected boolean |
matchLirToCTiming(java.lang.String timing,
java.util.List lirToCTimings,
CoinsOptions coinsOptions)
Tests whether the specified timing specifier is included in the specified -coins:lir2c option argument. |
protected void |
optimizeHirAfterFlowAnalysis(HirRoot hirRoot,
FlowRoot hirFlowRoot,
SymRoot symRoot,
IoRoot io)
HIR-level optimizations. |
protected void |
optimizeHirBeforeFlowAnalysis(HirRoot hirRoot,
SymRoot symRoot,
IoRoot io)
HIR-level optimizations. |
void |
preprocess(java.io.File sourceFile,
Suffix suffix,
java.io.OutputStream out,
IoRoot io)
Preprocessor. |
(パッケージプライベート) void |
processSimulate(IoRoot io,
CompileSpecification spec,
java.io.OutputStream out,
SnapShot snap,
ImList sexp,
java.util.List lirToCTimings)
|
protected int |
runProgram(java.util.List commandStrings,
java.io.InputStream in,
java.io.OutputStream out,
IoRoot io)
An external command runner. |
protected int |
runProgram(java.lang.String[] commandLine,
java.io.InputStream in,
java.io.OutputStream out,
IoRoot io)
An external command runner. |
protected int |
runProgram(java.lang.String command,
java.util.List arguments,
java.io.InputStream in,
java.io.OutputStream out,
IoRoot io)
An external command runner. |
protected java.util.List |
separateDelimitedList(java.lang.String s,
char delimiter)
Breaks a string into a list with a specified delimiter. |
protected void |
setDefaultLinkerOptions(CompileSpecification spec,
java.util.List options)
Sets default linker options specified in a library file to the end of a linker option string. |
protected void |
setOptimizationOptions(CompileSpecification spec,
CoinsOptions coinsOptions,
boolean useNewLir)
Interprets -On option into COINS options. |
protected void |
setSystemIncludePathOptions(CompileSpecification spec,
java.util.List options)
Sets default linker options specified in a library file to the end of a linker option string. |
protected void |
testHir(HirRoot hirRoot,
FlowRoot hirFlowRoot,
IoRoot io)
Tests HIR before converting it to LIR. |
protected void |
testSym(HirRoot pHirRoot,
IoRoot io)
Tests Symbol Table before converting HIR to LIR. |
クラス java.lang.Object から継承したメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
フィールドの詳細 |
protected static final java.lang.String VERBOSE_FLAG
protected static final java.lang.String DEFAULT_PREPROCESSOR_NAME
protected static final java.lang.String DEFAULT_ASSEMBLER_NAME
protected static final java.lang.String DEFAULT_LINKER_NAME
protected static final java.lang.String PREPROCESSOR_NAME_OPTION
protected static final java.lang.String ASSEMBLER_NAME_OPTION
protected static final java.lang.String LINKER_NAME_OPTION
protected static final java.lang.String HIR_TO_C_OPTION
protected static final java.lang.String DUMP_HIR_OPTION
protected static final java.lang.String LIR_TO_C_OPTION
protected static final char HIR_TO_C_OPTION_DELIMITER
protected static final char DUMP_HIR_OPTION_DELIMITER
protected static final char LIR_TO_C_OPTION_DELIMITER
protected static final char COINS_OPTION_DELIMITER
protected static final java.lang.String STOP_AFTER_HIR_TO_C_OPTION
protected static final java.lang.String STOP_AFTER_LIR_TO_C_OPTION
protected static final java.lang.String HIR_FLOW_ANAL_OPTION
protected static final char FLOW_ANAL_OPTION_DELIMITER
protected static final int MAX_OPTIMIZATION_LEVEL
protected static final int DEFAULT_OPTIMIZATION_LEVEL
protected static final java.lang.String[] HIR_OPTIMIZATION_ARGS
protected static final java.lang.String[] SSA_OPTIMIZATION_ARGS
protected static final java.lang.String[] LIR_OPTIMIZATION_ARGS
protected static final java.lang.String HIR_OPT_OPTION
protected static final java.lang.String HIR_OPT_ARG_FROMC
protected static final char OPT_OPTION_DELIMITER
protected static final java.lang.String TARGET_ARCH_OPTION
protected static final java.lang.String TARGET_CONVENTION_OPTION
protected static final java.lang.String CHECK_HIR_OPTION
protected static final java.lang.String CHECK_SYMBOL_TABLE_OPTION
protected static final java.lang.String OLD_LIR_OPTION
protected static final java.lang.String NEW_LIR_OPTION
protected static final java.lang.String DEFAULT_LIR_OPTION
protected static final java.lang.String OUT_NEW_LIR_OPTION
protected java.util.Properties defaultSettings
protected static final java.lang.String DEFAULT_SETTING
protected static final java.lang.String DEFAULT_LINKER_OPTIONS_PROPERTY
protected static final java.lang.String SYSTEM_INCLUDE_PATH_PROPERTY
protected static final java.lang.String SSA_OPTION
protected static final java.lang.String MACRO_DATA_FLOW_OPTION
protected static final java.lang.String PARALLEL_DO_ALL
protected static final java.lang.String OPENMP_OPTION
protected static final java.lang.String COARSE_GRAIN_PARALLEL
protected static final java.lang.String CG_PARALLEL
protected static final java.lang.String SIMULATE_OPTION
protected static final java.lang.String DEBUG_OPTION
protected FlowRoot hirFlowRoot
protected java.lang.String myName
コンストラクタの詳細 |
public Driver()
メソッドの詳細 |
protected java.lang.String[] makeCommandLine(java.lang.String name, java.util.List options)
options
- a list of String's, each of which is an option string.protected int runProgram(java.lang.String[] commandLine, java.io.InputStream in, java.io.OutputStream out, IoRoot io) throws java.io.IOException, PassException
commandLine
- the command line.in
- an InputStream from which the input data can be read.out
- an OutputStream to which the output data should be written.io
- the IoRoot.
java.io.IOException
- failed to execute/write to/read from the external
process.
PassException
protected int runProgram(java.lang.String command, java.util.List arguments, java.io.InputStream in, java.io.OutputStream out, IoRoot io) throws java.io.IOException, PassException
command
- an external command name.arguments
- arguments to be given to the external command.in
- an InputStream from which the input data can be read.out
- an OutputStream to which the output data should be written.io
- the IoRoot.
java.io.IOException
- failed to execute/write to/read from the external
process.
PassException
protected int runProgram(java.util.List commandStrings, java.io.InputStream in, java.io.OutputStream out, IoRoot io) throws java.io.IOException, PassException
commandStrings
- a command line to invoke the external command.in
- an InputStream from which the input data can be read.out
- an OutputStream to which the output data should be written.io
- the IoRoot.
java.io.IOException
- failed to execute/write to/read from the external
process.
PassException
- size of commandString is less than 1.protected void setSystemIncludePathOptions(CompileSpecification spec, java.util.List options)
spec
- a CompileSpecification object.options
- a list of linker options where the options to be set.public void preprocess(java.io.File sourceFile, Suffix suffix, java.io.OutputStream out, IoRoot io) throws java.io.IOException, PassException
CompilerImplementation
内の preprocess
sourceFile
- the source file name.suffix
- suffix rule of the source file.out
- output.io
- the IoRoot.
java.io.IOException
- any IO error.
PassException
- unrecoverable error(s) found in processing.protected void makeHirFromSource(java.io.File sourceFile, HirRoot hirRoot, Suffix suffix, java.io.InputStream in, IoRoot io) throws java.io.IOException, PassException
sourceFile
- the source file.hirRoot
- an HirRoot object.suffix
- suffix rule of the source file.in
- an input stream from which the C source program can be read.io
- an IoRoot object.
java.io.IOException
- any IO error.
PassException
- unrecoverable error(s) found in processing.protected FlowRoot makeHIRFlowAnalysis(HirRoot hirRoot, SymRoot symRoot, IoRoot io) throws java.io.IOException, PassException
hirRoot
- an HirRoot object.symRoot
- a SymRoot object.io
- an IoRoot object.
java.io.IOException
- any IO error.
PassException
- unrecoverable error(s) found in processing.protected void optimizeHirBeforeFlowAnalysis(HirRoot hirRoot, SymRoot symRoot, IoRoot io) throws java.io.IOException, PassException
hirRoot
- an HirRoot object.symRoot
- a SymRoot object.io
- an IoRoot object.
java.io.IOException
- any IO error.
PassException
- unrecoverable error(s) found in processing.protected void basicHIROptimizations(HirRoot hirRoot, FlowRoot hirFlowRoot, SymRoot symRoot, IoRoot io) throws java.io.IOException, PassException
hirRoot
- an HirRoot object.hirFlowRoot
- an HIR-based flow analysis result.symRoot
- a SymRoot object.io
- an IoRoot object.
java.io.IOException
- any IO error.
PassException
- unrecoverable error(s) found in processing.protected void optimizeHirAfterFlowAnalysis(HirRoot hirRoot, FlowRoot hirFlowRoot, SymRoot symRoot, IoRoot io) throws java.io.IOException, PassException
hirRoot
- an HirRoot object.hirFlowRoot
- an HIR-based flow analysis result.symRoot
- a SymRoot object.io
- an IoRoot object.
java.io.IOException
- any IO error.
PassException
- unrecoverable error(s) found in processing.protected ImList makeNewLirFromHir(HirRoot hirRoot, IoRoot io, java.io.File sourceFile, java.io.OutputStream out, boolean isLirOutput) throws PassException
hirRoot
- an HirRoot object.io
- an IoRootobject.sourceFile
- the source file name.out
- output.isLirOutput
- whether the out is for LIR or not.
java.io.IOException
- any IO error.
PassException
- unrecoverable error(s) found in processing.protected boolean includedInDelimitedList(java.lang.String term, char delimiter, java.lang.String list)
term
- the term to be searched for.delimiter
- the delimiter.list
- the string to be tested.
protected java.util.List separateDelimitedList(java.lang.String s, char delimiter)
s
- the string.delimiter
- the delimiter.
protected boolean matchHirToCTiming(java.lang.String timing, java.util.List hirToCTimings, CoinsOptions coinsOptions)
timing
- the timng specifier.hirToCTimings
- a List of String's.coinsOptions
- a CoinsOption object.
protected boolean matchDumpHirTiming(java.lang.String timing, java.util.List dumpHirTimings, CoinsOptions coinsOptions)
timing
- the timng specifier.dumpHirTimings
- a List of String's.coinsOptions
- a CoinsOption object.
protected void callHirBaseToC(HirRoot hirRoot, SymRoot symRoot, IoRoot io, java.io.OutputStream out) throws java.io.IOException, PassException
hirRoot
- an HirRoot object.symRoot
- a SymRoot object.io
- the IoRoot.out
- an OutputStream to which the C source program is written.
java.io.IOException
- any IO error.
PassException
- unrecoverable error(s) found in processing.protected void dumpHirBase(HirRoot hirRoot, SymRoot symRoot, IoRoot io, java.io.ObjectOutputStream out) throws java.io.IOException, PassException
hirRoot
- an HirRoot object.symRoot
- a SymRoot object.io
- the IoRoot.out
- an ObjectOutputStream to which the HIR is dumped.
java.io.IOException
- any IO error.
PassException
- unrecoverable error(s) found in processing.protected void checkHirToCStopCondition(java.lang.String timing, java.util.List hirToCTimings, CoinsOptions coinsOptions, java.io.File source) throws java.io.IOException, PassException
timing
- the timing specifier.hirToCTimings
- a List of String's.coinsOptions
- a CoinsOption object.source
- the source file name of the current compile unit.
java.io.IOException
- any IO error.
PassException
- unrecoverable error(s) found in processing.protected boolean makeCSourceFromHirBase(java.lang.String timing, java.util.List hirToCTimings, HirRoot hirRoot, SymRoot symRoot, IoRoot io, java.io.OutputStream out) throws java.io.IOException, PassException
timing
- the timing parameter.hirToCTimings
- a List of String's.hirRoot
- an HirRoot object.symRoot
- a SymRoot object.io
- an IoRoot object.out
- an OutputStream to which the C source program is written.
java.io.IOException
- any IO error.
PassException
- unrecoverable error(s) found in processing.protected boolean makeCSourceFromHirBase(java.lang.String timing, java.util.List hirToCTimings, HirRoot hirRoot, SymRoot symRoot, IoRoot io) throws java.io.IOException, PassException
timing
- the timing parameter.hirToCTimings
- a List of String's.hirRoot
- an HirRoot object.symRoot
- a SymRoot object.io
- an IoRoot object.
java.io.IOException
- any IO error.
PassException
- unrecoverable error(s) found in processing.protected boolean dumpHirBase(java.lang.String timing, java.util.List dumpHirTimings, HirRoot hirRoot, SymRoot symRoot, IoRoot io, java.io.ObjectOutputStream out) throws java.io.IOException, PassException
timing
- the timing parameter.dumpHirTimings
- a List of String's.hirRoot
- an HirRoot object.symRoot
- a SymRoot object.io
- an IoRoot object.out
- an ObjectOutputStream to which the C source program is written.
java.io.IOException
- any IO error.
PassException
- unrecoverable error(s) found in processing.protected boolean dumpHirBase(java.lang.String timing, java.util.List dumpHirTimings, HirRoot hirRoot, SymRoot symRoot, IoRoot io) throws java.io.IOException, PassException
timing
- the timing parameter.dumpHirTimings
- a List of String's.hirRoot
- an HirRoot object.symRoot
- a SymRoot object.io
- an IoRoot object.
java.io.IOException
- any IO error.
PassException
- unrecoverable error(s) found in processing.protected boolean matchLirToCTiming(java.lang.String timing, java.util.List lirToCTimings, CoinsOptions coinsOptions)
timing
- the timng specifier.lirToCTimings
- a List of String's.coinsOptions
- a CoinsOption object.
protected void callLirToC(Module unit, IoRoot io, java.lang.String dest) throws java.io.IOException, PassException
unit
- a Module object.io
- the IoRoot.dest
- a name of a file to which the C source program is written.
java.io.IOException
- any IO error.
PassException
- unrecoverable error(s) found in processing.protected void checkLirToCStopCondition(java.lang.String timing, java.util.List lirToCTimings, CoinsOptions coinsOptions, java.io.File source) throws java.io.IOException, PassException
timing
- the timing specifier.lirToCTimings
- a List of String's.coinsOptions
- a CoinsOption object.source
- the source file name of the current compile unit.
java.io.IOException
- any IO error.
PassException
- unrecoverable error(s) found in processing.protected boolean makeCSourceFromLir(java.lang.String timing, java.util.List lirToCTimings, Module unit, IoRoot io, java.lang.String dest) throws java.io.IOException, PassException
timing
- the timing parameter.lirToCTimings
- a List of String's.unit
- a Module object.io
- an IoRoot object.dest
- a name of a file to which the C source program is written.
java.io.IOException
- any IO error.
PassException
- unrecoverable error(s) found in processing.protected void testSym(HirRoot pHirRoot, IoRoot io) throws java.io.IOException, PassException
io
- an IoRoot object.
java.io.IOException
- any IO error.
PassException
- unrecoverable error(s) found in processing.protected void testHir(HirRoot hirRoot, FlowRoot hirFlowRoot, IoRoot io) throws java.io.IOException, PassException
hirRoot
- an HirRoot object.hirFlowRoot
- an HIR-based flow analysis result.io
- an IoRoot object.
java.io.IOException
- any IO error.
PassException
- unrecoverable error(s) found in processing.protected boolean makeCSourceFromLir(java.lang.String timing, java.util.List lirToCTimings, Module unit, IoRoot io) throws java.io.IOException, PassException
timing
- the timing parameter.lirToCTimings
- a List of String's.unit
- an LModule object.io
- an IoRoot object.
java.io.IOException
- any IO error.
PassException
- unrecoverable error(s) found in processing.void processSimulate(IoRoot io, CompileSpecification spec, java.io.OutputStream out, SnapShot snap, ImList sexp, java.util.List lirToCTimings) throws java.io.IOException, PassException
java.io.IOException
PassException
protected ImList makeLIRFromLIRSource(java.io.InputStream in, IoRoot io) throws java.io.IOException, PassException
in
- input.io
- the IoRoot.
java.io.IOException
- any IO error.
PassException
- unrecoverable error(s) found in processing.protected void checkLIROptionsIntegrity(java.io.File sourceFile, boolean useOldLir, boolean useNewLir, boolean isLirOutput, boolean skipHIR, IoRoot io) throws PassException
sourceFile
- the input file.useOldLir
- whether -coins:oldlir is specified or not.useNewLir
- whether -coins:newlir is specified or not.isLirOutput
- whether -coins:suffixoption=out-newlir is specified or
not.skipHIR
- whether the input file is an LIR source file or not.io
- the IoRoot.
PassException
- at least one integrity condition is not satisfied.protected void setOptimizationOptions(CompileSpecification spec, CoinsOptions coinsOptions, boolean useNewLir)
spec
- a CompileSpecification object.coinsOptions
- a CoinsOptions object.public void compile(java.io.File sourceFile, Suffix suffix, java.io.InputStream in, java.io.OutputStream out, IoRoot io) throws java.io.IOException, PassException
CompilerImplementation
内の compile
sourceFile
- the source file name.suffix
- suffix rule of the source file.in
- input.out
- output.io
- the IoRoot.
java.io.IOException
- any IO error.
PassException
- unrecoverable error(s) found in processing.public void assemble(java.io.File sourceFile, Suffix suffix, java.io.InputStream in, java.io.File out, IoRoot io) throws java.io.IOException, PassException
CompilerImplementation
内の assemble
sourceFile
- the source file name.suffix
- suffix rule of the source file.in
- the InputStream.out
- the output File.io
- the IoRoot.
java.io.IOException
- any IO error.
PassException
- unrecoverable error(s) found in processing.protected void setDefaultLinkerOptions(CompileSpecification spec, java.util.List options)
spec
- a CompileSpecification object.options
- a list of linker options where the options to be set.public void link(java.io.File out, IoRoot io) throws java.io.IOException, PassException
CompilerImplementation
内の link
out
- the output File.io
- the IoRoot.
java.io.IOException
- any IO error.
PassException
- unrecoverable error(s) found in processing.protected void go(java.lang.String[] args)
args
- a command line.public static void main(java.lang.String[] args)
args
- a command line.
|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |