|
||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
java.lang.Object
|
+--coins.backend.gen.CodeGenerator
|
+--coins.backend.gen.CodeGenerator_mb
| 入れ子クラスの概要 | |
(パッケージプライベート) class |
CodeGenerator_mb.CallContext
|
(パッケージプライベート) static class |
CodeGenerator_mb.MicroBlazeAttr
MicroBlaze's function attribute |
(パッケージプライベート) class |
CodeGenerator_mb.RewrState
State label for rewriting engine. |
(パッケージプライベート) class |
CodeGenerator_mb.State
State label for instruction selection engine. |
| クラス coins.backend.gen.CodeGenerator から継承した入れ子クラス |
CodeGenerator.LexpToString, CodeGenerator.Match |
| フィールドの概要 | |
(パッケージプライベート) boolean |
isSimulate
|
(パッケージプライベート) boolean |
noUseBs
|
(パッケージプライベート) boolean |
noUseDiv
|
(パッケージプライベート) boolean |
noUseGp
|
(パッケージプライベート) boolean |
noUseMul
|
(パッケージプライベート) ImList |
regCallClobbers
|
(パッケージプライベート) static int |
REGWIDTH
|
(パッケージプライベート) boolean |
softFloat
|
(パッケージプライベート) CodeGenerator_mb.State[] |
stateVec
State vector for labeling LIR nodes. |
| クラス coins.backend.gen.CodeGenerator から継承したフィールド |
addrType, asmWriter, convention, debOut, disableRewrite, F128, F32, F64, func, funcAttrTbl, I16, I32, I64, I8, INLINECOPYUNIT, lexpConv, lir, localEarlyRewritingTrig, localLateRewritingTrig, machineName, machineParams, module, optSpeed, ProcessFramesTrig, root, typeParamWord |
| コンストラクタの概要 | |
CodeGenerator_mb()
Create code generator engine. |
|
| メソッドの概要 | |
(パッケージプライベート) LirNode |
castToInt(LirNode src)
|
(パッケージプライベート) java.lang.String |
defaultRegsetForType(int type)
Return default register set for type. |
(パッケージプライベート) void |
emitCommon(java.io.PrintWriter out,
SymStatic symbol,
int bytes)
Emit data common |
(パッケージプライベート) java.lang.String |
emitLir(LirNode node)
Expand emit-macro for LirNode. |
(パッケージプライベート) java.lang.String |
emitList(ImList form,
boolean topLevel)
Expand emit-macro for list form. |
(パッケージプライベート) boolean |
eqReg(java.lang.String reg,
LirNode node)
|
(パッケージプライベート) java.lang.Object |
expandBuildMacro(ImList form)
Expand building-macro. |
(パッケージプライベート) int |
getCost1(LirNode t,
int goal)
Return the cost for LIR node t and goal nonterminal goal. |
(パッケージプライベート) int |
getCost2(LirNode t,
int goal)
|
(パッケージプライベート) Rule |
getRule(LirNode t,
int goal)
Return the chosen rule for LIR node t and goal nonterminal goal. |
(パッケージプライベート) void |
initializeMachineDep()
Do Machine-dependent initialization (subclass may override this). |
(パッケージプライベート) void |
initLabeling(LirFactory lir)
Initialize for labeling. |
(パッケージプライベート) void |
initRewriteLabeling()
Initialization for rewriting. |
(パッケージプライベート) boolean |
isMemNode(LirNode arg)
|
(パッケージプライベート) java.lang.Object |
jmac1(LirNode x)
|
(パッケージプライベート) java.lang.String |
jmac10(java.lang.String x)
|
(パッケージプライベート) java.lang.String |
jmac11(java.lang.Object f)
|
(パッケージプライベート) java.lang.String |
jmac12(java.lang.Object f,
java.lang.String rettype)
|
(パッケージプライベート) java.lang.Object |
jmac2(LirNode x)
|
(パッケージプライベート) java.lang.String |
jmac3(java.lang.String x)
|
(パッケージプライベート) java.lang.String |
jmac4(java.lang.String format,
java.lang.Object args)
|
(パッケージプライベート) java.lang.String |
jmac5()
|
(パッケージプライベート) java.lang.String |
jmac6(java.lang.String reg1,
java.lang.String reg2)
|
(パッケージプライベート) java.lang.String |
jmac7(java.lang.String c1,
java.lang.String c2)
|
(パッケージプライベート) java.lang.String |
jmac8(java.lang.String c1,
java.lang.String c2)
|
(パッケージプライベート) java.lang.String |
jmac9(java.lang.String x)
|
(パッケージプライベート) void |
labelTree(LirNode t)
Label LIR tree t. |
(パッケージプライベート) boolean |
needTempArea(LirNode src)
|
(パッケージプライベート) CodeGenerator.FunctionAttr |
newFunctionAttr(Function func)
Prepare new function attribute information. |
(パッケージプライベート) java.lang.Object |
quiltLir(LirNode node)
Expand building-macro, for LirNode |
(パッケージプライベート) LirNode |
rewriteCall(LirNode node,
BiList pre,
BiList post,
boolean dry)
|
(パッケージプライベート) LirNode |
rewriteEpilogue(LirNode node,
BiList pre)
Rewrite EPILOGUE |
(パッケージプライベート) LirNode |
rewriteFrame(LirNode node)
Rewrite FRAME node to target machine form. |
(パッケージプライベート) LirNode |
rewriteJumpc(LirNode node,
BiList pre,
java.lang.String rtl,
int n)
|
(パッケージプライベート) boolean |
rewriteMul(LirNode node)
|
(パッケージプライベート) LirNode |
rewritePrologue(LirNode node,
BiList post)
Rewrite PROLOGUE |
(パッケージプライベート) LirNode |
rewriteRtlCall(LirNode node,
BiList pre,
java.lang.String rtl,
int n)
|
(パッケージプライベート) LirNode |
rewriteTree(LirNode tree,
java.lang.String phase,
BiList pre,
BiList post)
Rewrite L-expression. |
(パッケージプライベート) java.lang.String |
showLabel(LirNode t)
Return label state |
(パッケージプライベート) int |
startNT()
Return start nonterminal symbol. |
| クラス java.lang.Object から継承したメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| フィールドの詳細 |
CodeGenerator_mb.State[] stateVec
boolean softFloat
boolean noUseGp
boolean noUseBs
boolean noUseMul
boolean noUseDiv
boolean isSimulate
ImList regCallClobbers
static final int REGWIDTH
| コンストラクタの詳細 |
public CodeGenerator_mb()
| メソッドの詳細 |
void initRewriteLabeling()
CodeGenerator の記述:
CodeGenerator 内の initRewriteLabeling
LirNode rewriteTree(LirNode tree,
java.lang.String phase,
BiList pre,
BiList post)
CodeGenerator 内の rewriteTreejava.lang.String defaultRegsetForType(int type)
CodeGenerator 内の defaultRegsetForTypevoid initLabeling(LirFactory lir)
CodeGenerator の記述:
CodeGenerator 内の initLabelingjava.lang.String showLabel(LirNode t)
CodeGenerator の記述:
CodeGenerator 内の showLabelvoid labelTree(LirNode t)
CodeGenerator の記述:
CodeGenerator 内の labelTree
Rule getRule(LirNode t,
int goal)
CodeGenerator の記述:
CodeGenerator 内の getRule
int getCost1(LirNode t,
int goal)
CodeGenerator の記述:
CodeGenerator 内の getCost1
int getCost2(LirNode t,
int goal)
CodeGenerator 内の getCost2int startNT()
CodeGenerator の記述:
CodeGenerator 内の startNTjava.lang.Object expandBuildMacro(ImList form)
CodeGenerator 内の expandBuildMacrojava.lang.Object quiltLir(LirNode node)
CodeGenerator 内の quiltLir
java.lang.String emitList(ImList form,
boolean topLevel)
CodeGenerator 内の emitListjava.lang.String emitLir(LirNode node)
CodeGenerator 内の emitLirCodeGenerator.FunctionAttr newFunctionAttr(Function func)
CodeGenerator の記述:
CodeGenerator 内の newFunctionAttrvoid initializeMachineDep()
CodeGenerator の記述:
CodeGenerator 内の initializeMachineDepjava.lang.Object jmac1(LirNode x)
java.lang.Object jmac2(LirNode x)
java.lang.String jmac3(java.lang.String x)
java.lang.String jmac4(java.lang.String format,
java.lang.Object args)
java.lang.String jmac5()
java.lang.String jmac6(java.lang.String reg1,
java.lang.String reg2)
java.lang.String jmac7(java.lang.String c1,
java.lang.String c2)
java.lang.String jmac8(java.lang.String c1,
java.lang.String c2)
java.lang.String jmac9(java.lang.String x)
java.lang.String jmac10(java.lang.String x)
java.lang.String jmac11(java.lang.Object f)
java.lang.String jmac12(java.lang.Object f,
java.lang.String rettype)
void emitCommon(java.io.PrintWriter out,
SymStatic symbol,
int bytes)
CodeGenerator の記述:
CodeGenerator 内の emitCommon
boolean eqReg(java.lang.String reg,
LirNode node)
boolean rewriteMul(LirNode node)
LirNode castToInt(LirNode src)
boolean needTempArea(LirNode src)
boolean isMemNode(LirNode arg)
LirNode rewriteCall(LirNode node,
BiList pre,
BiList post,
boolean dry)
LirNode rewritePrologue(LirNode node,
BiList post)
CodeGenerator の記述:
CodeGenerator 内の rewritePrologue
LirNode rewriteEpilogue(LirNode node,
BiList pre)
CodeGenerator の記述:
CodeGenerator 内の rewriteEpilogueLirNode rewriteFrame(LirNode node)
CodeGenerator の記述:
CodeGenerator 内の rewriteFrame
LirNode rewriteRtlCall(LirNode node,
BiList pre,
java.lang.String rtl,
int n)
LirNode rewriteJumpc(LirNode node,
BiList pre,
java.lang.String rtl,
int n)
|
||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||